Simbol scripting kustom
Komponen Definisi Perakitan

Definisi perakitan

Perakitan Definisi dan Referensi Perakitan adalah aset yang dapat Anda buat untuk mengatur scriptsSepotong kode yang memungkinkan Anda untuk membuat Komponen Anda sendiri, memicu peristiwa permainan, memodifikasi sifat komponen dari waktu ke waktu dan menanggapi input pengguna dengan cara apa pun yang Anda sukai. More info
Lihat di Glossary
Anda menjadi rakitan.

Perakitan adalah perpustakaan kode C# yang berisi kelas dan bangunan yang didefinisikan oleh skrip Anda dan yang juga mendefinisikan referensi ke rakitan lainnya. Lihat Assemblies in .NET untuk informasi umum tentang perakitan di C #.

Secara default, Unity mengkompilasi hampir semua skrip permainan Anda ke dalam perakitan predefined, Assembly-CSharp.dll. (Unity juga menciptakan beberapa rakitan yang lebih kecil, khusus.)

Pengaturan ini bekerja diterima untuk proyek-proyek kecil, tetapi memiliki beberapa kelemahan saat Anda menambahkan lebih banyak kode ke proyek Anda:

  • Setiap kali Anda mengubah satu skrip, Unity harus mengulang semua skrip lain, meningkatkan waktu kompilasi secara keseluruhan untuk perubahan kode iteratif.
  • Setiap skrip dapat langsung mengakses jenis yang didefinisikan dalam skrip lain, yang dapat membuatnya lebih sulit untuk refactor dan meningkatkan kode Anda.
  • Semua skrip disusun untuk semua platform.

Dengan mendefinisikan perakitan, Anda dapat mengatur kode Anda untuk mempromosikan modularitas dan reusabilitas. Script di rakitan Anda mendefinisikan proyek Anda tidak lagi ditambahkan ke rakitan default dan hanya dapat mengakses skrip di rakitan lain yang Anda tunjukkan.

Diagram di atas menggambarkan bagaimana Anda mungkin membagi kode dalam proyek Anda menjadi beberapa rakitan. Karena referensi Main Stuff dan bukan cara lain di sekitar, Anda tahu bahwa setiap perubahan pada kode di Main tidak dapat mempengaruhi kode di Stuff. Demikian pula, karena Library tidak tergantung pada rakitan lain, Anda dapat lebih mudah menggunakan ulang kode dalam Library dalam proyek lain.

Bagian ini membahas cara membuat dan mengatur aset Majelis Definisi dan Perakitan Referensi untuk menentukan perakitan untuk proyek Anda:

Lihat juga:

Defining assemblies

Untuk mengatur kode proyek Anda menjadi perakitan, buat folder untuk setiap perakitan yang diinginkan dan memindahkan skrip yang harus milik setiap perakitan ke dalam folder yang relevan. Kemudian membuat aset definisi Majelis untuk menentukan sifat perakitan.

Unity mengambil semua skrip dalam folder yang berisi aset Majelis Definisi dan mengkompilasi mereka ke dalam perakitan, menggunakan nama dan pengaturan lain yang didefinisikan oleh aset. Unity juga termasuk skrip di setiap folder anak dalam perakitan yang sama, kecuali folder anak memiliki aset Perakitan atau Referensi Perakitan sendiri.

Untuk menyertakan skrip dari folder non-anak dalam perakitan yang ada, buat aset Referensi Perakitan di folder non-anak dan atur untuk merujuk aset Definisi Perakitan yang menentukan perakitan target. Misalnya, Anda dapat menggabungkan skrip dari semua folder Editor dalam proyek Anda dalam perakitan mereka sendiri, tidak peduli di mana folder tersebut terletak.

Unity mengkompilasi perakitan dalam urutan ditentukan oleh ketergantungan mereka; Anda tidak dapat menentukan urutan di mana kompilasi terjadi.

