Pages

Minggu, 30 Oktober 2011

Animasi : Menambah Behaviour dari Model

Animasi merupakan suatu teknik menampilkan gambar berurut sedemikian rupa sehingga penonton merasakan adanya ilusi gerakan (motion) pada gambar yang ditampilkan. Secara umum ilusi gerakan merupakan perubahan yang dideteksi secara visual oleh mata penonton sehingga tidak harus perubahan yang terjadi merupakan perubahan posisi sebagai makna dari istilah 'gerakan'. Perubahan seperti perubahan warna pun dapat dikatakan sebuah animasi.

Kita sekarang akan setup animasi dasar. Animasi di Ogre sangat sederhana. Untuk melakukan ini, Anda perlu mendapatkan Badan AnimationState dari objek, mengatur pilihan, dan mengaktifkannya. Ini akan membuat animasi aktif, tetapi Anda juga perlu menambah waktu untuk itu setelah setiap frame agar animasi untuk menjalankan. Kita akan mengambil satu langkah pada satu waktu. Pertama, pergi ke MoveDemoListener's constructor dan tambahkan kode berikut:

// Set idle animation
mAnimationState = ent->getAnimationState("Idle");
mAnimationState->setLoop(true);
mAnimationState->setEnabled(true);



Baris kedua mendapatkan AnimationState keluar dari entitas. Pada baris ketiga kita sebut setLoop (benar), yang membuat animasi loop berulang-ulang. Untuk beberapa animasi (seperti kematian animasi), kita akan ingin untuk mengatur palsu ini sebagai gantinya. Baris keempat benar-benar memungkinkan Animasi. Tapi tunggu ... mana yang kita dapatkan "Idle" dari? Bagaimana sihir ini konstan menyelinap di sana? Setiap mesh memiliki seperangkat mereka sendiri Animasi ditetapkan untuk mereka. Untuk melihat semua Animasi untuk mesh tertentu yang sedang Anda kerjakan, Anda perlu untuk men-download dan melihat OgreMeshViewer mesh dari sana.
Sekarang, jika kita mengkompilasi dan menjalankan demo yang kita lihat ... tidak ada yang berubah. Hal ini karena kita perlu memperbarui negara animasi dengan waktu setiap frame. Cari MoveDemoListener:: frameStarted metode, dan tambahkan baris kode ini pada awal fungsi:
 
mAnimationState->addTime(evt.timeSinceLastFrame);
Sekarang membangun dan menjalankan aplikasi.  
Anda akan melihat robot melaksanakan animasi berdiri di tempat.

Referensi :

http://handipramulyana.blogspot.com/2010/03/tutorial-animasi-pada-ogre-3d.html

0 komentar:

Posting Komentar