Modul Profiler Memori
2D Modul Profiler Fisika

Modul Profiler Fisika

Fisika modul 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 informasi tentang fisika bahwa sistem fisika telah diproses dalam proyek Anda 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
. Informasi ini dapat membantu Anda mendiagnosis dan menyelesaikan masalah kinerja atau perbedaan yang tak terduga terkait dengan fisika di adegan proyek Anda. Anda juga dapat menggunakan Fisika Debug Visualisasi untuk debug lebih lanjut dan memahami masalah dengan fisika dalam aplikasi Anda.

Physics Profiler module
Modul Profiler Fisika

Kategori grafik

Grafik Profiler modul melacak waktu aplikasi Anda menghabiskan fisika. Waktu dibagi menjadi kategori grafik yang berbeda. Untuk mengubah urutan kategori di grafik, Anda dapat menyeretnya di legenda grafik. Anda juga dapat mengklik legenda berwarna kategori untuk memotong tampilannya. Ketika Anda mengklik grafik, Anda dapat melihat nilai numerik yang tepat dari setiap kategori grafik dalam pane detail modul di bawah grafik.

Chart Function
Physics Used Memory Jumlah total memori yang modul fisika telah digunakan
Active Dynamic Bodies Jumlah komponen RigidbodyKomponen yang memungkinkan GameObject untuk dipengaruhi oleh gravitasi simulasi dan kekuatan lainnya. More info
Lihat di Glossary
dan komponen Login Login yang tidak dalam keadaan sleep.
Active Kinematic Bodies Jumlah komponen Kinematik kaku aktif. kaku Kinematik aktif ketika MovePosition atau MoveRotation disebut dalam bingkai, dan tetap aktif dalam bingkai berikutnya.

Note: Unity might process Kinematic Rigidbody components that have joints attached multiple times per frame, and this contributes to the value displayed.
Dynamic Bodies Jumlah komponen kaku dan komponen ArticulationBody.
Overlaps Jumlah acara tumpang tindih. Acara tumpang tindih adalah ketika tumpang tindih collidersBentuk tak terlihat yang digunakan untuk menangani tabrakan fisik untuk objek. Seorang sari tidak perlu menjadi bentuk yang sama dengan jala objek - perkiraan kasar sering lebih efisien dan tidak dapat dibedakan dalam gameplay. More info
Lihat di Glossary
satu sama lain.
Trigger Overlaps Jumlah acara tumpang tindih dengan tabrakan pemicu (dihitungkan).
Discreet Overlaps Jumlah peristiwa tumpang tindih yang digunakan Unity diskrit deteksi collisiontabrakan terjadi ketika mesin fisika mendeteksi bahwa tabrakan dari dua GameObjects membuat kontak atau tumpang tindih, ketika setidaknya satu memiliki komponen kaku dan bergerak. More info
Lihat di Glossary
untuk memecahkan.
Continuous Overlaps Jumlah acara tumpang tindih yang digunakan Unity collision detectionProses otomatis yang dilakukan oleh Unity yang menentukan apakah yang bergerak GameObject dengan komponen kaku dan collider telah masuk ke kontak dengan sari lainnya. More info
Lihat di Glossary
terus menerus untuk memecahkan.
Physics Queries Jumlah total pertanyaan fisika, seperti Raycasts dan bentuk.

Detail modul pane

Ketika Anda mengklik modul Profiler Fisika, detail modul pane menampilkan informasi lebih lanjut tentang fisika di adegan proyek Anda.

Statistic Description
Physics Used Memory Jumlah total memori yang modul fisika digunakan.
Dynamic Bodies Jumlah komponen Rigidbody dan komponen Login Login.
Articulation Bodies Jumlah komponen ArticulationBody di tempat kejadian
Active Dynamic Bodies Jumlah komponen kaku dan komponen ArticulationBody yang tidak dalam keadaan sleep..
Active Kinematic Bodies Jumlah komponen Kinematik kaku aktif. kaku Kinematik aktif ketika MovePosition atau MoveRotation disebut dalam bingkai, dan tetap aktif dalam bingkai berikutnya.

