Sunday 7 June 2015

Unity Tutorial : C# ~ Find dan GetComponent

Advertisement



Find dan GetComponent adalah 2 fungsi yang sering digunakan di dalam listing program game. 

Find digunakan untuk mencari objek di dalam unity melalui sebuah listing program. Biasanya digunakan untuk mencari objek yang akan diedit atau diakses di dalam script.

GetComponent digunakan untuk mengakses komponen pada sebuah objek game. Nantinya komponen tersebut akan diedit di dalam script.

FIND
Listing Program 1
GameObject pemain;

void Awake(){
       pemain = GameObject.Find("Player");
}

penjelasan :
Rencananya vcg akan mengedit objek player di unity lewat script. pertama player dideklarasikan GameObject pemain. 

Nah disini variabel pemain masih kosong, tidak punya nilai atau objek. Maka untuk memasukan objek Player ke variabel pemain digunakan Find.

GameObject.Find("Player"). "Player" adalah nama objek pemain di dalam jendela hirarki. 



Listing Program 2
GameObject musuh;

void Awake(){
       musuh = GameObject.FindGameObjectWithTag("Enemy");
}

penjelasan :
Hampir sama dengan listing program 1, bedanya disini menggunakan FindGameObjectWithTag. Artinya Find akan membaca nama Tag dari objek dan bukan nama objek yang ada di hirarki.




GETCOMPONENT
Listing Program 1
ParticleSystem particleTembak;

void Awake(){
       particleTembak = GetComponent<ParticleSystem>();
}

penjelasan :
Ada sebuah objek game yang memiliki komponen ParticleSystem, nah komponen ini ingin diakses dan diedit di dalam script, dan scriptnya di tambahkan ke objek tadi.

Maka pertama deklarasikan dulu komponennya dengan ParticleSystem particleTembak. Disini particleTembak baru nama variabel saja, belum mengakses komponen ParticleSystem.

Agar komponen dapat diakses, maka digunakan GetComponent. 



Listing Program 2
Animator anim;

void Awake(){
       anim = GetComponent<Animator>();
}

penjelasan :
Hampir sama dengan listing program 1 , hanya beda komponen yang diakses.



Listing Program 3
GameObject musuh;
Animator anim;

void Awake(){
       musuh = GameObject.Find("Enemy");
       anim = musuh.GetComponent<Animator>();
}

penjelasan :
Pada program 3 , vcg ingin mengakses objek yang tidak diberi script program. 

jadi begini, script program dikasih ke objek A, maka untuk mengakses komponen bisa dengan cara listing program 1 dan 2, nah pada script ini juga ingin mengakses komponen pada objek B, maka digunakan cara listing program 3.



EmoticonEmoticon