Pages

Senin, 26 Maret 2018

TEKNOLOGI GAME


TEKNOLOGI GAME
Teknologi adalah sebuah pengetahuan yang ditujukan untuk menciptakan alat, tindakan pengolahan dan ekstraksi benda. Istilah "teknologi" telah dikenal secara luas dan setiap orang memiliki cara mereka sendiri memahami pengertian teknologi. Teknologi digunakan untuk menyelesaikan berbagai permasalahan dalam kehidupan kita sehari-hari, secara singkat; kita bisa menggambarkan teknologi sebagai produk, proses, atau organisasi. Selain itu, teknologi digunakan untuk memperluas kemampuan kita, dan yang membuat orang-orang sebagai bagian paling penting dari setiap sistem teknologi.

Game adalah sesuatu yang sangat digemari oleh anak-anak hingga orang dewasa. Game berarti hiburan. Permainan game juga merujuk pada pengertian sebagai kelincahan intelektual (intellectual playability). Sementara kata game bisa diartikan sebagai arena keputusan dan aksi pemainnya. Ada target-target yang ingin dicapai pemainnya. Kelincahan intelektual, pada tingkat tertentu, merupakan ukuran sejauh mana game itu menarik untuk dimainkan secara maksimal.

Game di jaman sekarang bukan hanya untuk menghibur, tapi game di jaman sekarang di jadikan sebagai pekerjaan atau bisa juga di sebut E-sport untuk beberapa gendre game dan permainan baik game PC,Mobile atau yang lainnnya, contohnya game Moba seperti Dota2 yang merupakan game yang paling banyak di minati di dunia , bahkan banyak kompetisi E-Sport di jaman sekarang.

Jadi dapat kita simpulkan bahwa teknologi game adalah proses pengembangan teknologi yang berbasis permainan dalam rangka untuk mengembangkan kemampuan manusia yang memainkan game tersebut dan meningkatkan pengetahuan manusia melewati teknologi game yang di mainkan.

BISNIS DALAM GAME KOMPUTER
Di zaman modern ini, tidak dipungkiri lagi bahwa game sangat berperan untuk sebagian besar pengguna teknologi, terutama pengguna komputer. Game merupakan sarana hiburan di tengah padatnya aktvitas yang dilalui. Namun, game ternyata juga dapat dijadikan sebuah bisnis yang menjanjikan. Dengan hobi para gamer ini, tentu terdapat peluang untuk mendapatkan profit.

Bisnis dalam game komputer berkembang pesat seiring dengan berkembangnya teknologi canggih saat ini. Dahulu kita hanya dapat menikmati game yang tersedia di dalam komputer itu sendiri, seperti pinball dan solitaire. Namun sekarang sudah tersedia game online, dan juga games yang dapat didownload baik free maupun berbayar. Games berbayar juga merupakan bisnis karena sama saja dengan kita mengeluarkan uang untuk membeli sebuah barang. Games berbayar ini biasanya memberikan kepuasan tersendiri bagi pembelinya, karena terdapat fitur yang bagus di dalamnya. Perkembangan lainnya ialah warung internet atau yang sering kita dengar dengan istilah warnet. Warnet kini identik dengan game online yang mereka sediakan, adapun game berbayar yang disediakan warnet sehingga kita hanya tinggal memainkannya. Baik anak kecil hingga orang dewasa mempunyai hobi bermain game online ini. Dengan menyediakan tempat, perangkat komputer yang lengkap, dan fasilitas pendukung lainnya, membuat gamers betah berlama-lama untuk bermain.
Saat ini perkembangan games di komputer sangat cepat. Para pengelola industri game berlomba-lomba untuk menciptakan game yang lebih nyata dan menarik untuk para pemainnya. Hal inilah yang membuat perkembangan games di komputer sangat cepat. Sehingga games bukan hanya sekedar permainan untuk mengisi waktu luang atau sekedar hobi. Melainkan sebuah cara untuk meningkatkan kreatifitas dan tingkat intelektual para penggunanya.

