Melaksanakan animasi helaian sprite

Laman dikemaskini :
Tarikh penciptaan halaman :

Persekitaran pengesahan

Windows
  • Windows 11
Penyunting Perpaduan
  • 2020.3.25f1
Pakej Sistem Input
  • 1.2.0

Prasyarat untuk petua ini

Tetapan berikut telah diprakonfigurasi sebagai prasyarat untuk penjelasan petua ini.

Apakah Animasi Helaian Sprite?

Dalam permainan moden, watak dan kesan dianimasi dengan menggerakkan model 3D, mengira letupan dalam masa nyata, dan memaparkan kesan. Ini telah menjadi mungkin kerana kuasa pengkomputeran konsol permainan telah meningkat, tetapi sejak konsol permainan lama tidak mempunyai banyak kuasa, animasi lembaran sprite yang terus menukar imej untuk menjadikannya kelihatan seolah-olah ia bergerak adalah arus perdana. Prinsipnya adalah sama seperti anime yang dimainkan di TV. Animasi helaian sprite digunakan oleh permainan yang lebih sedikit daripada pada masa lalu, tetapi ia masih sering digunakan kerana beban yang diperlukan untuk pengiraan jauh lebih rendah.

Suis animasi helaian sprite dan memaparkan berbilang imej berturut-turut. Ia jarang menyediakan seberapa banyak fail imej seperti yang ada, dan pada dasarnya semua corak paparan dimasukkan dalam satu imej. Ini menjadikannya lebih mudah untuk menguruskan fail imej dan mengurangkan beban memuatkan fail imej. Fail imej yang meringkaskan animasi ini dipanggil "helaian sprite".

Mencipta helaian sprite

Helaian sprite pada dasarnya hanyalah fail imej. Oleh kerana ia tidak ada kaitan dengan Unity, sila buat dengan alat penyuntingan imej. Format fail akhir akan menjadi fail PNG yang boleh dikendalikan oleh Unity.

Di samping itu, terdapat peraturan berikut untuk mencipta helaian sprite.

  • Menyatukan saiz imej semua bingkai. Sebagai contoh, jika imej pertama ialah 32x32 piksel, imej kedua dan seterusnya ialah 32x32 piksel. Sebagai contoh, jika anda menyediakan helaian sprite dalam format "3x2" dengan 6 bingkai, saiz helaian sprite ialah 96x64 piksel.
  • Anda boleh menyelaraskan imej dengan bebas seperti "6x4" atau "2x8", tetapi pastikan anda menciptanya dengan andaian bahawa semua bingkai akan diisi. Jika ia "6x4", ia adalah 24 bingkai, dan sebagainya. Jika ia adalah animasi 13 bingkai, sediakannya dengan "1x13" atau "13x1".
  • Oleh kerana ia adalah animasi, ia diselaraskan dengan betul supaya tidak ada salah jajaran dalam bingkai sebelum dan selepas.
  • Arah animasi bermula dari sel kiri atas dan pergi ke kanan, dan apabila anda pergi ke kanan jauh, ia bermula dari kiri satu langkah ke bawah dan pergi ke kanan lagi.

Sebenarnya, anda tidak perlu melakukan perkara di atas dengan ketat dalam Perpaduan, tetapi lebih mudah untuk memutuskan spesifikasi terlebih dahulu.

Kali ini, saya akan menggunakan helaian sprite untuk menukar nombor berikut. Satu segi empat sama ialah 32x32 piksel. Ia terdiri daripada 24 bingkai "6x4", jadi saiz imej ialah 192x128 piksel.

Mengkonfigurasikan helaian sprite dalam Editor Perpaduan

Sebaik sahaja anda mencipta projek anda, tambahkan fail helaian sprite pada projek anda. Di sini, diandaikan bahawa nama fail adalah NumberAnimation .

NumberAnimation Pilih fail dan isikan pemeriksa seperti berikut:

Nilai Item
Jenis Tekstur Sprites (2D dan UI)
Mod Sprite Majmuk

Terdapat banyak tetapan lain yang boleh dikonfigurasi, tetapi mari kita biarkan ia seperti sekarang. Setelah dikonfigurasikan, klik butang "Editor Sprite".

Jika dialog di bawah muncul, klik butang "Terapkan". Malah, tetapan pemeriksa ini perlu disimpan, dan jika anda menatal ke bahagian bawah, terdapat butang "Terapkan", jadi anda perlu menyimpan tetapan dengan butang ini. Ia juga akan disimpan oleh "Terapkan" dalam dialog, jadi tidak kira dengan cara anda menyimpannya.

Editor Sprite muncul. Dalam bahagian ini, kami akan berusaha untuk memisahkan sprite dari lembaran sprite.

Terdapat butang yang dipanggil "Potongan" di sudut kiri atas, klik padanya dan tukar jenis kepada "Grid Mengikut Saiz Sel". Dalam helaian sprite ini, satu saiz sprite ialah piksel "32x32", jadi masukkan 32 untuk setiap saiz piksel. Apabila anda selesai, klik butang Hiris.

Imej ini sukar difahami kerana ia seolah-olah dibahagikan dengan jelas dari awal, tetapi ia dibahagikan dengan 1 sprite 32px. Tekan kekunci "Ctrl" dan garis pisah akan muncul dalam warna hijau.

Selepas berpecah, simpan dengan butang "Terapkan".

Jika anda mengklik segi tiga dalam fail imej projek untuk mengembangkannya, anda dapat melihat bahawa sprite telah dibahagikan.

Penempatan dan Animasi Sprite

Seret set sprite ke dalam pandangan dan letakkannya.

Kemudian dialog akan muncul, jadi simpan NumberAnimation sebagai . Fail ini memegang seting animasi.

Sprite pertama diletakkan dalam pandangan, dan pengawal animasi dan klip animasi dicipta dalam projek. Jika imej kecil, tetapkan skala untuk menjadikannya lebih besar.

Pada ketika ini, tetapan animasi lalai akan digunakan, jadi anda hanya boleh menjalankan permainan. Anda sepatutnya dapat melihat bahawa animasi sprite bergerak sebaik sahaja permainan bermula.

Mengelakkan animasi daripada gelung

Pilih fail klip animasi (NumberAnimation.anim) daripada projek anda.

Dalam pemeriksa, terdapat kotak semak untuk "Masa gelung", jadi nyahtandainya.

Jika anda menjalankan permainan, anda akan melihat bahawa animasi berhenti pada 24. Ia berkesan untuk kesan letupan sekali sahaja.

Mengubah kelajuan animasi

Pilih sprite yang anda ingin animasikan daripada hierarki.

Kemudian pilih tab Animasi. Jika anda tidak mempunyai tab Animasi, pilih Tetingkap > Animasi > Animasi daripada menu.

Terdapat nombor yang dipanggil "sampel", iaitu beberapa kali untuk menukar imej dalam satu saat. Dalam sampel ini, animasi adalah 24 bingkai, jadi animasi diulang setiap 2 saat.

Jika anda mengurangkan nombor ini, kelajuan animasi akan lebih perlahan, dan jika anda meningkatkannya, kelajuan akan meningkat.

Mengenai seting animasi lanjutan yang lain

Pelbagai tetapan animasi dijelaskan secara berasingan dalam petua khusus animasi. Tetapan ini tidak eksklusif untuk animasi sprite, tetapi tidak eksklusif untuk Ia sama seperti menyediakan animasi gerakan lain dan animasi 3D.

Dalam petua ini, kami akan menerangkan cara bergerak dari helaian sprite sebagai animasi.