Rendering ProfilerJendela yang membantu Anda untuk mengoptimalkan permainan Anda. Ini menunjukkan berapa banyak waktu yang dihabiskan di berbagai bidang permainan Anda. Sebagai contoh, dapat melaporkan persentase waktu yang dihabiskan rendering, aimating, atau dalam logika permainan Anda. More info
Lihat di Glossary menampilkan statistik rendering dan informasi tentang apa CPU dan GPU lakukan untuk membuat SceneAdegan berisi lingkungan dan menu permainan Anda. Pikirkan setiap file Adegan unik sebagai tingkat yang unik. Di setiap Adegan, Anda menempatkan lingkungan, hambatan, dan dekorasi, pada dasarnya merancang dan membangun permainan Anda dalam potongan-potongan. More info
Lihat di Glossary. Anda dapat menggunakan statistik ini untuk mengukur intensitas sumber daya dari berbagai bidang Adegan, yang berguna untuk optimasi.
Grafik menampilkan jumlah Batch, SetPass Panggilan, Segitiga dan Vertices aplikasi Anda diberikan. Pane bawah menampilkan statistik rendering lebih, yang cocok dengan yang ditunjukkan di jendela GameView Rendering Statistics.
Grafik modul Rendering Profileer dibagi menjadi empat kategori sebagai berikut:
Chart | Description |
---|---|
Batches Count | Jumlah batches Unity diproses selama bingkai. |
SetPass Calls Count | Jumlah persatuan beralih yang shaderProgram yang berjalan di GPU. More info Lihat di Glossary melewatinya digunakan untuk membuat GameObjectsObjek mendasar dalam adegan Unity, yang dapat mewakili karakter, props, pemandangan, kamera, waypoints, dan banyak lagi. Fungsi GameObject didefinisikan oleh Komponen yang melekat padanya. More info Lihat di Glossary selama bingkai. Sebuah naungan mungkin mengandung beberapa pelampung dan masing-masing lulus render GameObjects di tempat kejadian berbeda. |
Triangles Count | Jumlah triangles Unity diproses selama bingkai. |
Vertices Count | Jumlah vertices Unity diproses selama bingkai. |
Ketika Anda mengklik modul Rendering Profiler, pane rincian di bagian bawah jendela menampilkan statistik rendering rinci. Statistik ini mirip dengan statistik yang ditampilkan di jendela Rendering Statistics.
Di sebelah kiri atas pane rincian, pilih Open Frame Dustgger untuk membuka Bingkai Debugger, yang memberi Anda informasi pada penarikan individu yang membuat bingkai.
Statistik ini juga tersedia melalui ProfilerRecorder API dan pada Profiler Modul Editor sehingga Anda dapat menambahkannya ke modul Profiler kustom.
Statistic | Description | Accessible in Release Players |
---|---|---|
SetPass Calls Count | Jumlah persatuan beralih yang naungan melewatinya digunakan untuk membuat GameObjects selama bingkai. Sebuah naungan mungkin mengandung beberapa pelampung dan masing-masing lulus render GameObjects di tempat kejadian berbeda. | Yes |
Draw Calls Count | Jumlah total panggilan Unity yang dikeluarkan selama bingkai. Masalah unity menarik panggilan ketika render GameObjects ke layar. Nomor ini termasuk panggilan menggambar non batched serta panggilan menggambar ber batch dinamis dan statis. | Yes |
Total Batches Count | Total jumlah batches Unity diproses selama bingkai. Nomor ini termasuk batch statis dan dinamis. | Yes |
Triangles Count | Jumlah triangles Unity diproses selama bingkai. | Yes |
Vertices Count | Jumlah vertices Unity diproses selama bingkai. | Yes |
(Dynamic Batching) | Bagian ini mengandung statistik pada batching dinamisProses Unity otomatis yang mencoba untuk membuat beberapa jala seolah-olah mereka adalah satu mesh untuk kinerja grafis yang dioptimalkan. Teknik mengubah semua simpul GameObject pada CPU dan kelompok banyak simpul serupa bersama. More info Lihat di Glossary. |
No |
Dynamic Batched Draw Panggilan Count | Jumlah penarikan Unity dikombinasikan menjadi batch dinamis. | No |
Menghitung Batch Dinamis | Jumlah batch dinamis Unity diproses selama bingkai. | No |
Hitungan Segitiga Ber Batched dinamis | Jumlah segitiga di GameObjects termasuk dalam batch dinamis. | No |
Menghitung Vertices Batched Dinamis | Jumlah simpul di GameObjects termasuk dalam batch dinamis. | No |
Waktu Batching Dinamis | Waktu Unity menghabiskan menciptakan struktur batching dinamis. | No |
(Static Batching) | Bagian ini mengandung statistik pada batching statisTeknik Unity menggunakan untuk menggambar GameObjects di layar yang menggabungkan static (non-moving) GameObjects ke Big Meshes, dan render mereka dengan cara yang lebih cepat. More info Lihat di Glossary. |
No |
Statis Batched Draw Panggilan Count | Jumlah panggilan menarik Unity dikombinasikan menjadi batch statis. | No |
Menghitung Batch Statis | Jumlah batch statis Unity diproses selama bingkai. | No |
Segitiga batching statis | Jumlah segitiga di GameObjects termasuk dalam batch statis. | No |
Statis Batched Vertices Count | Jumlah vertik di GameObjects termasuk dalam batch statis. | No |
(Instancing) | Bagian ini mengandung statistik pada GPU instancing. | No |
Instanced Batched Draw Panggilan Count | Jumlah penarikan Unity dikombinasikan menjadi batch instance. | No |
Jumlah Batch Instanced | Jumlah batch Unity diproses untuk membuat instanced GameObjects selama bingkai. | No |
Segitiga Distansi Di Batched Count | Jumlah segitiga dalam GameObjects. | No |
Instanced Batched Vertices Count | Jumlah vertik dalam GameObjects yang dicontoh. | No |
Used Textures Count Used Textures Bytes |
Jumlah Unity texturesGambar yang digunakan ketika membuat elemen GameObject, Sprite, atau UI. Tekstur sering diterapkan pada permukaan mesh untuk memberikan detail visual. More info Lihat di Glossary digunakan selama bingkai dan jumlah memori tekstur yang digunakan. |
No |
Render Textures Count Render Textures Bytes |
Jumlah RenderTextures Unity digunakan selama bingkai dan jumlah memori RenderTextures digunakan. | Yes |
Render TexturesA special type of Texture that is created and updated at runtime. To use them, first create a new Render Texture and designate one of your Cameras to render into it. Then you can use the Render Texture in a Material just like a regular Texture. More info See in Glossary Changes Count |
Jumlah Unity menetapkan satu atau beberapa RenderTextures sebagai target render selama bingkai. | Yes |
Used Buffers Count Used Buffers Bytes |
Jumlah total penyangga GPU dan memori yang digunakan. Ini termasuk buffer vertex, indeks dan compute dan semua buffer internal yang diperlukan untuk rendering. | Yes |
Vertex Buffer Upload In Frame Count Vertex Buffer Upload In Frame Bytes |
Jumlah geometri yang di-upload CPU ke GPU dalam bingkai. Ini mewakili data simpul/normal/texcoord. Mungkin ada beberapa geometri di GPU. Statistik ini hanya mencakup geometri bahwa transfer Unity dalam bingkai. | Yes |
Index Buffer Upload In Frame Count Index Buffer Upload In Frame Bytes |
Jumlah geometri yang di-upload CPU ke GPU dalam bingkai. Ini mewakili data indeks segitiga. Mungkin ada beberapa geometri di GPU. Statistik ini hanya mencakup geometri bahwa transfer Unity dalam bingkai. | Yes |
Shadow Casters Count | Jumlah GameObjects yang melemparkan bayangan dalam bingkai. Jika GameObject melemparkan beberapa bayangan (karenakan beberapa lampu terang itu), ia memiliki satu entri per bayangan itu melemparkan. | Yes |
Modul rendering Profiler countersDitempatkan dalam kode dengan ProfilerCounter API untuk melacak metrik, seperti jumlah musuh yang ditidur dalam permainan Anda.
Lihat di Glossary juga tersedia di Pemain. Gunakan ProfilerRecorder API untuk mengakses informasi modul Render Profileer di Pemain. Counter tingkat tinggi juga tersedia di Release Player.
Contoh berikut mengandung skrip sederhana yang mengumpulkan “SetPass Calls Count”, “Draw Calls Count” dan “Vertices Count” metrik dan menampilkan mereka sebagai TextArea.
using System.Text;
using Unity.Profiling;
using UnityEngine;
public class RenderStatsScript : MonoBehaviour
{
string statsText;
ProfilerRecorder setPassCallsRecorder;
ProfilerRecorder drawCallsRecorder;
ProfilerRecorder verticesRecorder;
void OnEnable()
{
setPassCallsRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, "SetPass Calls Count");
drawCallsRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, "Draw Calls Count");
verticesRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, "Vertices Count");
}
void OnDisable()
{
setPassCallsRecorder.Dispose();
drawCallsRecorder.Dispose();
verticesRecorder.Dispose();
}
void Update()
{
var sb = new StringBuilder(500);
if (setPassCallsRecorder.Valid)
sb.AppendLine($"SetPass Calls: {setPassCallsRecorder.LastValue}");
if (drawCallsRecorder.Valid)
sb.AppendLine($"Draw Calls: {drawCallsRecorder.LastValue}");
if (verticesRecorder.Valid)
sb.AppendLine($"Vertices: {verticesRecorder.LastValue}");
statsText = sb.ToString();
}
void OnGUI()
{
GUI.TextArea(new Rect(10, 30, 250, 50), statsText);
}
}
Informasi modul Rendering Profileer milik ProfilerCategory.Render Profiler categoryMengidentifikasi data beban kerja untuk subsistem Unity (misalnya, rendering, Scripting dan kategori Animasi). Unity menerapkan pengkodean warna untuk kategori untuk secara visual membedakan antara jenis data di jendela Profiler.
Lihat di Glossary.
Jika Anda ingin menyoroti penghitung rendering yang dipilih dalam modul kustom, gunakan Modul Editor untuk mengkonfigurasi grafik dan tampilan rinci.