Rabu, 18 Januari 2017

Tulisan Pertemuan 4 Desain Pemodelan Grafis untuk Game

Penjelasan Mengenai Virtual Reality
  
Virtual reality adalah sebuah teknologi yang membuat pengguna atau user dapat berinteraksi dengan lingkungan yang ada dalam dunia maya yang disimulasikan oleh komputer, sehingga pengguna merasa berada di dalam lingkungan tersebut. Di dalam bahasa Indonesia virtual reality dikenal dengan istilah realitas maya.
 
Cara Pembuatan Virtual Reality

Membuat Game Virtual Reality untuk Android Menggunakan Google Cardboard SDK For Unity

Kali ini saya ingin membahas topik cara membuat game virtual reality untuk Android dengan menggunakan Google Cardboard SDK For Unity. Dengan memanfaatkan game engine Unity dan juga SDK yang sudah disediakan oleh Google, kita dapat membuat game virtual reality memanfaatkan Google Cardboard.
Dalam tutorial kali ini, fokus dari artikel ini adalah cara untuk mengimplementasikan Google Cardboard SDK ke dalam Unity Engine dan juga mengeksplorasi sample game project yang disediakan oleh Google untuk memberikan kita gambaran mengenai virtual reality menggunakan Unity. Saya tidak akan membahas dalam tentang Unity atau cara membuat game. Jika ingin belajar mengenai pembuatan game menggunakan Unity, Anda bisa mengikuti kelas Dicoding Academy secara cuma-cuma di tautan berikut ini.

Persiapan

Sebelum memulai tutorial ini, ada beberapa hal yang perlu Anda unduh terlebih dahulu:
Sedikit informasi saja, jika Anda sudah punya Unity Engine di komputer Anda, pastikan Anda menggunakan Unity versi 5. Jika Anda menggunakan Unity versi 4, pastikan Unity yang Anda gunakan adalah yang versi Pro.
Sedangkan untuk mencoba game virtual reality yang kita buat, Anda dapat menggunakan smartphone Android apapun dengan bantuan Google Cardboard. Adapun untuk mencicipi pengalaman virtual reality yang optimal, Anda bisa menggunakan smartphone yang memang dirancang khusus untuk virtual reality, salah satunya seperti Lenovo K4 Note.

Integrasi Unity dengan Google Cardboard SDK

Selanjutnya saya akan menjelaskan tahapan integrasi antara Unity dengan Google Cardboard SDK. Hal utama yang perlu diintegrasi adalah Stereoscopic Camera. Stereoscopic Camera merupakan sistem pada kamera di dalam game kita yang dibagi menjadi kamera kanan dan kamera kiri agar dapat terbaca oleh Cardboard dengan baik.
Tahapan pertama adalah setup package Google Cardboard SDK. Yang perlu kita lakukan adalah sebagai berikut:
  1. Buka project baru Unity. Pastikan kita memilih 3D sebelum membuat project baru. vr_1
  2. Import package Google Cardboard SDK For Unity. Klik Assets -> Import Package -> Custom Package, lalu pilih file CardboardSDKForUnity.unitypackagevr_2
Tahapan kedua adalah setup kamera di dalam game kita menjadi Stereoscopic Camera. Ada beberapa cara untuk melakukan hal ini. Yang paling mudah adalah dengan menggunakan prefab yang sudah disediakan di dalam Google Cardboard SDK. Caranya adalah sebagai berikut:
  1. Hapus Main Camera yang ada di dalam hierarchy dengan cara klik kanan "Main Camera" -> Deletevr_3
  2. Masukan prefab yang bernama CardboardMain ke dalam herarchy dengan cara klik di tab project Assets -> Cardboard -> Prefabs, lalu drag file CardboardMain ke dalam hierarchy.vr_4 vr_5
  3. Untuk memastikan kamera di dalam game kita sudah Stereoscopic Camera, kita bisa menekan tombol Play dan melihat di dalam tab Game layar kita sudah terbagi dua.vr_6_update
Setelah memasukan prefab CardboardMain ke dalam tab hierarchy, secara umum fungsi deteksi gyroscope sudah terpasang di dalam game kita sehingga game yang kita buat sudah compatible dengan Google Cardboard. Selanjutnya kita tinggal menambahkan komponen di dalam scene untuk membuat game yang kita buat lebih menarik.