3D Engine dan Scane Graph
Di dalam grafika komputer, 3D merupakan bentuk grafik yang menggunakan representasi data geometri tiga dimensi. Grafik 3D ini tersimpan didalam komputer untuk keperluan kalkulasi atau rendering gambar 3D. Pada 3D, engine bukanlah exutable program, artinya engine tidak bisa dijalankan sebagai program yang berdiri sendiri.
3D engine adalah sistem perangkat lunak yang dibuat dan dirancang untuk menciptakan dan mengembangkan gambar 3D, fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render (renderer) untuk 2D/3D grafis.
Berbeda dengan dukungan grafik 2D yang sudah built in, dukungan Java terhadap grafik 3D diletakkan ke dalam API terpisah, yakni Java3D. Java3D merupakan API 3D berbasis scene graph di platform Java, dimana scene graph merupakan sebuah pohon yang berisi hierarki data scene. Di dalam api Java3D didefinisikan sejumlah kelas dan interface yang menyediakan beragam operasi grafik 3D. Konsep scene graph merupakan inti dari Java3D. Sebuah scene graph merupakan g rafik yang mempresentasikan geometri, material, dan pencahayaan. Scene graph dimulai dari root dengan sebuah Virtual Universe dan mencakup transformasi serta geometri untuk mendefinisikan objek di dunia maya. Secara garis besar, ada tiga tahap fundamental yang diperlukan untuk menghasilkan objek 3D, yaitu:
1.               Menciptakan objek Canvas3D
2.               Menciptakan sebuah scene graph
3.               Menghubungkan objek Canvas3D ke objek BranchGroup yang menunjuk root dari scene graph

Ogre 3D
Objected-Oriented Graphics Rendering Engine atau bisa disingkat dengan OGRE merupakan engine yang object oriented & flexible 3D rendering pada game engine yang ditulis dengan menggunakan bahasa C++ serta didesain agar mampu men-developer dengan mudah kepada aplikasi produksi dengan menggunakan utility hardware-accelerated 3D graphic. Gambaran abstraknya OGRE menggunakan sistem library seperti Direct3D & OpenGL, serta menyediakan sebuah dasar interface di dunia objek dan class objek yang lebih tinggi.

OGRE hanya digunakan untuk me-render. Dengan kata lain, fitur OGRE hanya khusus menangani vector & matOix classes, memory handling, dan lain lain. Ini bukan lah salah satu dari semua solusi dalam istilah game development/simulasi. OGRE tidak menyediakan audio/physics support.

Walaupun penjelasan diatas bisa dikatakan sebagai kelemahan dari OGRE itu sendiri, akan tetapi semua itu sebanding dengan kemampuan grafis yang ada pada game engine tersebut. Kelebihan yang paling menonjol pada OGRE adalah graphics engine yang bisa memberikan para developer sebuah kebebasan untuk menggunakan physics apapun, input, audio, & library lainnya. OGRE memberikan para tim development untuk fokus pada graphics daripada beberapa sistem-sistem yang ada dalam game development. OGRE dapat mendupport OIS, SDL, CEGUI libraries. Sekarang ini OGRE adalah publish dibawah dua lisensi, yaitu LGPL & OUL. Maka sekarang ini para publish tersebut membuka OGRE sebagai free/open source software.

Fitur-fitur pada OGRE:
1.               Desain yang object-oriented dengan menggunakan plugin untuk mempermudah memasukkan fitur lainnya
2.               Engine berbasis scane graph dengan bantuan untuk sebuah varietas yang luas, octree, BSP, & paging landscape scene manager
3.               Multi-platform dengan dukungan OpenGL & Direct 3D. Bisa me-render konten yang sama di beda platform tanpa harus mempunyai content creator. dapat diakses pada platform Linux, Mac OS, dan semua versi Windows
4.               OGRE mendukung program vertex dan fragment selama ditulis dengan GLSH, HLSL, Cg, dan assembler 
5.               The landscape scene manager untuk progressive LOD, yang mana bisa dibuat secara otomatis dan manual
6.               Engine annimasi yang men-support penuh untuk multiple hardware

Processing
Processing adalah bahasa pemrograman dan lingkungan pemrograman yang bersifat open source yang digunakan untuk memprogram gambar, animasi, dan interaksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak dan alat produksi profesional. Processing mengintegrasikan suatu bahasa pemrograman, lingkungan pemrograman, dan metodologi pengajaran ke dalam sistem terpadu.

Processing merupakan suatu projek yang dinisiasi oleh Ben fry dan casey reas. Berkembang dari ide-ide yang dieksplorasi di Aesthetics and Computation Group (ACG) di Mit Media Lab. Projek ini kini terus diperbaiki dan dikelola oleh sejumlah Tim Voluntir.

Game Maker
Game Maker adalah software yang bisa membantu anda menjadi pengembang game komputer tanpa menggunakan coding sedikitpun. Dapat digunakan untuk membuat 3 dimensi dan Multiplayer. Game Maker dapat menjadikan hak penuh dari software (game) yang anda buat termasuk dapat menjual game tersebut, bahkan bisa mendownload musik, efek suara, gambar, script, serta background.

