Monday, April 20, 2020

Raycast() dan Translate()


Kita akan mencoba membuat GameObject bisa dikendalikan dengan mouse dan keyboard dengan menggunakan fungsi Raycast() dan Translate().

Translate() adalah fungsi supaya objek begerak secara relatif terhadap posisinya sendiri bukan posisi dunia.

Raycast() merupakan fungsi untuk menghasilkan koordinat vektor 3D berdasarkan penembakan ke arah yang dituju oleh kursor mouse.

Ok Lanjut

buatlah sebuah projek unity dengan nama apa saja atau bisa juga teman- teman menggunakan scene dari projek sebelumnya

tambahkan sebuah Plane dengan memilih GameObject -> 3D Object -> Plane


Selanjutnya kita akan buat 3D Object Cube dengan cara klik GameObject -> 3D -> Cube lalu tambahkan Component Rigidbody melalui menu Component -> Physics -> Rigidbody.Atau bisa juga Add Component Pada inspector






Selanjutnya tambahkan asset gambar yang akan menjadi texture cube dengan cara klik kanan pada panel Assets lalu pilih Import New Assets kemudian pasang asset tersebut pada cube.
Kemudian atur posisi Cube sehingga berada di atas plane.

Selanjutnya buat skrip C# dan beri nama TranslateScript.cs dan isi seperti berikut.


Kemudian Taruh Scrip Tersebut ke Cube
lalu jalankan , cobalah menekan tombol spasi atau panah atas, bawah, kiri, kanan, kemudian coba tekan dan tahan tombol shift kiri dan panah kiri atau kanan kemudian lihat pergerakannya.

Kemudian Drag MainCamera Ke Cube Agar posisi kamera Mengikuti Cube



Setelah selesai dengan Translate() Kemudian kita akan mencoba fungsi Raycast() untuk menggerakkan object dengan mouse.

Buatlah sebuah plane dan beri nama Target, sesuaikan ukurannya sampai mengecil, beri warna lewat material, lalu atur posisinya berada di atas plane pertama.

Kemudian buat skrip C# dan beri nama RaycastCube.cs lalu isi seperti berikut.



Selanjutnya pasang skrip tersebut ke GameObject Cube lalu isi kolom target dengan plane kedua yang kita buat dan biarkan kolom Is Moving tidak dicentang.



Sekarang Coba Tekan Tombol Play , Klik kanan pada sembarang tempat maka plane target akan berpindah sesuai lokasi kursor mouse dan Cube akan menghadap ke arah plane target. Hal lain yang dapat diperhatikan adalah pada saat permainan dijalankan, pada tab Scene akan terlihat garis lurus berwarna merah dari Main Camera menuju titik kursor mouse/plane target. Itu adalah fungsi dari Raycast() untuk interaksi antara user dengan lingkungan game.

Berikutnya hentikan permainan lalu centang kolom Is Moving dan jalankan kembali permainan. Sekarang selain hanya menghadap ke arah plane target, Cube juga akan bergerak menuju plane target.

Selengkapnya Kunjungi https://www.budiluhur.ac.id/

Monday, April 13, 2020

Prefab & Rigidbody

buatlah sebuah projek unity dengan nama apa saja atau bisa juga teman- teman menggunakan scene dari projek sebelumnya

tambahkan sebuah Plane dengan memilih GameObject -> 3D Object -> Plane lalu beri nama Lantai1 dan Lantai2.



buat posisi dan ukuran objek seperti gambar dibawah .



Klik Lantai2 pada tab Hierarchy kemudian buat GameObject Child dengan cara klik menu GameObject -> Create Empty Child. Atur posisi GameObjectChild tadi menggunakan gizmo atau panel Transform sehingga sedikit di atas Lantai2


Ganti nama Game Object Child tadi menjadi TitikJatuh, Selanjutnya buat sebuah Sphere baru dengan cara klik menu GameObjects -> 3D Object -> Sphere dan ganti namanya menjadi MyBall.



Tambahkan sebuah gambar pada panel Assets dengan cara klik kanan pada panel Assets -> Import New Assets, lalu pilih salah satu gambar yang ada di komputer Anda.
Dari panel Assets, drag gambar tersebut lalu letakkan pada MyBall