Implementasi Input Pada Google Cardboard

Dengan tahapan yang sudah kita lakukan, game kita masih terasa kurang lengkap. Pemain yang menggunakan aplikasi yang kita kembangkan sejauh ini hanya bisa melihat objek di dalam dunia game saja. Mungkin jika kita ingin membuat game yang sifatnya eksplorasi saja, kita hanya perlu menambahkan fungsi maju sesuai dengan arah kamera memandang.
Untuk menambah pengalaman bermain yang lebih seru, kita perlu menambahkan interaktivitas di dalam game seperti input. Produk virtual reality seperti Oculus dan HTC Vive memiliki perangkat tambahan yang bisa digunakan sebagai input. Namun dalam Google Cardboard, kita tidak bisa menggunakan alat tambahan. Ada dua metode input yang bisa kita gunakan. Yang pertama adalah dengan menyentuh layar dan yang kedua dengan menggunakan magnet.
cardboard
Selanjutnya kita akan membahas bagaimana memberikan input dalam mode virtual reality dimana kita menggunakan Stereoscopic Camera. Trigger yang diberikan oleh pengguna adalah dengan cara menekan layar atau dengan menekan magnet yang ada di Google Cardboard yang mereka gunakan.
  1. Buat UI Canvas dengan cara klik kanan di tab hiearchy, klik UI -> Button. Setelah itu maka akan muncul Game Object baru berupa Canvas dan EventSystemvr_8 vr_9
  2. Klik Canvas lalu pada tab Inspector, ganti Render Mode menjadi World Space dan isi Event Camera dengan Main Camera di dalam CardboardMain. Kemudian posisikan Button di dalam Scene sehingga berada dalam jarak pandang Main Camera kita.vr_10 vr_11
  3. Yang ingin kita lakukan adalah jika mata pemain mengarah ke suatu objek, maka objek tersebut akan menjadi aktif berinteraksi. Dimana jika pemain memberi input, objek tersebut akan memberikan aksi. Caranya adalah kita berikan script GazeInputModule ke dalam EventSystem.
Di tab Project, klik Assets -> Cardboard -> Script, lalu drag GazeInputModule ke dalam GameObject EventSystem di tab Hierarchy. Pastikan komponen GazeInputModule berada paling atas agar menjadi prioritas ketika program dijalankan.
vr_12
Dengan mengimplementasikan GazeInputModule, maka ketika kamera mengarah ke objek button lalu kita klik mouse kita sebagai representasi input dari user, objek button akan mendapatkan trigger dan bisa memberikan aksi.
Jika Anda ingin berinteraksi dengan objek 3D di dalam scene, Anda bisa menggunakan komponen PhysicsRaycaster ke dalam Event Camera. Kita juga harus menyiapkan script respon dari interaksi tersebut, bisa menggunakan EventTrigger. Dan yang tidak kalah penting, objek 3D tersebut harus kita beri collider.

Eksplorasi Sample Project Google Cardboard