Referensi dan ketergantungan

Ketika satu jenis (seperti kelas atau merusak) menggunakan jenis lain, jenis pertama adalah dependent pada detik. Ketika Unity mengkompilasi skrip, itu juga harus memiliki akses ke semua jenis atau kode lain skrip tergantung pada. Demikian juga, ketika kode yang disusun berjalan, harus memiliki akses ke versi yang disusun dari dependensinya. Jika dua jenis berada di rakitan yang berbeda, perakitan yang mengandung tipe tergantung harus menyatakan reference ke perakitan yang mengandung jenis di mana itu tergantung.

Anda dapat mengontrol referensi antara rakitan yang digunakan dalam proyek Anda menggunakan opsi Definisi Perakitan. Pengaturan Definisi Majelis meliputi:

Sitemap Kelas di rakitan diciptakan dengan Definisi Perakitan tidak dapat menggunakan jenis yang didefinisikan dalam rakitan yang telah ditentukan.Note: Classes in assemblies created with an Assembly Definition cannot use types defined in the predefined assemblies.

Referensi default

Secara default, rakitan yang telah ditentukan referensi semua rakitan lainnya, termasuk yang diciptakan dengan Definisi Perakitan (1) dan rakitan yang telah dipilih ditambahkan ke proyek sebagai plugin (2). Selain itu, merakit Anda membuat dengan aset Majelis Definisi secara otomatis merujuk semua rakitan prekompiled (3):

Dalam pengaturan default, kelas dalam rakitan yang telah ditentukan dapat menggunakan semua jenis yang ditentukan oleh rakitan lain dalam proyek. Demikian juga, merakit Anda membuat dengan aset Majelis Definisi dapat menggunakan semua jenis yang didefinisikan dalam rakitan precompiled (plug-in).

Anda dapat mencegah perakitan dari direferensikan oleh rakitan yang ditentukan dengan mematikan Opsi Referensi Otomatis dalam Inspektur untuk aset Definisi Perakitan. Mematikan auto-referenced berarti bahwa rakitan yang telah ditentukan tidak diulang ketika Anda mengubah kode dalam perakitan, tetapi juga berarti bahwa rakitan yang telah ditentukan tidak dapat menggunakan kode dalam perakitan ini langsung. SitemapKomponen Definisi Perakitan.

Demikian juga, Anda dapat mencegah perakitan plugin secara otomatis direferensikan dengan mematikan Harta site di Plugin Inspector untuk aset plugin. Ini mempengaruhi rakitan yang telah ditentukan dan mereka yang Anda buat dengan Definisi Perakitan. Untuk informasi lebih lanjut, lihat Plugin Inspector.

Ketika Anda mematikan Auto Referenced untuk plug-inSatu set kode yang dibuat di luar Unity yang menciptakan fungsi dalam Unity. Ada dua jenis plug-ins yang dapat Anda gunakan di Unity: Managed plug-ins (diproduksi. Rakitan NET dibuat dengan alat-alat seperti Studio Visual) dan plug-ins asli (pustaka kode asli yang spesifik platform). More info
Lihat di Glossary
, Anda dapat secara eksplisit merujuk pada Inspektur untuk aset Perakitan Definisi. Aktifkan opsi Override Referensi aset dan tambahkan referensi ke plug-in. SitemapKomponen Definisi Perakitan.

Sitemap Anda tidak dapat menyatakan referensi eksplisit untuk rakitan yang telah ditentukan. Rakitan yang telah ditentukan hanya dapat menggunakan kode di rakitan yang dipilih secara otomatis.Note: You cannot declare explicit references for the precompiled assemblies. The predefined assemblies can only use code in auto-referenced assemblies.

Cyclical references

Referensi perakitan siklik ada ketika satu referensi perakitan perakitan kedua yang, pada gilirannya, referensi perakitan pertama. Referensi siklik antara rakitan tidak diperbolehkan dan dilaporkan sebagai kesalahan dengan pesan, “Hanya dengan referensi siklik terdeteksi. Sitemap