Unity 3D
Unity 3D adalah sebuah game developing software. Dengan software ini, kita bisa membuat game 3D yang seru. Game developer ini sangat mudah digunakan, dengan GUI yang memudahkan kita untuk membuat derta mengedit script untuk menciptakan sebuah game 3D. Selain bisa untuk build game PC, Unity juga dapat digunakan untuk membangun game console seperti Nintendo Wii, PS3, Xbox 360, juga Ipad, Iphone, dan Android. Namun masing-masing membutuhkan biaya lisensinya sendiri. Unity kurang lebih sama dengan Blender game engine, namun unity lebih ringan dan diintegrasi lebih dalam suasana grafik.

Kelebihan Unity terdapat pada multiple platform, artinya banyak platform yang disupport oleh unity, seperti Windows, Mac, iPhone, iPad, Android, Nintendo Wii, dan juga browser. Untuk browser, kita memerlukan sebuah plug-in, yaitu Unity Web player, sama halnya dengan Flash Player pada browser. Pada unity, kita tidak bisa melakukan desain/modelling dikarenakan unity bukan tool untuk mendesain. Jadi jika kita ingin mendesain, dibutuhkan 3D editor lain seperti 3Dsmax atau Blender, kemudian kita export menjadi format .fbx.

Desain Skenario ,Script, dan Story Board
Desain Skenario

    Skenario adalah urutan cerita yang disusun oleh seseorang agar suatu peristiwa terjadi sesuai dengan yang diinginkan. Kalau dasar untuk pembuatan film adalah skenario, maka dasar untuk membuat game adalah design document atau lebih mudahnya disebut skenario game. Skenario game adalah langkah awal dalam membuat sebuah game, dengan skenario game dapat mempermudah kita menyelesaikan game yang akan kita buat. Skenario game adalah sebuah cerita khusus yang melatarbelakangi kejadian – kejadian dalam game. Kalau skenario menentukan interior dan eksterior, dekor, pemain, dan studio, serta pembuatan trik, dalam desain dokumen ada ketentuan program game, grafik, tokoh, animasi, suara, dan musik. Sampai di sini keduanya masih paralel. Berbeda dengan skenario yang merupakan sekuens linier dari adegan, turn around point, dialog, dan seterusnya; design documents adalah gabungan dokumen yang mendiskripsikan secara kompleks semua segi game yang direncanakan. 

Script
  
         Dalam pemrograman komputer, naskah adalah sebuah program atau urutan instruksi yang ditafsirkan atau dilakukan dengan program lain daripada oleh komputer prossesor. Skrip (script) adalah semacam bahasa pemrograman dalam tingkat kesulitan yang lebih rendah, tanpa aplikasi hasil kompilasi interpreter; skrip biasanya disisipkan ke dalam bahasa pemrograman yang lebih kompleks dan hasil skrip digunakan oleh bahasa pemrograman yang lebih kompleks itu. 
         Contohnya ialah penyisipan skrip assembly ke dalam program Pascal untuk mengakses hardware pada level bahasa tingkat rendah. Skrip merupakan kumpulan sintaks bahasa pemrograman yang siap untuk di-compile. Untuk mengetahui tentang script, disini ada sedikit rangkuman tentang script :
-        Script adalah bahasa yang digunakan untuk menerjemahkan setiap perintah dalam situs yang pada saat di akses.
-        Jenis script sangat menentukan statis, dinamis, atau interaktifnya sebuah situs
-        Semakin banyak script yang digunakan maka akan terlihat semakin dinamis, dan interaktif serta terlihat lebih bagus.
-        Bahasa dasar yang di pakai setiap situs adalah HTM
-        Macam-macam script, PHP, ASP, JSP, Java Script, Java Applets, VBScript.

Storyboard
   
           Storyboard adalah visualisasi ide dari aplikasi yang akan dibangun, sehingga dapat memberikan gambaran dari aplikasi yang akan dihasilkan. Storyboard dapat dikatakan juga visual script yang akan dijadikan outline dari sebuah proyek, ditampilkan shot by shot yang biasa disebut dengan istilah scene.
              Storyboard sekarang lebih banyak digunakan untuk membuat kerangka pembuatan websites dan proyek media interaktif lainnya seperti iklan, film pendek, games, media pembelajaran interaktif ketika dalam tahap perancangan /desain.
              Baru-baru ini istilah “Storyboard” telah digunakan dibidang pengembangan web, pengembangan perangkat lunak dan perancangan instruksi untuk mempresentasikan dan menjelaskan kejadian interaktif seperti suara dan gerakan biasanya pada antarmuka pengguna, halaman elektronik dan layar presentasi. Sebuah Storyboard media interaktif dapat digunakan dalam antarmuka grafik pengguna untuk rancangan rencana desain sebuah website atau proyek interaktif sebagaimana alat visual untuk perencanaan isi.
