Kamis, 30 April 2020

Tutorial Dasar Array Class Dan Loping Unity 3D

Setelah kita bisa membuat project sederhana. Dimana di dalamnya secara tidak langsung kita sudah mengenal tipe data standar, ada baiknya kita juga belajar mengenala Array, Class, dan Looping.
Bahkan Unity juga mampu mengenali tipe data lainnya atau tipe data buatan seperti struct. Materi kali ini tidak akan membahas struct, melainkan tipe class yang bisa mewakili tipe data yang lain.
Istilah looping digunakan untuk perintah pengulangan, pada pembahasan materi kali ini bukan
membahas fungsi for atau while yang biasa digunakan tetapi sebuah pengulangan perintah yang dilakukan berdasarkan interval tertentu menggunakan fungsi InvokeRepeating().
Mari kita belajar mencoba “PASTI BISA”...

Baca Juga : Universitas Budi Luhur

1. Buat Project Baru
2. Buat Scene Baru
Klik File>New Scene

Dan Simpan Scene
Klik File > Save Scene, atau File > Save Scene as…
Buat 3 buah scene dan beri nama masing-masing ArrayDasar, ArrayClass, dan Looping.
A. Klik pada Scene ArrayDasar
Setelah kita berada pada scene ArrayDasa, Langkah selanjutnya kita buat Folder Scripts untuk menyimpan File-file Script. Klik kanan pada Assets>Create>Folder.

Dan beri nama Scripts.
Setelah itu Buat script C# kemudian beri nama BelajarArray.
Klik kanan pada Folder Scripts>Create>C# Script.

Klik 2x pada File Script BelajarArray
Dan edit seperti File berikut:
                                                                                                                                                                
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BelajarArray : MonoBehaviour {

public int[] arrayAngka;
public string[] arrayTeks;

string teks1, teks2, teks3;


// Use this for initialization
void Start () {

teks1 = " ";
for( int a=0; a<arrayAngka.Length; a++) {
teks1 = teks1 + arrayAngka[a].ToString()+' ';
}

teks2 = " ";
for( int a=0; a<arrayTeks.Length; a++) {
teks2 = teks2 + arrayTeks[a].ToString()+' ';
}

}

void OnGUI() {

GUILayout.BeginArea(new Rect(10,15,400,200));
GUILayout.Label("Array Integer:"+ teks1);
GUILayout.Label("Array String:"+ teks2);
GUILayout.EndArea();
}

}
                                                                                                                                                                


Drag and Drop script BelajarArray.cs ke GameObject MainCamera di jendela Hierarchy.

Jika tidak ada kesalahan, maka buka Inspector MainCamera,
lalu isi Size pada ArrayAngka, misalnya “3” lalu isi element 0, 1, dan 2 dengan bilangan bulat.
Lalu isi Size pada ArrayTeks, misalnya “3” lalu isi element 0, 1, dan 2 dengan teks.

Baca Juga : Universitas Budi Luhur

Setelah itu Jalankan Game dan perhatikan hasilnya. 

B. Klik pada Scene ArrayClass Langkah-langkahnya Sama seperti perintah pada Scene ArrayDasar. Hanya berbeda Penamaan dan isi Script.

Baca Juga : Universitas Budi Luhur
                                                                                                                                                                
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ArrayClass : MonoBehaviour {

[System.Serializable]
public class Kelas {
public int ID;
public string isi;
}

string teks;
public Kelas[] arrayKelas;

// Use this for initialization
void Start () {

teks = " ";
for( int c=0; c<arrayKelas.Length; c++ ) {
teks = teks + arrayKelas[c].ID.ToString() + " : "
+ arrayKelas[c].isi + " ";
}
}

void OnGUI() {

GUILayout.BeginArea(new Rect(10,15,400,200));
GUILayout.Label("Array Object: "+ teks);
GUILayout.EndArea();
}

}
                                                                                                                                                                
Dan perhatikan Hasilnya : ...
C. Klik pada Scene Looping Langkah-langkahnya pun sama. Hanya berbeda Penamaan dan isi Script
                                                                                                                                                                
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class FungsiLooping : MonoBehaviour {

int no1, no2, no3, no4, no5, hitungMundur;

// Use this for initialization
void Start () {

no1 = 0;
no2 = 0;
no3 = 0;
no4 = 0;
no5 = 0;
hitungMundur = 3;
InvokeRepeating("HitungMundur", 1, 1);
}

// Update is called once per frame
void Update () {

if( hitungMundur == 0) {
no1++;
}
}

void FixedUpdate () {

if( hitungMundur == 0) {
no2++;
}
}

void Looping1 () {
no3++;
}

void Looping2 () {
no4++;
}

void NoLooping () {
no5++;
}

void HitungMundur () {
hitungMundur--;
if (hitungMundur == 0) {
InvokeRepeating("Looping1",1,1);
InvokeRepeating("Looping2",5,0.5f);
Invoke("NoLooping",10);
CancelInvoke("HitungMundur");
}
}

void OnGUI () {

GUILayout.BeginArea(new Rect(10,15,400,200));

if ( hitungMundur == 0 ) {
GUILayout.Label("Update Increment: "+ no1.ToString());
GUILayout.Label("FixUpdate Increment: "+ no2.ToString());
GUILayout.Label("Start At 1 Sec (Interval 1): "+ no3.ToString());
GUILayout.Label("Start At 5 Sec (Interval 0.5): "+ no4.ToString());
GUILayout.Label("Start At 10 Sec (No Looping): "+ no5.ToString());

} else {

GUILayout.Label("Hitung Mundur: "+ hitungMundur.ToString());
}

GUILayout.EndArea();
}

}
                                                                                                                                                                
Dan perhatikan Hasilnya Saat Hitung Mundur : dari 3, 2, 1 dan Seterusnya : ...
Baca Juga : Universitas Budi Luhur
Program dijalankan di detik ke 3

Program dijalankan di detik ke 2

Program dijalankan di detik ke 1

Program dijalankan di detik ke 10

Selesai! Apa selanjutnya?


Baca Juga : Universitas Budi Luhur



Tidak ada komentar:

Posting Komentar