KATA PENGANTAR
DAFTAR ISI
1. Pengenalan Unity 3D
Unity 3D adalah sebuah software yang digunakan untuk
beberapa macam hal, seperti untuk membuat game 3D maupun object
animasi. Unity 3D memiliki dua jenis type, ada yang menggunakan
licensi freeware dan ada juga yang berbayar, jadi para pemabaca yan
ingin menggunakan software tersebut tidak usah khawatir, karena
dapat menggunakan software yang freeware atau tidak berabayar,
namun fitur yang disediakan jelas berbeda terutama komponen
standart asset
Script kita bisa membuat berbagai macam perintah pada object yang
diinginkan, dan juga dengan script kita bisa berada didunia
pemprograman yang unik dan menarik, para 3D Game Maker pasti
lebih menyukai dengan bahasa pemprograman dari pada hanya
melakukan input object ke layar, maka dari itu untuk lebih menarik
dan
menantang
penulis
memilih
menggunakan
script
sebagai
controllernya
Karena dirasa lebih sulit dari hanya sekedar melakukan input script
kedalam object.
Untuk mengenal lebih jauh tentang Unity 3D maka akan
dijelaskan bagian per bagian yang ada di Unity 3D, berikut adalah
tampilan layar kerja dari Unity 3D.
Untuk lebih jelasnya akan dibahas mendetail mengenai fiturfitur dan apa saja yang ada pada Unity 3D, yang mengenai layar
kerja, layar kamera dan tempat untuk melakukan pembuatan script
yang akan digunakan untuk controller object.
5
1. Formating Tools
Menu File
-Untuk membuat File Unity baru
-Untuk membuka File Unity
-Untuk menyimpan File Unity
-Untuk menyimpan File Unity dengan nama
-Untuk membuat Project baru
-Untuk membuka Project
-Untuk menyimpan Project
-Untuk menyatukan Scene yang ada
-Untuk menyatukan Scene dan compile
-Untuk keluar dari Program
Menu Edit
-Untuk kembali ke keadaan sebelumnya
-Untuk kembali ke keadaan setelahnya
-Untuk memotong object
-Untuk meng-Copy object
-Untuk mem-paste object
-Untuk melakukan duplikat object
-Untuk menghilangkan object
-Untuk memilih Frame
-Untuk menemukan object
-Untuk memilih semua object
-Untuk men-setting layar
-Untuk menjalankan object
- Untuk men-stop permainan
Menu Asset
-Untuk mengimport Asset ulang
-Untuk membuat Script, Prefab, dll
Menu Component
-Untuk membuat Mesh
-Untuk membuat Partile object
-Untuk menambahkan komponen pada object
-Untuk menambahkan Audio
-Untuk melakukan Rendering
-Untuk melakukan input Script tanpa harus membuat
-Untuk input componen tanpa harus membuat
-Untuk input camera Control
Menu Terrain
-Untuk membuat Background Tanah
Menu Window
-
3 4
2 3
2
1. Layar Editor
2. Untuk menampilkan pesan error saat Running
10
1. Jendela Console akan aktif jika terdapat suatu error saat Running
program, maka dari itu dapat dilihat dengan klik pada error report
terkait agar didapatkan definisi error pada bagian definisi
2. Error Definition, yaitu untuk menjelaskan bagaimana error itu
terjadi dan apa yang harus dilakukan oleh user untuk merepair-nya
2. Proses Instalasi Software
Pada proses instalasi di sini akan diterangkan bagaimana cara
melakukan instalasi software Unity 3D pada komputer/laptop, hal
yang perlu diperhatikan oleh pengguna yaitu:
RAM minimal 2 Gb
VGA minimal 2 Gb
Processor minimal pentium 4 (untuk intel)
Menggunakan Microsoft windows XP , 7 atau Linux
Hard Disk Space minimal 1,3 Gb
11
12
itu
merupakan
Fitur
tambahan
yang
akan
diinstall
13
------------000000-----------
14
adalah
suatu bahasa
yang
digunakan
untuk
akan
menyebabkan
error,
maka
dari
itu
harus
sangat
Java Script
15
16
Script
memang
berbeda,
Java
Script
digunakan
untuk
17
variasi
yang
sungguh
rumit,
jadi
pembaca
dapat
18
NO
SCRIPT
DEFINISI
function Update()
function OnCollisionEnter()
function OnTriggerEnter()
function Start()
function OnGUI()
Itulah
beberapa
dan
perintah-
fungsi
yang
biasa
digunakan
yang
didalam
DEFINISI
Untuk menciptakan sebuah object yang
akan dieksekusi pada titik tertentu
Destroy()
Untuk
menghapus
didefinisikan
if()
Untuk melakukan
percabangan
else if()
Find()
Untuk mencari
dieksekusi
Transform
Rigidbody
Untuk memberikan
pada object
Var
Untuk mendefinisikan
yang akan dieksekusi
static var
10
switch()
object
yang
perumpaman
object
yang
tarikan
atau
akan
gravitasi
sebuah
object
20
11
Case
12
guiTexture
13
Break
14
Int
object
15
String
object
16
AddForce
17
LoadLevel()
18
GUI
19
Rotation
20
Position
21
Forward
22
DeltaTime
23
Quaternion
24
LookRotation
25
Identity
26
Vector3
27
Application
Untuk
memanggil
suatu
perintah
eksekusi seperti Quit, LoadLevel() dll.
21
28
Button
29
Box
30
Rect
31
...........
Untuk memberikan
menjadi output hasil
32
{}
33
; (titik koma)
34
: (titik dua)
35
//................
Untuk
memasukkan
sebeanyak satu kalimat
36
/*...............*/
37
InvokeRepeating
Untuk melakukan
function tertentu
38
Function....(........)
39
-=
+=
40
<
>
pernyataan
yang
pernyataan
perulangan
pada
buatan
Melakukan pengurarang
Melakukan penambahan
Kurang dari
Lebih dari
41
Texture2D
Untuk
memberikan
bertexture 2D
object
yang
42
Name
43
GameObject
44
Collision
22
45
Float
46
GetButtonDown()
47
OnMouseDown()
48
Debug.Log()
49
Target.position
50
Enabled
51
Translate
Mengaktifkan
suatu
perintah
jika
bernilai true, jika bernilai false maka
menonaktifkan perintah
Untuk mendefinisikan suatu posisi
target
52
Input.GetAxis
23
24
Object Bola
25
Object Sphere
menu transform
Object Camera
Object Sphere
Layar Hasil
26
Layar hasil
java
script,
sebagaimana
yang
telah
diterangkan
28
29
30
31
yaitu
jika
ingin
dipercepat
maka
lakukanlah
32
Tombol Running
Klik satu kali pada button tersebut maka akan terlihat layar
hasil atau layar game seperti pada gambar berikut.
33
34
componentyang
ada
di
Folder
Character
Controller
tersebut.
Controller
kemudian
pilihlah
prefab
First
Person
35
36
Tombol Running
Klik satu kali pada button tersebut maka akan terlihat layar
hasil atau layar game seperti pada gambar berikut.
Running Report
37
Setelah
itu
membuat
Prefab
untuk
menampung
object
Setelah
membuat
object
Prefab
dengan
nama
Bullet,
40
41
42
kemudian
yaitu
membuat
Script
perintah
untuk
44
Pada
gambar
tersebut
penulis
telah
menamakan
object
45
46
Object Cube
Object Cilinder
Object Plane
47
48
49
50
51
Empty Object
Berikan
nama
empty
object
tersebut
dengan
nama
52
53
54
object
peluru
musuh.
Berikut
adalah
gambar
ilustrasinya
55
Check Box
56
58
59
Setelah
semuanya
jadi,
masukkan
script
untuk
60
object peluru
pada
Character).
Pertama yaitu membuat script dengan nama enemy pada
jendela script, berikut adaah scriptnya
var explode: Transform; //mendefinisikan dan input object explode
function OnCollisionEnter (theCollision : Collision) //fungsi saat bertubrukan
{
Instantiate(explode, transform.position, transform.rotation);
Destroy (gameObject,3); //menghilangkan explode saat waktu tiga detik
if(theCollision.gameObject.name == "Cube") //jika bertubrukan dengan object cube
{
Destroy(gameObject.Find("enemy1")); // menghilangkan object enemy1
}
else if(theCollision.gameObject.name == "Cube2")
{
Destroy(gameObject.Find("enemy2"));
}
}
dapat dirubah sesuai keadaan, jika ada tiga object maka definisikan
tiga object, jika ada satu object maka definisikan hanya satu object,
tergantung dari pembuatan objectnya. Yang arus diperhatikan yaitu
nama yang diinputkan / dipanggil, harus sama dengan nama object
yang akan dieksekusi, karena Java Script bersifat Case Sensitif jadi
penulisan huruf besar dan kecilnya harus diperhatikan.
Setelah membuat Script, selanjutnya memasukkan script
tersebut kedalam jendela inspector object peluru (peluru object
Character) / peluru pelaku. Seperti yang telah dibuat sebelumnya
yaitu object bullet yang berada pada sub player
Object Bullet
Click satu kali pada object Bullet lalu masukkan script enemy
yang telah dibuat kedalam jenela inspectornya. Seperti pada gambar
berikut.
62
63
64
bab
ini
akan
dibahas
mengenai
pembuatan
66
67
68
69
Pilih
dan
click
tombol
Edit
Textures
sehingga
akan
70
71
72
disini
hanyalah
untuk
memperjelas
keadaan
dan
73
74
75
sebagai
pendukung
namun
keberadaannya
dapat
76
1
2
3
Object Pohon
Keterangan
1. Untuk menginputkan banyak / sedikit object Pohon dalam satu kali
drag and drop
2. Untuk menambah atau mengurangi tinggi pohon
3. Untuk menambah atau mengurangi lebar pohon
77
memerlukan
menggunakan
beberapa
Script
langkah
sehingga
dapat
dasar,
dan
dengan
tidak
mudah
pula
untuk
membuatnya.
Perlu diketahui bahwa setiap game 3D memiliki komponen
utama sebagai object pendukung
Pilihlah
menu
edit
pada
Formating
Tools,
kemudian click satu kali pada pilihan Render Setting, seperti pada
gambar berikut.
78
79
80
81
pembatasan,
ada
yang
dengan
membunuh
atau
Ketiga
parameter dari timer, jadi dari tiga icon, menjadi dua icon, setelah
itu mencadi satu icon.
Untuk prmbuatan timer memang harus dibutuhkan sebuah
benda yang digunakan sebagai object GUI, untuk melakukan timer,
jadi object akan berada sebagai GUI, artinya object tersebut
82
berada di layar, dan tidak didalam area permainan. GUI bisa berupa
object atau tulisan yang mana object atau tulisan tersebut tidak
masuk didalam area game, namun berada di layar, posisinya pun tidak
berubah, dan tetap berada di layar game.
Untuk membuat timer pada sebuah game, yang harus
dilakukan yaitu membuat object
timer terlebih
dahulu, bisa
83
84
85
86
87
Setelah
semuanya
sudah
dilakukan,
untuk
proses
88
texture akan berubah menjadi dua icon (health2), jika angka sudah
mencapai 10 maka aka berubah menjadi satu icon (health1).
Berikut adalah scriptnya.
InvokeRepeating("Gothit",1,1);
function Gothit() {
Healthcount -=5; //memasukkan kecepatan countdown
}
89
90
setiap
level
berikutnya
menjadi
lebih
sulit
dari
dari
switcing
level
tidaklah
sulit,
hanya
91
92
Urutan Scene
Scene Editor
94
95
96
98
99
100
Track Record
Gerakkan object sesuai keinginan, jika object sudah cukup
dalam pergerakannya, artinya sudah menempati pergerakan terakhir,
maka untuk melihat hasil gerakan object tersebut dapat dilakukan
one click pada pada tombol Run berikut. Namun sebelumnya Tombol
record haruslah dinonaktifkan terlebih dahulu.
Tombol Run
Tombol Record
101
Tipe Animasi
Single Loop
Continue Loop
102
103
104
Particle System
Suasana di rawa
105
untuk
proses
pengembangan
lebih
lanjut
user
bisa
106
dieksekusi yaitu Scene menu item dan scene Level1 pada jendela
Build Settings, seperti pada gambar berikut. File -> Build Settings
langkah-langkah
tersebut
selesai,
maka
lakukanlah Running untuk melihat hasil dari menu item statis yang
telah dibuat itu. berikut adalah gambaran tampilan dari menu item
statis yang telah jadi.
Object cube
108
109
110
111
112
113
114
using UnityEngine;
using System.Collections;
[ExecuteInEditMode]
public class ObjectMenu : MonoBehaviour
{
public bool isQuit = false;
void OnMouseEnter() //mengaktifkan saat mouse on selection
{
renderer.material.color = Color.red; //mengubah warna 3D text menjadi
merah saat dipilih oleh mouse
}
void OnMouseExit() //mengaktifkan saat mouse off selection
{
renderer.material.color = Color.white; //mengubah warna 3D text menjadi
merah saat dipilih oleh mouse
}
void OnMouseDown() //mengaktifka tombol keyboard down
{
if(isQuit) //jika check box is quit terpilih
{
Application.Quit(); //keluar dari program
}
else
{
Application.LoadLevel(1); //masuk ke Scene dengan nama level1
}
}
}
115
mengaktifkan
menandakan
kalau
check
3D
text
box
Is
dengan
Quit
nama
yang
mana
exit
untuk
tersebut
116
117
tantangan
tersendiri
bagi
pemain
untuk
memacu
health1
health2
health1
Jika sudah diimport ke dalam unity 3d maka akan nampak
icon tersebut pada jendela project seperti pada gambar berikut.
119
120
HealthControl.js
var health1 : Texture2D; //melakukan penginputan object dan pendeklarasian
var health2 : Texture2D;
var health3 : Texture2D;
static var LIVES = 3; // memberikan nilai pada sting LIVES dengan jenis Static Var
function Update ()
{
switch(LIVES) //untuk melakukan pergantian perulangan
{
case 3:// perumpamaan pertama
guiTexture.texture = health3;//memberikan object health3
break;//mengembalikan perumpamaan pada kendali lain
121
case 2:
guiTexture.texture = health2;
break;
case 1:
guiTexture.texture = health1;
break;
case 0:
untuk memberikan script game over
break;
}
}
122
healthbar.js
static var heathtexture ;// mendefinisikan heathtexture sebagai static var
function OnCollisionEnter (theCollision : Collision) { //fungsi untuk melakukan perintah
saat object berbenturan atau bersentuhan
var heathtexture = gameObject.Find("health3"); //mencari object heath3
if(theCollision.gameObject.name == "player"){ //melakukan perintah saat berbenturan
dengan pelaku yang mana pelaku / character utama bernama player
HealthControl.LIVES -= 1;//melakukan pergantian perulangan pada LIVES di script
HealthControl.js
}
}
untuk
mendeteksi
benturan
yang
dilakukan
oleh
125
-----------------Selamat Mencoba----------------
126
ABOUT AUTHOR
Yanuar
Mukhammad
adalah
seorang
127
DAFTAR PUSTAKA
www.unity3dstudent.com
www.youtube.com
www.unityanswer.com
128