Dengan mengintegrasikan Google Cardboard SDK kita bisa mengimplementasikan Stereoscopic Camera dan 3D UI ke dalam game virtual reality yang ingin kita kembangkan. Dua modal tersebut sudah cukup untuk selanjutnya kita berkreasi dan berinovasi mengembangkan game yang menarik.
Untuk referensi, kita bisa menggunakan sample project milik Google. Yang pertama adalah kita perlu import package yang berisi sample project yang sudah kita unduh sebelumnya.
  1. Cara untuk import package adalah klik Assets -> Import Package -> Custom Package, lalu pilih file CardboardDemoForUnity.unitypackage. Jika prosesnya telah selesai, kita akan melihat ada folder baru di dalam tab Project.vr_13
  2. Selanjutnya kita hanya perlu membuka Scene demo yang diberikan dengan cara di Tab Project klik Assets -> Cardboard -> DemoScene -> double klik file DemoScene. Maka kita akan dialihkan menuju scene baru yang berisi demo project dari Cardboard.vr_14
  3. Kita bisa mencoba memainkan sample project dari Cardboard ini dengan cara menekan alt + gerakan mouse untuk menggerakan kamera seolah-olah kepala kita bergerak. Lalu jika mata kita melihat objek berupa kubus, kita bisa klik kiri pada mouse kita yang merepresentasikan trigger yang diberikan oleh pemain menggunakan Cardboard mereka. Jika objek di klik, maka akan berpindah posisi dan tugas kita adalah menemukan posisi baru dari kubus tersebut dan memberikan input ketika melihat objek tersebut di layar.vr_15
  4. Di dalam game ini, Anda bisa berinteraksi dengan sebuah objek 3D berupa kubus. Anda bisa perhatikan di dalam tab Hierarchy -> CardboardMain -> Head -> Main Camera, pada tab Inspector terdapat komponen PhysicsRaycaster. Komponen tersebut yang memungkinkan pemain berinteraksi tidak hanya dengan UI Canvas, tapi juga dengan objek di dalam game.vr_16
  5. Untuk mempermudah interaksi dengan user, dalam sample project ini terdapat best practice yang sangat baik yakni visual cue terhadap objek yang masuk dalam jarak pandang. Kita diberikan lingkaran yang menunjukan titik fokus pandangan kita. Ketika titik fokus tersebut masuk ke dalam objek, maka objek yang berada dalam jarak pandang yang terbaca oleh script GazeInputModule memberikan feedback.
Untuk objek lingkaran pada kamera, ketika bertemu dengan kubus maka akan berubah ukurannya.
public void OnGazeStart(Camera camera, GameObject targetObject, Vector3 intersectionPosition)
{
      SetGazeTarget(intersectionPosition);
}

/// Called every frame the user is still looking at a valid GameObject. This
/// can be a 3D or UI element.
///
/// The camera is the event camera, the target is the object the user is
/// looking at, and the intersectionPosition is the intersection point of the
/// ray sent from the camera on the object.
public void OnGazeStay(Camera camera, GameObject targetObject, Vector3 intersectionPosition)
{
      SetGazeTarget(intersectionPosition);
}

/// Called when the user's look no longer intersects an object previously
/// intersected with a ray projected from the camera.
/// This is also called just before **OnGazeDisabled** and may have have any of
/// the values set as **null**.
///
/// The camera is the event camera and the target is the object the user
/// previously looked at.
public void OnGazeExit(Camera camera, GameObject targetObject)
{
      reticleDistanceInMeters = kReticleDistanceMax;
      reticleInnerAngle = kReticleMinInnerAngle;
      reticleOuterAngle = kReticleMinOuterAngle;
}
Untuk objek kubus, ketika bertemu dengan fokus mata kita maka akan berubah warnanya.
public void SetGazedAt(bool gazedAt)
{
      GetComponent<Renderer>().material.color = gazedAt ? Color.green : Color.red;
}

Export Installer APK

Jika Anda telah selesai membuat game yang Anda inginkan, tahap selanjutnya adalah membuat file installer dalam bentuk APK. File ini nantinya dapat Anda gunakan untuk melakukan instalasi di perangkat berbasis Android atau dapat dimasukan ke Google Play Store.
  1. Unduh file Google SDK di tautan yang sudah diberikan di atas. Sesuaikan dengan sistem operasi yang Anda gunakan. Screen Shot 2016-03-12 at 2.40.33 PM
  2. Di dalam Unit, klik File -> Build Setting Screen Shot 2016-03-12 at 2.33.03 PM
  3. Setelah itu akan muncul halaman baru. Kita klik logo Android lalu klik Switch Platform. Screen Shot 2016-03-12 at 2.33.13 PM
  4. Lalu kita klik Player Settings lalu lihat halaman tab Inspector di sisi kanan. Pastikan Anda mengganti Bundle Identifier dengan nama buatan Anda sendiri agar program berhasil di-export. Anda juga bisa mengatur orientasi layar agar dalam posisi Landscape Left melalui tab Inspector dari Player Setting ini. Screen Shot 2016-03-12 at 2.38.47 PM Screen Shot 2016-03-12 at 2.38.25 PM
  5. Setelah itu Anda bisa memasukan Scene ke dalam tab Scenes In Build dalam menu Build Setting. Scene tersebut yang akan dibuat menjadi APK. Jika Anda membuat lebih dari satu, pastikan semua Scene sudah Anda masukan dengan cara drag and drop ke kotak Scenes In Build. Screen Shot 2016-03-12 at 2.44.57 PM
  6. Jika semua setting telah selesai, Anda bisa klik tombol Build. Anda diminta memasukan nama APK Anda. Lalu di tengah proses build, Unity akan meminta Google SDK. Anda bisa mengarahkan Windows Explorer atau Finder ke destinasi dimana Google SDK yang sudah Anda download berada. Anda juga akan diminta untuk meng-update SDK tersebut di awal. Jika proses ini telah selesai, maka Anda akan mendaptkan file dalam bentuk APK yang siap digunakan. Screen Shot 2016-03-12 at 2.37.40 PM