Note: Unity might process Kinematic Rigidbody components that have joints attached multiple times per frame, and this contributes to the value displayed.
Static Colliders Jumlah colliders yang tidak memiliki komponen kaku atau ArticulationBody
Colliders Synced Jumlah sari yang disinkronkan dengan Transforms.
Rigidbodies Synced Jumlah komponen kaku yang disinkronkan dengan Transforms.
Physics Queries Jumlah total pertanyaan fisika, seperti Raycasts dan bentuk.
Total Overlaps Jumlah acara tumpang tindih. Acara yang tumpang tindih adalah ketika sari tumpang tindih satu sama lain.
Discreet Jumlah acara tumpang tindih yang digunakan Unity discrete collision detectionMetode deteksi tabrakan yang menghitung dan menyelesaikan tabrakan berdasarkan pose objek pada akhir setiap langkah simulasi fisika. More info
Lihat di Glossary
untuk memecahkan.
Continuous Jumlah acara tumpang tindih yang digunakan Unity continuous collision detectionMetode deteksi tabrakan yang menghitung dan menyelesaikan tabrakan di seluruh langkah simulasi fisika. Ini dapat mencegah benda-benda yang bergerak cepat dari terowongan melalui dinding selama langkah simulasi. More info
Lihat di Glossary
untuk memecahkan.
Trigger Jumlah acara tumpang tindih dengan tabrakan pemicu (dihitungkan).
Modified Jumlah acara tumpang tindih yang Unity menggunakan API Contact Modification untuk memodifikasi.
Broadphase Adds/Removes Jumlah total tabrakan yang ditambahkan atau dihapus.algoritma fase yang luas either added or removed.
Narrowphase Touches Jumlah total peristiwa tabrakan yang hilang atau muncul seperti baru karena bingkai sebelumnya.

Jumlah yang ditampilkan dalam Profiler mungkin tidak sesuai dengan jumlah yang tepat dari 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
dengan komponen fisika di Adegan Anda. Ini karena proses Unity beberapa komponen fisika pada tingkat yang berbeda tergantung pada komponen lain mempengaruhinya (misalnya, komponen Joint yang terpasang). Untuk menghitung jumlah yang tepat dari GameObjects dengan komponen fisika tertentu yang melekat, Anda harus menulis skrip kustom dengan fungsi FindObjectsOfType.

Modul Profiler Fisika tidak menampilkan jumlah komponen kaku tidur. Ini adalah komponen yang tidak terlibat dengan sistem fisika, sehingga Profiler tidak memprosesnya. Untuk informasi lebih lanjut tentang komponen kaku tidur, lihat dokumentasi di Rigidbody.

Memahami masalah kinerja fisika

Simulasi fisika berjalan pada siklus pembaruan frekuensi tetap terpisah dari loop pembaruan logika utama, dan hanya dapat maju waktu melalui panggilan Time.fixedDeltaTime per. Ini mirip dengan perbedaan antara Update dan FixedUpdate. Untuk informasi lebih lanjut tentang ini, lihat dokumentasi pada Time window.

Ketika logika berat atau bingkai grafis membutuhkan waktu yang lama, Profiler harus memanggil simulasi fisika beberapa kali per bingkai. Ini berarti bahwa bingkai yang sudah intensif mengambil lebih banyak waktu dan sumber daya. Ini mungkin menyebabkan simulasi fisika untuk berhenti sementara sesuai dengan nilai Maximum Allowed Timestep, yang dapat Anda set di jendela Pengaturan Proyek (menu: Edit > Project Settings > Time)

Untuk mendeteksi ini di Proyek Anda, pilih Login Database dan periksa jumlah panggilan untuk Physics.Processing atau Physics.Simulate di bagian Ikhtisar dalam tampilan Hierarchy.

CPU Usage Profiler with the value of 2 in the Calls column
Login Pemakaian Profiler dengan nilai 2 di kolom Calls column

Dalam contoh ini gambar, nilai 2 di kolom Panggilan menunjukkan bahwa simulasi fisika disebut dua kali selama bingkai logis terakhir.

Jumlah panggilan dekat 10 mungkin menunjukkan masalah. Sebagai solusi pertama, mengurangi frekuensi simulasi fisika, dan jika masalah berlanjut, periksa apa yang mungkin telah menyebabkan bingkai berat sebelum sistem fisika harus menggunakan banyak panggilan simulasi untuk menangkap waktu pertandingan. Kadang-kadang, bingkai grafis berat mungkin menyebabkan lebih banyak panggilan simulasi fisika kemudian di Adegan.

