• G#

AnimationEvent

kelas dalam UnityEngine

/

Diterapkan dalam:UnityEngine.AnimationModule

Sarankan perubahan

Success!

Terima kasih untuk membantu kami meningkatkan kualitas Dokumentasi Unity. Meskipun kami tidak dapat menerima semua pengajuan, kami membaca setiap perubahan yang disarankan dari pengguna kami dan akan melakukan pembaruan di mana berlaku.

Close

Penjelasan gagal

Untuk beberapa alasan perubahan yang disarankan Anda tidak dapat diajukan. Silahkan <a>try lagi</a> dalam beberapa menit. Dan terima kasih untuk mengambil waktu untuk membantu kami meningkatkan kualitas Dokumentasi Unity.

Close

Cancel

Description

AnimasiEvent memungkinkan Anda memanggil fungsi skrip mirip dengan SendMesssage sebagai bagian dari bermain kembali animasi.

Fungsi dukungan acara animasi yang mengambil nol atau satu parameter. Parameter dapat menjadi pelampung, int, string, referensi objek, atau Animasi.

// Animation Event example
// Small example that can be called on each specified frame.
// The code is executed once per animation loop.

using UnityEngine; using System.Collections;

public class Example : MonoBehaviour { public void PrintEvent() { Debug.Log("PrintEvent"); } }

Contoh yang lebih rinci di bawah ini menunjukkan cara yang lebih kompleks untuk membuat animasi. Dalam script ini contoh komponen Animator diakses dan Clip dari itu diperoleh. ( Klip ini diatur di jendela Animasi.) Klip berlangsung selama 2 detik. Sebuah AnimationEvent dibuat, dan memiliki set parameter. Parameter termasuk fungsi PrintEvent() yang akan menangani acara. Acara kemudian ditambahkan ke klip. Ini semua terjadi pada Start(). Setelah permainan telah meluncurkan acara ini disebut setelah 1.3s dan kemudian mengulangi setiap 2s.

// Add an Animation Event to a GameObject that has an Animator
using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour { public void Start() { // existing components on the GameObject AnimationClip clip; Animator anim;

// new event created AnimationEvent evt; evt = new AnimationEvent();

// put some parameters on the AnimationEvent // - call the function called PrintEvent() // - the animation on this object lasts 2 seconds // and the new animation created here is // set up to happen 1.3s into the animation evt.intParameter = 12345; evt.time = 1.3f; evt.functionName = "PrintEvent";

// get the animation clip and add the AnimationEvent anim = GetComponent<Animator>(); clip = anim.runtimeAnimatorController.animationClips[0]; clip.AddEvent(evt); }

// the function to be called as an event public void PrintEvent(int i) { print("PrintEvent: " + i + " called at: " + Time.time); } }

Properties

Login Login Negara animasi yang dipecat acara ini (Read Only).
animatorClipInfo Info klip animator yang berkaitan dengan acara ini (Read Only).
animatorStateInfo Info negara aimator terkait dengan acara ini (Read Only).
floatParameter Mengambang parameter yang disimpan dalam acara dan akan dikirim ke fungsi.
Sitemap Login Nama fungsi yang akan disebut.
intParameter Int parameter yang disimpan dalam acara dan akan dikirim ke fungsi.
isFiredByAnimator Kembali benar jika acara Animasi ini telah dipecat oleh komponen Animator.
isFiredByLegacy Kembali benar jika acara Animasi ini telah dipecat oleh komponen Animasi.
messageOptions Opsi panggilan fungsi.
objectReferenceParameter Parameter referensi objek yang disimpan dalam acara dan akan dikirim ke fungsi.
stringParameter Parameter string yang disimpan dalam acara dan akan dikirim ke fungsi.
time Waktu di mana acara akan dipecat.

Constructors

AnimationEvent Buat acara animasi baru.