Untuk tutorial lebih detil tentang cara membuat file APK di Unity, Anda bisa mengikuti kelas Dicoding Academy tentang Pengembangan Game Menggunakan Unity.

Penutup

Dengan tutorial ini, Anda sudah dapat mengimplementasikan fungsi utama dari Cardboard yakni membuat Stereoscopic Camera dan berinteraksi dengan objek di dalam game. Contoh proyek yang diberikan oleh Cardboard juga sudah lebih dari cukup sebagai modal untuk mengembangkan kreativitas Anda dalam membuat game yang menarik.
Yang perlu diperhatikan adalah selalu track head di dalam permainan yang kita kembangkan, lalu juga kita perlu menjaga agar FPS stabil di angka 60 mengingat layar handphone akan selalu berada di depan mata pemain, dan hindari akselerasi karena dapat memberikan efek negatif pada penggunaan Cardboard. Jangan lupa untuk menjaga interaktivitas di dalam permainan agar game menjadi lebih menarik dan memastikan visual cue dapat dimengerti oleh user dengan baik.

  Software untuk membuat Virtual Reality

 

Cardboard

Aplikasi virtual reality pertama untuk ponsel pintar Android yang patut dicoba adalah Cardboard. Aplikasi ini mampu menempatkan virtual reality (VR) di dalam ponsel dengan cara yang mudah. Selain membantu memulai pengalaman VR para pengguna, aplikasi ini juga bisa membantu pengguna untuk menemukan aplikasi baru serta menyiapkan penampil.
Cardboard VR
Aplikasi ini sendiri memiliki program demo yang bisa dinikmati para pengguna selain program VR lain yang bisa ditambahkan. Program demo yang tersedia pada aplikasi ini berupa kumpulan-kumpulan VR yang bisa dinikmati berupa:
  • VR Bumi yang memungkinkan pengguna untuk mengunjungi berbagai tempat di seluruh permukaan bumi
  • VR Panduan Tur yang memungkinkan pengguna menikmati langsung pemandangan Versailles dengan ditemani oleh pemandu lokal
  • VR Pameran dimana para pengguna bisa melihat dan mempelajari artefak budaya dari berbagai sudut pandang
  • VR Foto 360° yang memungkinkan pengguna untuk melihat foto-foto yang telah mereka ambil dari sudut 360°
  • VR Video yang memungkinkan pengguna untuk melihat video mereka dalam layar berukuran super besar
Aplikasi ini menawarkan lebih dari sekedar kesempatan bagi para pengguna untuk mencicipi dunia VR, dan hal inilah yang membuatnya menarik untuk dicoba, terlebih lagi aplikasi ini bisa didapatkan secara gratis. Aplikasi ini merupakan aplikasi pertama yang disarankan oleh Google dan untuk bisa mempergunakannya diperlukan alat penampil Cardboard.

Vrse

Vrse merupakan salah satu aplikasi virtual reality yang sangat menarik. Pada aplikasi ini, para pengguna akan disuguhkan gambar berupa landscape ataupun grafik sambil mendengarkan cerita yang berkaitan dengan gambar tersebut. Aplikasi ini merupakan salah satu contoh aplikasi virtual reality terbaik yang ada saat ini dan aplikasi ini bisa didapatkan secara gratis.
Vrse
Aplikasi ini memungkinkan pengguna untuk menikmati virtual reality dengan atau tanpa menggunakan Cardboard. Para pengguna akan benar-benar diajak masuk ke dalam cerita dengan tampilan 3D dengan fitur suara yang berubah-ubah menyesuaikan dengan lokasi yang ada
Sebagai catatan, aplikasi ini tidak bisa dipindahkan di kartu memori, sehingga bisa menjadi masalah bagi beberapa pengguna. Namun selain hal itu, aplikasi ini sangat patut untuk dicoba.

