Kelas Penting - Debug
Arsitektur persatuan

Kelas Penting - Gizmos & Pegangan

Kelas Gizmos dan Menangani memungkinkan Anda untuk menggambar garis dan bentuk dalam tampilan 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
dan tampilan Game, serta pegangan interaktif dan kontrol. Dua kelas ini bersama-sama memberikan cara untuk memperluas apa yang ditunjukkan dalam pandangan ini dan membangun alat interaktif untuk mengedit proyek Anda dengan cara apa pun yang Anda sukai. Misalnya, daripada memasukkan angka di inspectorJendela Unity yang menampilkan informasi tentang Pengaturan GameObject yang dipilih saat ini, aset atau proyek, memungkinkan Anda untuk memeriksa dan mengedit nilai. More info
Lihat di Glossary
, Anda dapat membuat radius lingkaran seret gizmo sekitar karakter non-pemain dalam permainan, yang mewakili daerah di mana mereka dapat mendengar atau melihat pemain.

Halaman ini memberikan gambaran sederhana dari kelas Gizmos dan Menangani. Untuk dokumentasi lengkap dan referensi knalpot dari setiap anggota Gizmos dan Menangani kelas, lihat halaman referensi skrip untuk GizmosOverlay grafis yang terkait dengan GameObject di Adegani, dan ditampilkan di Tampilan Adegan. Alat adegan internal seperti alat bergerak adalah Gizmos, dan Anda dapat membuat Gizmos kustom menggunakan tekstur atau scripting. Beberapa Gizmos hanya ditarik ketika GameObject dipilih, sementara Gizmos lainnya ditarik oleh Editor terlepas dari GameObjects mana yang dipilih. More info
Lihat di Glossary
dan Handles.

Gizmos

Kelas Gizmos memungkinkan Anda untuk menggambar garis, bidang, kubus, ikon, tekstur dan jala ke dalam Scene viewTampilan interaktif ke dunia yang Anda buat. Anda menggunakan Adegan Lihat untuk memilih dan posisi pemandangan, karakter, kamera, lampu, dan semua jenis lain dari Game Object. More info
Lihat di Glossary
untuk digunakan sebagai debugging, bantuan set-up, atau alat sambil mengembangkan proyek Anda.

Misalnya, untuk menggambar 10 unit kawat kuning kubus di sekitar GameObjectObjek 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
, Anda akan menggunakan kode ini:

using UnityEngine;
public class GizmosExample : MonoBehaviour
{
    void OnDrawGizmosSelected()
    {
        // Draw a yellow cube at the transform position
        Gizmos.color = Color.yellow;
        Gizmos.DrawWireCube(transform.position, new Vector3(10, 10, 10));
    }
}

Dan di sini adalah bagaimana kubus terlihat ketika ditempatkan di Light GameObject Directional.

A light GameObject with an extra script applied which draws a cube gizmo around its position
Sebuah GameObject cahaya dengan skrip tambahan yang diterapkan yang menarik gizmo kubus di sekitar posisinya

Lihat Halaman referensi skrip Gizmos untuk dokumentasi lengkap tentang cara menggunakan Gizmos.

Handles

Menangani mirip dengan Gizmos, tetapi memberikan lebih banyak fungsi dalam hal berinteraksiivitas dan manipulasi. Kontrol 3D yang Unity sendiri menyediakan untuk memanipulasi item dalam pandangan Adegan adalah kombinasi dari Gizmos dan Menangani. Ada sejumlah built-in Menangani GUIs, seperti alat yang akrab untuk posisi, skala dan memutar objek melalui Transform componentKomponen Transform menentukan Posisi, Rotasi, dan Skala setiap objek di tempat kejadian. Setiap GameObject memiliki Transform. More info
Lihat di Glossary
. Namun, Anda dapat menentukan Handle GUIs sendiri untuk digunakan dengan editor komponen kustom. GUI seperti itu bisa menjadi cara yang sangat berguna untuk mengedit konten Adegan yang dihasilkan secara procedurally, item dan kelompok benda terkait, seperti waypoints dan penanda lokasi.

Sebagai contoh, di sini adalah bagaimana Anda bisa menciptakan area busur dengan pegangan panah, memungkinkan Anda untuk memodifikasi "area berlapis" di pemandangan:

using UnityEditor;
using UnityEngine;
using System.Collections;

//this class should exist somewhere in your project
public class WireArcExample : MonoBehaviour
{
    public float shieldArea;
}

// Create a 180 degrees wire arc with a ScaleValueHandle attached to the disc
// that lets you modify the "shieldArea" value in the WireArcExample
[CustomEditor(typeof(WireArcExample))]
public class DrawWireArc : Editor
{
    void OnSceneGUI()
    {
        Handles.color = Color.red;
        WireArcExample myObj = (WireArcExample)target;
        Handles.DrawWireArc(myObj.transform.position, myObj.transform.up, -myObj.transform.right, 180, myObj.shieldArea);
        myObj.shieldArea = (float)Handles.ScaleValueHandle(myObj.shieldArea, myObj.transform.position + myObj.transform.forward * myObj.shieldArea, myObj.transform.rotation, 1, Handles.ConeHandleCap, 1);
    }
}
An example of an Arc handle and an Scale handle
Contoh pegangan Arc dan pegangan Timbangan

Lihat Menangani halaman referensi skrip untuk dokumentasi lengkap tentang cara menggunakan Menangani.

Kelas Penting - Debug
Arsitektur persatuan