Untuk proyek tertentu, pembuat Storyboard memerlukan ketrampilan menggambar yang bagus dan kemampuan beradaptasi terhadap gaya yang bermacam. Mereka harus mampu untuk mengikuti desain yang telah dikeluarkan dan menghasilkan kerja konsisten, yang digambar pada model.

Storyboard pada Game

         Storyboard pada Game sedikit berbeda dari storyboard animasi, dimana pada storyboard game terdapat goal / mission yang akan dibuat pada game itu sendiri. Kemudian storyboard pada game menjelakaskan tentang alur permaianan itu sendiri seperti apa tergantung dari jenis game.  misalkan game ber-genre arcade tidak memiliki alur cerita namun game terebut menitik beratkan pada perolehan point. Jadi storyboard yang dibuat yaitu bagaimana pemain mendapat nilai / point setinggi mungkin.
Contoh story board pada game


Artificial Intelligence pada game komputer
Artificial Intelligence atau AI dalam bahasa Indonesia artinya Kecerdasan Buatan yaitu kecerdasan yang ditunjukkan oleh suatu entitas ilmiah. Kecerdasan dibuat dan dimasukkan ke dalam suatu mesin/ komputer supaya bisa melakukan pekerjaan seperti yang bisa dikerjakan oleh manusia. Contohnya adalah kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, perencanaan dan penjadwalan, pengendalian, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah di kehidupan yang nyata. Terdapat macam-macam bidang yang menggunakan kecerdasan buatan diantaranya yaitu: game komputer, sistem pakar, jaringan syaraf tiruan, logika fuzzy dan robotika.
Kelebihan Artificial Intelligence:
-        Artificial Intelligence bersifat konsisten dan teliti .
-        Artificial Intelligence lebih bersifat permanent.
-        Artificial Intelligence dapat lebih murah daripada kecerdasan alami.
-        Artificial Intelligence menawarkan kemudahan untuk digandakan atau disebarkan.
-        Artificial Intelligence dapat didokumentasi.
Contoh Penerapan Artificial Intelligence:
-       SYSTRAN.perangkat lunak untuk penerjemahan bahasa.
-      Delco Electronics.Mobil yang dapat mengemudikan sendiri yang menggunakan pendeteksi tepi untuk tetap bertahan di jalan.
-     Deep Blue. program catur 1997 yang mengalahkan Garry Kasparov pecatur dunia .
-        Volkswagen AG. Sistem pengemudi kendaraan otomatis yang diciptakan oleh Jerman.

Decision Making
Decision Making merupakan serangkaian algoritma yang dirancang sedemikian rupa dengan cara memasukkan beberapa kemungkinan langkah yang bisa diambil oleh suatu aplikasi. Decision Making pada game memberikan kemampuan suatu karakter untuk menentukan langkah apa yang akan diambil. Cara kerja dari Decision Making adalah dengan menentukan satu pilihan diantara banyak list yang telah dibuat pada algoritma yang dirancang.
Decision Making sendiri terbagi menjadi 3 bagian yakni :

1. Decision Tree
Decision Tree atau biasa disebut pohon keputusan merupakan metode klasifikasi dan prediksi yang sangat kuat dan terkenal. Metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon keputusan yang mempresentasikan aturam. Aturannya dapat dengan mudah dipahami dengan bahasa yang alami. Aturan ini juga dapat diekspresikan dalam bentuk bahasa basis data seperti SQL untuk mencari record pada kategori tertentu. Selain itu, pohon keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah variabel target. Karena pohon keputusan memadukan antara eksplorasi data dan pemodelan, pohon keputusan ini sangat bagus sebagai langkah awal dalam proses pemodelan bahkan ketika dijadikan sebagai model akhir dari beberapa teknik lain (J R Quinlan, 1993).