Klik MyBall dan tambahkan RigidBody, Rigidbody adalah sebuah komponen penting yang dapat membuat GameObject seolah-olah memiliki berat dan dapat dipengaruhi oleh gaya gravitasi.



Buat sebuah Physic Material dengan cara klik Assets -> Create -> Physics Material dan beri nama Bounce.

Ganti parameter Bounciness menjadi 0.9 untuk menambahkan efek memantul.

Kita kembali ke GameObject MyBall, tambahkan Material Bounce dengan cara drag dari panel Assets ke panel Sphere Collider, parameter material. Atau klik tombol kecil di kolom Material pada komponen Sphere Collider milik MyBall


Berikutnya untuk menjadikan Prefab, drag MyBall dari tab Hierarchy ke panel Assets

Kalau sudah maka MyBall pada tab Hierarchy dapat dihapus karena yang akan digunakan adalah prefab yang ada di assets.

Prefab adalah sebuah instansiasi dari sebuah GameObject sehingga GameObject yang sudah pernah dibuat bisa digunakan kembali dengan cepat. Selain itu Prefab memungkinkan GameObject digandakan menggunakan script. Untuk menggunakan prefab cukup drag dan drop MyBall dari assets ke scene seperti berikut.



Buat script C# dan beri nama GandakanBola.cs lalu ubah script menjadi seperti berikut ini.


Selanjutnya pasang script tersebut di GameObject mana saja yang Anda suka, lalu pastikan parameter TempatJatuh dan parameter Bola diisi.

Parameter TempatJatuh diisi dengan GameObject TitikJatuh, sedangkan parameter Bola diisi dengan prefab MyBall

Jalankan Games dan klik tombol Buat Bola berkali-kali / Spasi. Perhatikan pula kondisi tab Hierarchy dengan seksama, semua GameObject yang terbentuk dan terterah di sana akan menghilang secara otomatis setelah 5 detik.

Sekian Terimakasih

Kunjungi https://www.budiluhur.ac.id/

Monday, April 6, 2020

GUI SKIN

Seperti biasa buatlah sebuah projek unity dengan nama apa saja atau bisa juga teman- teman menggunakan scene dari projek sebelumnya .

Tambahkan sebuah GUISkin dengan cara klik kanan pada menu Assets -> Create -> GUISkin dan silakan beri nama “BelajarGUISkin” .



Kemudian Silakan download beberapa assets yang sudah saya sediakan Klik

Buat Folder berinama image

Kemudian Impor semua assets yang telah kalian download dengan cara klik kanan -> Import New Asset atau bisa juga dengan drag And Drop

Berikutnya kita kembali ke Skin “BelajarGUISkin” barusan telah dibuat.

GUI Skin memiliki 2 jenis font, Ada font global yang letaknya di panel paling atas, dan ada font lokal yang berada di setiap parameter GUI.

Ubah font khusus button dengan drag file font pada Assets ke Button -> Overflow. Atau klik tombol kecil di sebelaha kanan kolom Font lalu browse, cari Font pada Asset, Lalu ubah Font Size menjadi 24.


Berikutnya ganti background pada Button.
Ganti Background pada Toggle:
1.Button -> Normal
2.Button -> Hover
3.Button -> Active


Contoh Pencarian Gambar


Ganti Background pada Toggle:
1.Toggle -> Normal

2.Toggle -> Hover

3.Toggle -> Active

5.Toggle -> On Hover

4.Toggle -> On Normal

5. Toogle -> On Hover

6.Toggle -> On Active



jika sudah selesai lalu buat folder scrip dan buat script C# beri nama "MenuSkin" Assets->Creat->C#
Kemudian Ketik Scrip Berikut



Drag & Drop script MenuSkin.cs pada GameObject (misalnya MainCamera), lalu pasang parameter mySkin dengan BelajarGUISkin





Jika sudah, jalankan game dan kalau tidak ada error akan tampil seperti di bawah ini.


Kunjungi https://www.budiluhur.ac.id/