Late Binding
Sprite Packer

Menyelesaikan skenario Sprite Atlas yang berbeda

Cara Unity menyelesaikan interaksi antara Sprites dan SpriteObjek grafis 2D. Jika Anda digunakan untuk bekerja di 3D, Sprites pada dasarnya hanya tekstur standar tetapi ada teknik khusus untuk menggabungkan dan mengelola tekstur sprite untuk efisiensi dan kenyamanan selama perkembangan. More info
Lihat di Glossary
Atlas tergantung pada berbagai kondisi. Contoh di bawah detail skenario paling umum:

Login 1: Penggunaan Atlas Sprite Dasar

  1. Sprite AtlasA texture that is composed of several smaller textures. Also referred to as a texture atlas, image sprite, sprite sheet or packed texture. More info
    See in Glossary
    A
    mengandung Sprite 1.
  2. Sprite Atlas A has Include in Build diaktifkan.
  3. Hasil: Bangunan yang dipublikasikan Proyek mencakup Sprite Atlas A. Sprite 1 renders dengan Tekstur dari Sprite Atlas A.

Login 2: 'Tidak termasuk Build' dinonaktifkan

  1. Sprite Atlas A mengandung Sprite 1.
  2. Sprite Atlas A memiliki Include in Build dinonaktifkan.
  3. Hasil: Bangunan yang dipublikasikan Proyek tidak termasuk Sprite Atlas A, dan tidak termasuk Tekstur Sprite 1’s. Sprite 1 appears tak terlihat dalam build pada waktu berjalan, karena Tekstur itu mengacu pada tidak tersedia dan tidak dimuat.

Scenario 3: Satu Sprite di dua Atlassian

  1. Sprite Atlas A dan Sprite Atlas B keduanya termasuk Sprite 1 dalam daftar Objek untuk Packing mereka.
  2. Sprite Atlas A dan Sprite Atlas B memiliki Include in Build diaktifkan.
  3. Kedua Sprite Atlases memiliki pengaturan output Tekstur yang berbeda dalam contoh ini.
  4. Hasil: Bangunan yang dipublikasikan Proyek mencakup Atlas Sprite. Secara acak memilih Tekstur mana untuk membuat Sprite 1 dengan, dalam proses internal yang keluar dari kontrol Anda.

Dalam skenario ini, untuk memastikan bahwa render Sprite dengan Tekstur dari Atlas Sprite yang Anda inginkan, ikuti langkah-langkah di bawah ini:

  1. Disable ‘Include in Build’ untuk kedua Atlas Sprite.
  2. Ketika Anda menginisialisasi Sprite pada waktu berjalan, minta Sprite langsung dari salah satu Atlas dengan SpriteAtlas.GetSprite. Ini memastikan bahwa Unity selalu menarik Tekstur Sprite dari Atlas Sprite yang benar.
Late Binding
Sprite Packer