Untuk informasi lebih rinci tentang simulasi fisika di Adegan Anda, pilih kotak pencarian di bagian atas pane detail modul, mencari Physics.Processing, dan kemudian pilih Calls dari dropdown di kanan atas pane. Ini menampilkan nama-nama tugas sistem fisika yang berjalan untuk memperbarui Adegan Anda. Dua nama yang paling umum yang Anda lihat adalah:

  • Pxs: pendek untuk 'PhysX pemecahan', yang merupakan tugas sistem fisika yang jointsKomponen fisika yang memungkinkan koneksi dinamis antara komponen Rigidbody, biasanya memungkinkan beberapa tingkat pergerakan seperti engsel. More info
    Lihat di Glossary
    memerlukan serta menyelesaikan kontak untuk komponen Overlapping Rigidbody.
  • ScScene: digunakan untuk tugas-tugas yang memperbarui Adegan, menjalankan fase yang luas dan fase sempit, dan mengintegrasikan komponen-komponen kaku (memindahkan mereka di ruang karena kekuatan dan impuls). Untuk informasi lebih lanjut, lihat Steven M. LaValle bekerja pada Perencanaan Algorithms untuk definisi pada fase deteksi tabrakan dua fase.

Fisika Legacy Catalog

Anda dapat beralih ke mode Legacy untuk melihat versi yang lebih tua dari modul Profiler Fisika, yang merupakan modul default dalam versi Unity yang lebih tua. Untuk melakukan ini, pilih Legacy dari menu dropdown di sebelah kanan atas pane rincian modul Profiler.

Dalam mode ini, Anda dapat memuat dan memeriksa data Profiler yang disimpan dalam versi Unity yang lebih tua. Jika Anda beralih ke mode ini untuk memeriksa data yang ditangkap dalam versi Unity yang lebih baru, maka data yang ditampilkan tidak dapat diandalkan dan tidak akurat. Anda harus selalu menggunakan mode Current untuk memeriksa data Profiler Fisika baru.

CPU Usage Profiler in Legacy mode
Login Pemakaian Profiler dalam mode Legacy
Statistic Description
Active Dynamic Jumlah komponen kaku non-Kinematik aktif. kaku aktif adalah salah satu yang tidak sleeping.
Active Kinematic Jumlah komponen Kinematik kaku aktif. Kinematic Rigidbody aktif ketika MovePosition atau MoveRotation disebut dalam bingkai, dan tetap aktif dalam bingkai berikutnya.

Note: Unity mungkin memproses komponen Kinematic Rigidbody yang memiliki sendi terpasang beberapa kali per bingkai, dan ini berkontribusi pada nilai yang ditampilkan.
Static Colliders Jumlah komponen Collider pada GameObjects yang tidak memiliki komponen kaku yang melekat pada GameObjects atau GameObjects induk mereka.

Collider komponen pada GameObjects atau parent GameObjects yang memiliki komponen kaku tidak dihitung sebagai Collider Statis. Ini disebut Senyawa Colliders. Senyawa Colliders mengatur beberapa Colliders dari tubuh dengan cara yang mudah, daripada memiliki semua Collider pada GameObject yang sama sebagai komponen Rigidbody.
Rigidbody Jumlah komponen kaku yang diproses oleh sistem fisika, terlepas dari keadaan tidur komponen.
Trigger Overlaps Jumlah pemicu tumpang tindih (dihitungkan).
Active Constraints Jumlah kendala primitif sistem fisika telah diproses. Kontras digunakan sebagai blok bangunan Sendi serta respon tabrakan. Sebagai contoh, membatasi tingkat kebebasan linier atau rotasi sebesar ConfigurableJoint melibatkan batasan primitif per setiap pembatasan.
Contacts Jumlah total pasangan kontak antara semua Colliders di Adegan, termasuk jumlah memicu pasangan tumpang tindih. Kontak adalah sepasang Collider yang baik menyentuh atau tumpang tindih. Catatan: Unity menciptakan pasangan kontak per pasangan Collider setelah jarak antara mereka berada di bawah batas yang dapat dikonfigurasi pengguna tertentu. Seperti itu, Anda mungkin melihat kontak yang dihasilkan untuk komponen kaku yang belum menyentuh atau tumpang tindih. Lihat dokumentasi tentang WordPress.org dan ContactPoint.separation untuk rincian lebih lanjut.
Modul Profiler Memori
2D Modul Profiler Fisika