Biasanya, referensi siklik antara rakitan terjadi karena referensi siklik dalam kelas yang didefinisikan dalam rakitan. Meskipun tidak ada yang secara teknis tidak valid tentang referensi siklik antara kelas dalam perakitan yang sama, referensi siklik antara kelas dalam rakitan yang berbeda tidak diperbolehkan. Jika Anda menemukan kesalahan referensi siklik, Anda harus mengisi ulang kode Anda untuk menghapus referensi siklik atau menempatkan kelas yang saling merujuk pada perakitan yang sama.

Membuat aset Definisi Perakitan

Untuk membuat aset Definisi Perakitan:

  1. Di jendela ProjectDalam Unity, Anda menggunakan proyek untuk merancang dan mengembangkan permainan. Proyek menyimpan semua file yang terkait dengan permainan, seperti file aset dan Adegan. More info
    Lihat di Glossary
    , cari folder yang mengandung skrip yang ingin Anda masukkan dalam perakitan.
  2. Buat aset Definisi Perakitan di folder (menu: AssetsSetiap media atau data yang dapat digunakan dalam permainan atau proyek Anda. Aset mungkin berasal dari file yang dibuat di luar Unity, seperti model 3D, file audio atau gambar. Anda juga dapat membuat beberapa jenis aset di Unity, seperti Pengontrol Animator, Audio Mixer atau Tekstur Render. More info
    Lihat di Glossary
    > Create > Assembly Definition).
  3. Masukkan nama ke aset. Secara default, file perakitan menggunakan nama yang Anda berikan kepada aset, tetapi Anda dapat mengubah nama di jendela 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
    .

Mengumpulkan skrip dalam proyek untuk membuat perakitan baru. Setelah selesai, Anda dapat mengubah pengaturan untuk Definisi Perakitan baru.

Skrip di folder yang berisi Definisi Perakitan, termasuk skrip di folder anak mana pun (kecuali folder tersebut mengandung aset Majelis atau Referensi mereka sendiri), dikompilasi ke perakitan baru dan dihapus dari perakitan sebelumnya.

Membuat aset acuan Definisi Perakitan

Untuk membuat aset Referensi Definisi Perakitan:

  1. Di jendela Project, cari folder yang mengandung skrip yang ingin Anda masukkan dalam perakitan yang direferensikan.

  2. Buat aset Referensi Perakitan di folder (menu: Assets > Create > Assembly Definition Reference).

  3. Menetapkan nama ke aset.

    Mengumpulkan skrip dalam proyek untuk membuat perakitan baru. Setelah selesai, Anda dapat mengubah pengaturan untuk Referensi Definisi Perakitan baru.

  4. Pilih aset Referensi Definisi Majelis Baru untuk melihat sifatnya di Inspector.

  5. Mengatur properti Definisi Majelis untuk referensi aset Definisi Perakitan target.

  6. Klik Apply.

Skrip di folder yang berisi aset Referensi Definisi Perakitan, termasuk skrip di folder anak apa pun (kecuali folder tersebut mengandung aset Definisi atau Referensi Majelis mereka sendiri) disusun ke dalam perakitan yang direferensikan dan dihapus dari perakitan sebelumnya.

Membuat perakitan spesifik platform

Untuk membuat perakitan untuk platform tertentu:

  1. Buat aset Definisi Perakitan.

  2. Pilih aset Referensi Definisi Majelis Baru untuk melihat sifatnya di Inspector.

  3. Periksa opsi Any Platform dan pilih platform khusus untuk dikecualikan. Secara terpisah, Anda dapat membatalkan setiap Platform dan memilih platform khusus untuk menyertakan.

  4. Klik Apply.

Perakitan akan disertakan (atau dikecualikan) sesuai dengan platform yang dipilih ketika Anda membangun proyek Anda untuk platform.