Fulldive VR

Aplikasi virtual reality lain yang juga bisa dipergunakan pada smartphone Android adalah Fulldive VR. Aplikasi ini memungkinkan para pengguna untuk bisa menikmati berbagai media dengan cara yang benar-benar baru dan berbeda dari sebelumnya. Fulldive VR bisa dipergunakan di ponsel Android dan juga pada berbagai alat untuk melihat virtual reality seperti Google Cardboard VR headset.
FullDive
Ada berbagai fitur yang bisa didapatkan pada aplikasi ini yaitu:
  • VR Market dimana para pengguna bisa mengakses semua aplikasi VR yang ada pada smartphone mereka
  • VR Browser dimana para pengguna bisa melakukan browsing di internet dalam VR
  • VR Video Player yang memungkinkan pengguna untuk bisa menonton video di ponsel pintar mereka seperti layaknya di sebuah bioskop
  • VR Galeri Foto, dimana para pengguna bisa menyimpan dan mengakses semua foto dan video dalam VR
  • VR 360 Galeri Foto, yang memungkinkan pengguna untuk menyimpan dan mengakses 360 galeri foto
  • VR Kamera, yang memungkinkan pengguna untuk mengambil gambar dalam VR
  • YouTube, dimana para pengguna bisa streaming video YouTube dalam format biasa, format 3D ataupun format 360 dalam VR
Untuk lebih melengkapi pengalaman para pengguna, FullDive hadir bukan hanya dalam bentuk aplikasi, namun juga hadir dalam bentuk alat kelengkapan berupa headset dan smart controller. Kedua alat tersebut akan membawa VR ke dalam kehidupan setiap orang secara lebih mendalam.

VaR’s VR Video Player

Salah satu aplikasi terbaik bagi para pengguna untuk bisa menikmati virtual reality adalah aplikasi ini. Aplikasi player ini memungkinkan pengguna untuk bisa menikmati virtual reality dan juga video 3D dalam cara yang benar-benar baru.
VaR’s VR Video Player
Aplikasi ini layak masuk dalam kategori aplikasi virtual reality terbaik untuk smartphone Android berkat berbagai fitur yang dimiliki yaitu:
  • Kemampuan untuk mengikuti gerakan kepala sehingga tampilan gambar yang dihasilkan tampak benar-benar nyata
  • Mengontrol semua parameter tampilan pada layar berupa kontras, tingkat saturasi, tingkat kecerahan, koreksi lensa, zoom, dan pandangan mata
  • Mendukung semua mode atau tampilan mulai dari tampilan video normal, tampilan panorama 180 dan 360, tampilan stereoskopic yang saling berdampingan, tampilan dalam bentuk tumpukan dan juga tampilan 180 dan 360
  • Fitur video preview
  • Mendukung semua jenis format video termasuk juga full HD mp4
  • Mendukung subtitle
  • Fitur pilihan untuk mengatur ulang tampilan pandangan
  • Fitur untuk mengatur agar tampilan video yang ada nampak seperti sinema VR tanpa mengikuti gerakan kepala
