Lebih Banyak Math.random () Metode dalam Sistem Partikel
Dalam tutorial terakhir kami, kami menyelesaikan animasi salju untuk sistem partikel Flash CS3 kami. Pertama, kami membuat dan menghidupkan satu kepingan salju. Kemudian kami membuat banyak kepingan salju animasi untuk menyelesaikan animasi kepingan salju. Namun, ketika kami menguji film, kami tidak terlalu senang dengan hasilnya karena kepingan salju tampaknya hilang dari sudut kiri bawah panggung.

Apa yang bisa kita lakukan untuk menyesuaikan animasi kita? Seperti yang kita punya kode sekarang, kepingan salju dapat memulai hidupnya di mana saja di bagian atas panggung pada posisi antara 0 dan 510 pada sumbu X. Kemudian kepingan salju ini membuat jalan ke bawah dalam arah sudut ke kanan. Tampaknya arah sudut inilah yang menyebabkan kepingan salju hilang dari sudut kiri bawah panggung. Kita bisa mengeluarkan kode yang menciptakan gerakan bersudut dan kepingan salju kita akan langsung jatuh ke bawah panggung. Jika kita melakukan ini, salju akan menutupi seluruh panggung tetapi kita akan kehilangan ilusi angin yang disimulasikan oleh gerakan sudut.

Mari kita asumsikan bahwa kita ingin menjaga ilusi angin ini dan karena itu kita perlu menjaga gerakan bersudut. Seperti yang kami sebutkan di atas, butiran salju kami dapat mulai di mana saja di bagian atas panggung. Namun, bahkan kepingan salju yang mulai jatuh dari paling kiri panggung (pada posisi 0 pada sumbu X) akan mendarat di tengah bawah panggung, meninggalkan area kiri kosong. Bagaimana kita dapat mengubah kode kita sehingga beberapa kepingan salju memasuki panggung pada titik yang lebih rendah di sepanjang sumbu Y vertikal dan, oleh karena itu, jatuh melintasi sudut kiri panggung. Tanpa terlalu banyak matematika untuk tutorial pemula ini, kita perlu mulai membuat kepingan salju di luar area panggung di sebelah kiri. Meskipun kepingan salju ini tidak akan terlihat ketika mereka memulai hidupnya, mereka akan jatuh setidaknya setengah dari jalan menuruni sumbu Y vertikal sebelum mereka memasuki panggung dan menjadi terlihat. Dengan melakukan ini, kami memastikan kepingan salju ini akan jatuh di sudut kiri bawah panggung.

Saat ini, kami menghasilkan nomor acak untuk properti the_Snowflake.x. Ingatlah bahwa ini adalah properti _Snowflake.x yang mengontrol posisi X awal untuk butiran salju kami. Posisi awal ini dapat berupa angka antara 0 dan 510 di sepanjang sumbu X.

_Snowflake.x = Math.random () * 510;

Jika kita memberi tahu Flash untuk menggunakan angka antara -350 dan 510, kepingan salju yang dimulai dengan angka negatif adalah kepingan salju yang akhirnya jatuh di sudut kiri bawah panggung. Kita bisa melakukan ini dengan menambahkan -350 ke angka acak yang dihasilkan oleh metode Math.random ().

_Snowflake.x = -350 + Math.random () * 510;

Ubah baris kode ini dan uji film Anda. Apa yang terjadi? Kami memperbaiki masalah kami dan menyebabkan yang lain. Sekarang kepingan salju hilang dari sudut kanan atas panggung. Mengapa? Jumlah terbesar untuk properti the_Snowflake.x (posisi kepingan salju di sepanjang sumbu X) adalah 160 (510 - 350). Sisa sumbu X antara 161 dan 550 tidak memiliki kepingan salju dan itulah sebabnya sudut kanan atas kosong dari salju. Bagaimana kami bisa mendapatkan nomor properti the_Snowflake.x berkisar antara 0 dan 550? Kami dapat memperluas rentang nomor acak antara 0 dan 900 (550 + 350).

_Snowflake.x = -350 + Math.random () * 900;

Ubah kode dan uji lagi. Berhasil. Sudahkah kita selesai? Tidak, jika Anda membiarkan animasi ini berjalan selama beberapa waktu, Anda akan melihat bahwa itu mulai menugaskan sumber daya komputer Anda. Kita perlu membuat beberapa perubahan pada ActionScript untuk membuatnya lebih efisien.

Catatan - Kode animasi ini tidak lengkap hingga Anda mencapai akhir seri tutorial. Jangan gunakan kode tidak lengkap ini dalam proyek Flash Anda.

Hak Cipta 2018 Adobe Systems Incorporated. Seluruh hak cipta. Tangkapan layar produk Adobe dicetak ulang dengan izin dari Adobe Systems Incorporated. Adobe, Photoshop, Album Photoshop, Photoshop Elements, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, Kembang Api, Berkontribusi, Memikat, Flash Catalyst dan Flash Paper adalah [a] merek dagang terdaftar [s] atau merek dagang [s] dari Adobe Systems Incorporated di Amerika Serikat dan / atau negara lain.


Petunjuk Video: The most unexpected answer to a counting puzzle (Mungkin 2024).