Membuat perakitan untuk kode Editor

Rakitan editor memungkinkan Anda untuk menempatkan skrip Editor Anda di mana saja di proyek, tidak hanya di folder tingkat atas bernama, Editor.

Untuk membuat perakitan yang berisi kode Editor di proyek Anda:

  1. Buat perakitan spesifik platform dalam folder yang berisi skrip Editor Anda.
  2. Sertakan HANYA platform Editor.
  3. Jika Anda memiliki folder tambahan yang mengandung skrip Editor, membuat aset Referensi Definisi Perakitan di folder tersebut dan atur untuk merujuk Definisi Perakitan ini.

Membuat perakitan pengujian

Rakitan uji memungkinkan Anda untuk menulis tes dan menjalankannya dengan Unity TestRunner, sambil menjaga kode tes Anda terpisah dari kode yang Anda kirimkan dengan aplikasi Anda. Unity menyediakan TestRunner sebagai bagian dari . Lihat petunjuk untuk menginstal paket Test Framework dan membuat rakitan uji.

Mengacu perakitan lain

Untuk menggunakan tipe C# dan fungsi yang merupakan bagian dari perakitan lain, Anda harus membuat referensi ke perakitan itu dalam aset Majelis Definisi.

Untuk membuat referensi perakitan:

  1. Pilih Definisi Perakitan untuk perakitan yang membutuhkan referensi untuk melihat sifatnya di Inspector.

  2. Pada bagian Assembly Definition References, klik tombol + untuk menambahkan referensi baru.

  3. Menetapkan aset Definisi Majelis ke slot yang baru dibuat dalam daftar referensi.

Mengaktifkan opsi Use GUIDs memungkinkan Anda untuk mengubah nama file aset Definisi Perakitan yang direferensikan tanpa memperbarui referensi dalam Definisi Perakitan lain untuk mencerminkan nama baru. (Catatan bahwa GUID harus diatur ulang jika file metadata untuk file aset dihapus atau Anda memindahkan file di luar Editor Unity tanpa juga memindahkan file metadata bersama dengan mereka.)

Mengacu precompiled, perakitan plugin

Secara default, semua rakitan dalam proyek Anda yang dibuat dengan Definisi Perakitan secara otomatis merujuk semua rakitan yang telah ditentukan. Referensi otomatis ini berarti bahwa Unity harus mengulangi semua rakitan Anda ketika Anda memperbarui salah satu rakitan yang telah ditentukan, bahkan jika kode dalam perakitan tidak digunakan. Untuk menghindari overhead tambahan ini, Anda dapat menimpa referensi otomatis dan menentukan referensi untuk hanya perpustakaan yang telah ditentukan perakitan sebenarnya menggunakan:

  1. Pilih Definisi Perakitan untuk perakitan yang membutuhkan referensi untuk melihat sifatnya di Inspector.

  2. Pada bagian General, aktifkan opsi Override References.

    Bagian Assembly References dari Inspector tersedia ketika Override References diperiksa.

  3. Pada bagian Assembly References, klik tombol + untuk menambahkan referensi baru.

  4. Gunakan daftar drop-down di slot kosong untuk menetapkan referensi ke perakitan prekompiled. Daftar ini menunjukkan semua rakitan yang telah ditentukan dalam proyek untuk platform yang saat ini ditetapkan dalam proyek Membangun Pengaturan. (Setiap kompatibilitas platform untuk perakitan yang telah ditentukan di Plugin Inspector.)

  5. Klik Apply.

  6. Ulangi untuk setiap platform yang Anda bangun proyek Anda.

Secara teratur termasuk perakitan