Semua fitur tersebut menawarkan para pengguna kenyamanan lebih dalam menikmati virtual reality melalui smartphone mereka.
Aplikasi-aplikasi tersebut pada dasarnya tersedia secara gratis, dimana para pengguna bisa mendownload tanpa perlu mengeluarkan biaya sepeserpun. Namun perlu diperhatikan bahwa aplikasi-aplikasi tersebut tidak bisa dijalankan pada semua jenis smartphone Android. Terdapat beberapa spesifikasi atau ketentuan khusus yang perlu dipenuhi sebelum bisa mempergunakan aplikasi yang ada.
Selain itu, perlu diperhatikan apakah aplikasi yang akan dipergunakan membutuhkan alat penampil VR khusus ataukah tidak. Beberapa aplikasi bisa dipergunakan tanpa mempergunakan alat khusus seperti ini sementara aplikasi lain membutuhkan alat tambahan khusus seperti Google Cardboard.
Ke empat aplikasi diatas adalah sebagian dari banyaknya aplikasi sejenis yang hadir di pasaran. Beberapa aplikasi menawarkan akses untuk menikmati virtual reality secara luas kepada para pengguna sementara beberapa aplikasi lain telah memiliki program virtual reality tersendiri yang ditawarkan kepada para pemakai, misalnya saja aplikasi virtual reality dengan genre horor atau dengan tema film tertentu sebagai bagian promosi film tersebut.
Banyaknya pilihan aplikasi serupa memberikan para pengguna pilihan yang semakin luas dalam menikmati virtual reality. Trend virtual reality itu sendiri nampaknya masih akan terus berkembang pesat, dan hal ini berarti jumlah aplikasi yang bisa dimanfaatkan untuk menikmati hal tersebut juga akan semakin bertambah banyak di masa yang akan datang.

Review Game 4d yang terbaru

ANIMASI 4D
Setelah sukses dengan animasi 3D, para animator kini sudah mengembangkan pula animasi berbentuk 4D. Sebenarnya tehnologi ini telah menjadi ide matematika dan aplikasi untuk beberapa waktu, tapi sekarang melalui teknologi komputer, telah diluncurkan ke film dan proyek animasi lainnya.
Pengertian
Bila secara visual melihat sebuah objek 4D, ada ditambahkan mendalam dalam bayangan dan bagaimana kita memandang cahaya pada objek. Ketika cahaya mengenai objek 4D, bayangan yang dilemparkan adalah salah satu yang membuat objek 3D tampaknya memiliki lebih banyak sisi. Contoh lain adalah dalam hal kubus 4D. Bila hanya melihat itu garis besar, ketika sumber cahaya mengenai kubus dari atas, bayangan kemudian dilemparkan dari sebuah kubus 3D dalam kubus 3D lain semua bagian dalam 4D kubus luar. Persepsi kedalaman menambahkan ini berasal dari dimensi tambahan.
Pertimbangan
Karena manusia hanya bisa melihat dalam 3D, 4D adalah sebuah konsep yang kita tidak bisa sepenuhnya melihat pada kita sendiri. Program komputer dan metode lain adalah satu-satunya cara untuk membantu orang lebih memahami gagasan 4D. Salah satu cara untuk melihat ide 4D adalah dalam metode proyeksi, di mana program mengambil gambar 4D dan tempat-tempat itu di pesawat 3D. The 4D gambar diproyeksikan, dan kemudian kita dapat belajar dengan pencahayaan yang berbeda dan bayangan untuk mendapatkan visual yang lebih baik untuk dimensi spasial.
Potensi
Animasi yang paling umum digunakan dan aplikasi artistik Cinema 4D. Animator memanipulasi gambar dalam 3D, memberi mereka poin tetap disebut simpul. Simpul kemudian terhubung, permukaan dimasukkan ke dalam tempat dan kemudian beberapa pesawat yang dibuat. Karena dimensi yang Anda lihat dalam benar-benar merupakan salah satu dimensi yang lebih rendah dari yang Anda menafsirkan, program komputer memungkinkan kita untuk memanipulasi dimensi keempat sehingga kita dapat menghidupkan dalam dimensi ketiga. Itu adalah ketika foto-foto masih kita lihat tampak melompat keluar pada kami.
Manfaat
Animasi dan produksi studio telah mengambil teknologi ini berkembang dan berjalan dengan itu, pemasaran untuk khalayak film yang bisa ditafsirkan dalam 3D, sedangkan gambar tampak melompat dari layar. Hal ini dengan program komputer yang memanfaatkan dimensi keempat yang kita konseptual dapat melihat dalam 3D. Disney, Pixar, Sony dan IMAX merupakan contoh studio yang telah dibuat dan dipromosikan kartun dengan cara ini, dengan Polar Express, Rakasa Rumah dan Open Season sebagai film seperti beberapa, tapi hari ini, banyak film memanfaatkan aspek 4D.

Tidak ada komentar:

Posting Komentar