2. State Machine
FSM(Finite State Machines) merupakan sebuah metodologi perancangan sistem kontrol yang menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga hal berikut :
·                  State(Keadaan)
·                  Event(Kejadian)
·                  Action(Aksi)
Pada suatu saat ketika periode waktu yang cukup signifikan, sistem akan berada pada salah state yang aktif. Kemudian sistem dapat beralih atau bertransisi menuju state yang lain jika mendapatkan suatu masukan atau event tertentu, baik yang berasal dari perangkat luar ataupun komponen dalam sistemnya itu sendiri. Transisi keadaan ini biasanya disertai oleh aksi yang dilakukan oleh sistem ketika menanggapi masukan. Aksi yang dilakukan dapat berupa aksi yang sederhana atau bisa melibatkan rangkaian proses yang relative kompleks.

3. Rule System
Rule Based System merupakan metode pengambilan keputusan yang berdasarkan pada aturan-aturan tertentu yang telah ditetapkan. RBS dapat diterapkan pada agen virtual dalam bentuk kecerdasan buatan sehingga dapat melakukan tindakan tertentu. Tindakan tersebut dipresentasikan oleh set aturan yaitu penyebab, proses dan hasil dari tindakan yang dilakukan.
RBS merupakan sistem yang baik jika menjawab pertanyan mengenai What(Apa), How(Bagaimana), dan Why(Mengapa) dari Rule Base(RB) selama proses inferensia. Jawaban serta penjelasannya dapat disediakan dengan baik.

B. Path Finding

Metode Path Finding seringkali dijumpai pada game yang bergenre strategi, dimana kita sebagai user menunjuk satu karakter untuk digerakkan ke lokasi tertentu dengan cara mengklik lokasi yang akan dituju. Maka, si karakter tersebut akan bergerak ke arah yang telah ditentukan, dan secara “cerdas” dapat menemukan jaur terpendek ataupun menghindari rintangan yang ada.
Metode pada Path Finding terbagi menjadi 4 bagian yakni:

1. Waypoints
Merupakan titik acuan/kumpulan koordinat yang digunakan untuk keperluan navigasi. Maksud dari keperluan navigasi disini adalah mengidentifikasi sebuah titik dipeta. Disetiap koordinat biasanya menyertakan longitude, latitude, dan terkadang altitude untuk keperluan navigasi di udara.

2. A* Searching
Algoritma A* merupakan yang sering digunakan pada game yang menggunakan metode pathfinding. Algoritma ini dipilih karena A* sangat mudah untuk diimplementasikan dan sangat efisien. Dengan menggunakan algoritma A* kita dapat menentukan jalur terpendek. Pada algotitma ini akan menyeleksi dengan cara membuang langkah yang tidak perlu dengan mempertimbangkan bahwa langkah yang dibuang dipastikan tidak mencapai solusi yang diinginkan.
Prinsip dari algoritma ini yaitu dengan cara mencari jalur terpendek dari sebuah simpul awal (Starting Point) menuju ke simpul tujuan dengan memperhatikan harga (F) terkecil. Algoritma A* akan memperhitungkan cost dari current state ke tujuan dengan fungsi heuristic, selain itu algoritma ini juga mempertimbangkan cost yang telah ditempuh selama ini dari initial state ke current state. Jadi maksudnya jika jalan yang telah ditempuh terlalu panjang dan ada jalan lain yang cost nya lebih kecil tetapi memberikan posisi yang sama jika dilihat dari goal, maka jalan yang lebih pendeklah yang akan dipilih.

3. Dijkstra
Algoritma Dijkstra yang dinamai penemunya yakni seorang ilmuwan komputer, Edsger Dijkstra merupakan sebuah algoritma yang rakus atau biasa dikenal dengan algoritma greedy. Algoritma ini biasa dipakai dalam memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah (directed graph) dengan bobot-bobot sisi (edge weights) yang bernlai positif.

4. Tactical Pathfinding
Tactical Pathfinding merupakan algoritma pencarian jalur yang bisa melakukan pencarian jalur terpendek dengan menghitung bobot ancaman. Implementasi algoritma ini dapat memberikan gerakan taktis pada non-player character. Algoritma ini dilakukan berdasarkan algoritma pencarian jalur A* yang ditambah dengan perhitungan bobot.

Sekian dulu penjelasan mengenai Teknologi game ,Story board ,Artificial Intelligence pada Game diatas semoga pembahasan barusan bisa menambah wawasan para blogger maupun pembaca. Mohon maaf jika terdapat kekurangan dalam pembahasannya karena sesungguhnya tidak ada yang jauh lebih sempurna dari Allah SWT.

Referesnsi:




0 komentar:

Posting Komentar