Anda dapat menggunakan simbol preprocessor untuk mengontrol apakah perakitan disusun dan disertakan dalam membangun permainan atau aplikasi Anda (termasuk mode bermain di Editor). Anda dapat menentukan simbol mana yang harus didefinisikan untuk perakitan yang akan digunakan dengan daftar Define Constraints dalam opsi Definisi Perakitan:

  1. Pilih Definisi Perakitan untuk perakitan untuk melihat sifatnya di Inspector.

  2. Pada bagian Define Constraints, klik tombol + untuk menambahkan simbol baru ke daftar batasan.

  3. Masukkan nama simbol.

    Anda dapat "menyembunyikan" simbol dengan menempatkan titik eksklamasi di depan nama. Misalnya, kontratraint, !UNITY_WEBGL akan mencakup perakitan ketika UNITY_WEBGL tidak didefinisikan.

  4. Klik Apply.

Anda dapat menggunakan simbol berikut sebagai batasan:

  • Simbol yang didefinisikan dalam pengaturan Simbol Define Scripting, yang dapat Anda temukan di bagian Player dari Project SettingsPengumpulan yang luas dari pengaturan yang memungkinkan Anda untuk mengkonfigurasi bagaimana Fisika, Audio, Jaringan, Grafik, Input dan banyak bidang lain dari jangkauan proyek Anda. More info
    Lihat di Glossary
    Anda. Perhatikan bahwa Scripting Define Symbols berlaku untuk platform yang saat ini diatur dalam proyek Anda Membangun Pengaturan. Untuk mendefinisikan simbol untuk beberapa platform, Anda harus beralih ke setiap platform dan memodifikasi kolom Scripting Define Symbols secara individual.
  • Simbol yang didefinisikan oleh Unity. Sitemapkompilasi Platform.
  • Simbol didefinisikan menggunakan bagian Versi Defines dari aset Majelis Definisi.

Simbol yang didefinisikan dalam skrip tidak dipertimbangkan ketika menentukan jika batasan telah puas.

Lihat Define Constraints untuk informasi tambahan.

Menentukan simbol berdasarkan versi paket Unity dan proyek

Jika Anda perlu mengkompilasi kode yang berbeda dalam perakitan menurut apakah proyek menggunakan versi khusus Unity atau paket, Anda dapat menambahkan entri ke daftar Version Defines. Daftar ini menentukan aturan untuk ketika simbol harus didefinisikan. Untuk nomor versi, Anda dapat menentukan ekspresi logis yang mengevaluasi versi tertentu atau berbagai versi.

Untuk secara kondisional mendefinisikan simbol:

  1. Pilih aset Definisi Perakitan untuk perakitan untuk melihat sifatnya di Inspector.

  2. Pada bagian Version Defines, klik tombol + untuk menambahkan entri ke daftar.

  3. Mengatur properti:

    • Resource: pilih Unity atau paket atau modul yang harus dipasang untuk simbol ini untuk didefinisikan
    • Define: nama simbol
    • Expression: ekspresi yang mengevaluasi versi tertentu atau berbagai versi. Lihat Versi Define Expression untuk aturan.

    Expression outcome menunjukkan versi ekspresi yang mengevaluasi. Jika tampilan hasil, Invalid, maka sintaks ekspresi tidak benar.

    Contoh berikut mendefinisikan simbol, USE_TIMELINE_1_3, jika proyek menggunakan Timeline 1.3 dan mendefinisikan, USE_NEW_APIS, jika proyek dibuka pada Unity 2021.2.0a7, atau kemudian:

  4. Klik Apply.

Simbol yang didefinisikan dalam Definisi Perakitan hanya dalam lingkup untuk skrip dalam perakitan yang dibuat untuk definisi itu.

Perhatikan bahwa Anda dapat menggunakan simbol yang didefinisikan menggunakan daftar Version Defines sebagai Define Constraints. Dengan demikian Anda dapat menentukan bahwa perakitan hanya boleh digunakan ketika versi tertentu dari paket tertentu juga dipasang di proyek.

Versi Define ekspresi

Anda dapat menggunakan ekspresi untuk menentukan versi yang tepat atau berbagai versi. ekspresi Version Define menggunakan notasi rentang matematika.

Braket persegi, "[]" merancang bahwa kisaran termasuk endpoint:

[1.3,3.4.1]1.3.0 <= x <= 3.4.1 mengevaluasi ke

A parenthesis “()” merancang bahwa kisaran tidak termasuk endpoint:

(1.3.0,3.4)1.3.0 < x < 3.4.0 mengevaluasi ke

Anda dapat mencampur kedua jenis rentang dalam ekspresi tunggal:

[1.1,3.4)1.1.0 <= x < 3.4.0 mengevaluasi ke

(0.2.4,5.6.2-preview.2]0.2.4 < x <= 5.6.2.-preview.2 mengevaluasi ke

Anda dapat menggunakan printer versi tunggal dalam kurung persegi untuk menentukan versi yang tepat:

[2.4.5]x = 2.4.5 mengevaluasi ke

Sebagai shortcut, Anda dapat memasukkan versi tunggal tanpa kurung rentang untuk menunjukkan bahwa ekspresi termasuk versi atau nanti:

2.1.0-preview.7x >= 2.1.0-preview.7 mengevaluasi ke

Sitemap Tidak ada ruang yang diperbolehkan dalam ekspresi. Tidak ada karakter wildcard yang didukung.Note: No spaces are allowed in an expression. No wildcard characters are supported.

Nomor versi Unity

Versi Unity (dan semua versi yang mendukung Definisi Perakitan) menggunakan penunjuk versi dengan tiga bagian: MAJOR.MINOR.REVISION, misalnya, 2017.4.25f1, 2018.4.29f1, dan 2019.4.7f1.

  • Versi MAJOR adalah tahun rilis target, seperti 2017 atau 2021.
  • Versi MINOR adalah kuartal rilis target, seperti 1, 2, 3, atau 4.
  • Penunjuk REVISION memiliki tiga bagian sendiri, dengan format: RRzNN, di mana:
    • RR adalah nomor revisi satu atau dua digit
    • z adalah surat yang merancang jenis rilis:
      • a = alpha rilis
      • b = beta rilis
      • f = rilis publik normal
      • c = Versi rilis Cina (setara f)
      • p = rilis patch
      • x = rilis eksperimental
    • NN adalah satu atau dua digit nomor inkremental

Jenis rilis penunjuk dibandingkan sebagai berikut:

a < b < f = c < p < x

Dengan kata lain, rilis alfa dianggap lebih awal dari beta, yang sebelumnya dari rilis normal (f) atau Cina (c). Sebuah rilis patch selalu kemudian dari rilis normal atau Cina dengan nomor revisi yang sama dan rilis eksperimental kemudian dari jenis rilis lainnya. Perhatikan bahwa rilis eksperimental tidak menggunakan nomor incremental di akhir.

Nomor versi Unity diperbolehkan untuk memiliki suffix setelah komponen REVISION, seperti 2019.3.0f11-Sunflower. Setiap suffixes diabaikan untuk tujuan membandingkan versi.

Sebagai contoh, ekspresi berikut mencakup versi Unity 2017 atau 2018, tetapi tidak ada versi di 2019 atau nantinya:

[2017,2019)

Paket dan nomor versi modul

Paket dan modul versi desain memiliki empat bagian, mengikuti format Versi Semantik: Login PATCH-LABEL. Tiga bagian pertama selalu angka, tetapi label adalah string. Paket unity di pratinjau menggunakan string, preview atau preview.n, di mana n > 0. Lihat Paket Versi untuk informasi lebih lanjut tentang nomor versi paket.

Sebagai contoh, ekspresi berikut mencakup semua versi paket dengan MAJOR. Versi MINOR antara 3.2 dan 6.1 (termasuk):

[3.2,6.1]

Menemukan yang perakitan skrip milik Meme it

Untuk mengidentifikasi mana perakitan salah satu skrip C# Anda dikompilasi menjadi:

  1. Pilih file skrip C# di jendela Unity Project untuk melihat sifatnya di jendela Inspector.

  2. Nama file perakitan dan Definisi Perakitan, jika satu ada, ditunjukkan pada bagian Assembly Information dari Inspector.

Dalam contoh ini, script yang dipilih disusun ke file perpustakaan, Unity.Timeline. Editor.dll, yang didefinisikan oleh Unity. Login Database Administrator

folder khusus

Unity memperlakukan skrip di folder dengan nama khusus tertentu berbeda dari skrip di folder lain. Namun, salah satu folder ini kehilangan perawatan khusus ketika Anda membuat aset Definisi Majelis di dalamnya atau di folder di atasnya. Anda mungkin melihat perubahan ini ketika Anda menggunakan folder Editor, yang mungkin tersebar di seluruh Proyek Anda (tergantung pada bagaimana Anda mengatur kode Anda dan pada Paket Asset Store yang Anda gunakan).

Unity biasanya mengkompilasi setiap skrip di folder bernama Editor ke perakitan-CSharp-Editor yang telah ditentukan tidak peduli di mana skrip tersebut terletak. Namun, jika Anda membuat aset Majelis Definisi dalam folder yang memiliki folder Editor di bawahnya, Unity tidak lagi menempatkan skrip Editor tersebut ke dalam perakitan editor yang ditentukan. Alih-alih, mereka pergi ke perakitan baru yang dibuat oleh Definisi Perakitan Anda — di mana mereka mungkin tidak milik. Untuk mengelola folder Editor, Anda dapat membuat aset Majelis Definisi atau Referensi di setiap folder Editor untuk menempatkan skrip tersebut dalam satu atau lebih rakitan Editor. SitemapMembuat perakitan untuk kode Editor.

Pengaturan atribut perakitan

Anda dapat menggunakan atribut perakitan untuk mengatur sifat metadata untuk perakitan Anda. Oleh konvensi, pernyataan atribut perakitan biasanya dimasukkan dalam file bernama AssemblyInfo.cs.

Misalnya, atribut perakitan berikut menentukan beberapa atribut Sitemap Nilai metadata perakitan NET, atribut Login Sitemap, yang dapat berguna untuk pengujian, dan Pengawetan atribut yang ditentukan Unity yang mempengaruhi bagaimana kode yang tidak digunakan dihapus dari perakitan ketika Anda membangun proyek Anda:

[assembly: System.Reflection.AssemblyCompany("Bee Corp.")]
[assembly: System.Reflection.AssemblyTitle("Bee's Assembly")]
[assembly: System.Reflection.AssemblyCopyright("Copyright 2020.")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("UnitTestAssembly")]
[assembly: UnityEngine.Scripting.Preserve]

Mendapatkan informasi perakitan dalam membangun skrip

Gunakan Kompilasi Kelas pipa, di UnityEditor. Nama kompilasi, untuk mengambil informasi tentang semua perakitan yang dibangun oleh Unity untuk proyek, termasuk yang dibuat berdasarkan aset Majelis Definisi.

Misalnya, skrip berikut menggunakan kelas kompilasiPipeline untuk mencantumkan semua rakitan pemain saat ini dalam proyek:

using UnityEditor;
using UnityEditor.Compilation;
public static class AssemblyLister
{
    [MenuItem("Tools/List Player Assemblies in Console")]
    public static void PrintAssemblyNames()
    {
        UnityEngine.Debug.Log("== Player Assemblies ==");
        Assembly[] playerAssemblies =
            CompilationPipeline.GetAssemblies(AssembliesType.Player);

        foreach (var assembly in playerAssemblies)
        {
            UnityEngine.Debug.Log(assembly.name);
        }
    }
}
Simbol scripting kustom
Komponen Definisi Perakitan