Penulisan 4 Arsitektur Game

on Jumat, 31 Maret 2017

Arsitektur Game adalah rancangan atau blueprint dari sebuah game. Sedangkan  arsitektur mesin game adalah system perangkat lunak yang  dirancang untuk menciptakan dan pengembangan video game. Dapat dikatakan  bahwa arsitektur mesin game itu adalah rancangan dari sistem perangkat  lunak dari game itu sendiri.
Beberapa elemen yang terdapat dalam game engine, yaitu:
·         Tools/Data
Pada pengembangan game paling tidak dibutuhkan beberapa tools seperti 3d model editor, level editor dan graphics programs. Bahkan jika diperlukan, seringkali kita mengembangkan game engine tersebut dengan menambahkan beberapa code dan fitur yang diperlukan.
·         System
System adalah bagian dari game engine yang berfungsi untuk melakukan komunikasi dengan hardware yang berada di dalam mesin. System adalah bagian yang membutuhkan perubahan yang cukup banyak apabila dilakukan implementasi pada platform yang berbeda. Di dalam system sendiri terdapat beberapa sub system seperti graphics, input, sound, timer, configuration. System bertanggung jawab untuk melakukan inisialisasi, update dan mematikan sub system yang terdapat di dalamnya.
·         Console
Console dapat merubah setting game dan setting game engine di dalam game tanpa perlu melakukan restart pada game tersebut. Console biasa digunakan dalam proses debugging, seperti misalnya apabila game engine tersebut mengalami error maka kita hanya mengoutputkan error message tersebut ke dalam console tanpa harus melakukan restart.
·         Support
Support merupakan bagian yang sering digunakan pada system di galam game engine. Support berisikan rumus-rumus matematika yang biasa digunakan, vector, matrix, memory, file loader. Merupakan dasar dari game engine dan hampir digunakan dalam semua project game engine.
·         Renderer/Engine Core
Renderer/engine core terdiri dari beberapa sub yaitu visibility, collision detection dan response, camera, static geometry, dynamic geometry, particle systems, billboarding, meshes, skybox, lighting, fogging, vertex shading dan output.
·         Game Interface
Game interface merupakan layer antara game engine dan game itu sendiri. Berfungsi sebagai control yang bertuuan untuk memberikan interface apabila di dalam game engine tersebut terdapat fungsi yang bersifat dinamis sehingga memudahkan untuk mengembangkan game tersebut.
·         The Game
Game merupakan inti dari penggunaan game engine sendiri, sehingga ini tergantung bagaimana pengguna dalam mengembangkannya.
Tipe-Tipe Game Engine
Game engine biasanya datang dengan macam-macam jenis dan tujuannya. Ada 3  tipe game engine yaitu sebagai berikut :
·         Roll-your-own game engine
Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine-nya sendiri. Mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Di sisi lain, mereka kadang menggunakan library komersil atau yang open source. Terkadang mereka juga membuat semuanya mulai dari nol. Biasanya game engine tipe ini lebih disukai karena selain kemungkinan besar diberikan secara gratis, juga memperbolehkan mereka (para developer) lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Tower Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine-nya, hanya untuk ditulis ulang semuanya dalam beberapa hari sebelum penggunaannya karena adanya bug kecil yang sangat mengganggu.
·         Mostly-ready game engines
Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer/programer. Semuanya termasuk contoh GUI, physiscs, libraries model, texture dan lain-lain. Banyak dari mereka yang sudah benar-benar matang, sehingga dapat langsung digunakan untuk scripting sejak hari pertama. Game engine semacam ini memiliki beberapa batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar-benar terbuka lebar. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game.
·         Point-and-click engines
Engine ini merupakan engine yang sangat dibatasi, tapi dibuat dengan sangat user friendly. Anda bahkan bisa mulai membuat game sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan coding, kamu sudah bisa merilis game point-and-click yang kamu banget. Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya.
Sumber :

Penulisan 3 AI, Desicion Making, Path Finding dan Waypoint



Bagian A
Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu sistem yang bisa diatur dalam konteks ilmiah atau Intelegensi Artifisial (bahasa Inggris: Artificial Intelligence atau hanya disingkat AI) didefinisikan sebagai kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.
Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain sepak bola.
Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.
Bagian B
Pengambilan keputusan tersebut dilakukan oleh seorang manajer atau administrator. Kegiatan pembuatan keputusan meliputi pengindentifikasian masalah, pencarian alternatif penyelesaian masalah, evaluasi daripada alternatif-alternatif tersebut, dan pemilihan alternatif keputusan yang terbaik. Kemampuan seorang pimpinan dalam membuat keputusan dapat ditingkatkan apabila ia mengetahui dan menguasai teori dan teknik pembuatan keputusan. Dengan peningkatan kemampuan pimpinan dalam pembuatan keputusan maka diharapkan dapat meningkatkan kualitas keputusan yang dibuatnya, sehingga akan meningkatkan efisiensi dan efektivitas kerja organisasi.
Pembuatan keputusan diperlukan pada semua tahap kegiatan organisasi dan manajemen. Misalnya, dalam tahap perencanaan diperlukan banyak kegiatan pembuatan keputusan sepanjang proses perencanaan tersebut. Keputusan-keputusan yang dibuat dalam proses perencanaan ditujukan kepada pemilihan alternative program dan prioritasnya. Dalam pembuatan keputusan tersebut mencakup kegiatan identifikasi masalah, perumusan masalah, dan pemilihan alternatif keputusan berdasarkan perhitungan dan berbagai dampak yang mungkin timbul. Begitu juga dalam tahap implementasi atau operasional dalam suatu organisasi, para manajer harus membuat banyak keputusan rutin dalam rangka mengendalikan usaha sesuai dengan rencana dan kondisi yang berlaku. Sedangkan dalam tahap pengawasan yang mencakup pemantauan, pemeriksaan, dan penilaian terhadap hasil pelaksanaan dilakukan untuk mengevalusai pelaksanaan dari pembuatan keputusan yang telah dilakukan.
Hakikatnya kegiatan administrasi dalam suatu organisasi adalah pembuatan keputusan. Kegiatan yang dilakukan tersebut mencakup seluruh proses pengambilan keputusan dari mulai identifikasi masalah sampai dengan evaluasi dari pengambilan keputusan yang melibatkan seluruh elemen-elemen dalam administrasi sebagai suatu sistem organisasi. Artinya dalam membuat suatu keputusan untuk memecahkan suatu permasalahan yang ditimbulkan dari adanya perubahan-perubahan yang terjadi dalam organisasi dibutuhkan informasi yang cukup baik dari internal maupun eksternal organisasi guna mengambil keputusan yang tepat dan cepat.
Pada akhirnya, kegiatan pengambilan keputusan yang cepat dan tepat merupakan bagian dari kegiatan administrasi dimaksudkan agar permasalahan yang akan menghambat roda organisasi dapat segera terpecahkan dan terselesaikan sehingga suatu organisasi dapat berjalan secara efisien dan efektif.
Bagian C
Permainan adalah kegiatan yang kompleks yang didalamnya terdapat peraturan. Sebuah permainan adalah sebuah sistem dimana pemain terlibat dalam konflik buatan, disini pemain berinteraksi dengan sistem dan konflik dalam permainan merupakan rekayasa atau buatan, dalam permainan terdapat peraturan yang bertujuan untuk membatasi perilaku pemain dan menentukan permainan.
Game bertujuan untuk menghibur, biasanya game banyak disukai oleh anak - anak hingga orang dewasa. Games sebenarnya penting untuk perkembangan otak, untuk meningkatkan konsentrasi dan melatih untuk memecahkan masalah dengan tepat dan cepat karena dalam game terdapat berbagai konflik atau masalah yang menuntut kita untuk menyelesaikannya dengan cepat dan tepat. Tetapi game juga bisa merugikan karena apabila kita sudah kecanduan game kita akan lupa waktu dan akan mengganggu kegiatan atau aktifitas yang sedang kita lakukan.
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.
3d Engine merupakan suatu software yang digunakan untuk membuat game dengan fungsi sebagai renderer grafik 3D,  physics engine, pengatur audio, scripting, animasi game, AI (Artificial Intelligence), networking, streaming, pengaturan memori, localization support, dan pengaturan grafik. Salah satu contoh 3d engine adalah Cry engine, Unity3D, Gamemaker dll. Dibawah ini merupakan contoh game menggunakan Cry engine ini adalah Crysis.
Bagian D
Algoritma yang digunakan untuk pencarian jalur. Algoritma ini dapat digunakan untuk mencapai tempat tujuan dari tempat awal. Salah satu algoritma path finding adalah algoritma A*. Waypoint adalah titik acuan / kumpulan koordinat yang digunakan untuk keperluan navigasi untuk mengidentifikasi sebuah titik di peta. (Wikipedia). Pencarian jalur merupakan salah satu implementasi kecerdasan buatan dalam permainan. Pencarian jalur terpendek merupakan hal yang mempengaruhi pergerakan dan pengambilan keputusan pada non-player character. Namun, jalur terpendek belum tentu dan tidak selalu menjadi jalur paling aman. Dalam permainan berbasis militer, karakter dituntut untuk bergerak secara taktis dalam menghadapi ancaman. Agen yang bergerak secara taktis dalam pencarian jalur tidak hanya mencari jalur terpendek, namun harus mempertimbangkan ancaman karena pertimbangan hit points, demi meningkatkan kesan nyata pada permainan. Tactical Pathfinding merupakan salah satu algoritma pencarian jalur yang dapat melakukan pencarian jalur terpendek dengan perhitungan bobot ancaman. Implementasi algoritma tactical pathfinding dapat memberikan gerakan taktis pada non-player character. Algoritma tactical pathfinding dilakukan berdasarkan algoritma pencarian jalur berdasarkan A* ditambah perhitungan bobot. Implementasi algoritma dilakukan dengan melakukan simulasi pada peta permainan 3D berbasis navigation mesh. Representasi peta permainan 3D menggunakan navigation mesh karena dalam beberapa tahun terakhir, navigation mesh menjadi pilihan utama.
Bagian E
Waypoints GPS adalah koordinat yang berhubungan dengan tempat menarik. Dan Dapat Dijadika tempat kepentingan umum atau lokasi yang berhubungan dengan sesuatu yang memiliki arti khusus bagi Anda. Dalam pra-GPS hari Anda mungkin bergantung pada koordinat dinyatakan sebagai alamat jalan. Koordinat Waypoint diformat dengan cara yang berarti sesuatu untuk Anda perangkat navigasi GPS.Global Positioning System
GPS adalah singkatan dari Global Positioning System. Unsur utama dari GPS adalah satu set satelit yang mengirimkan sinyal radio, dengan masing-masing sinyal melaporkan waktu itu dikirim dari satelit. Dengan membandingkan waktu sinyal perangkat Anda menerima dari masing-masing empat (atau lebih) satelit, perangkat Anda menghitung seberapa jauh Anda dari setiap satelit. Hanya ada satu tempat di bumi di mana orang-orang jarak semua akan bertemu, sehingga perangkat Anda dapat melaporkan persis di mana itu terletak. Jika Anda berada di tempat yang penting untuk Anda, Anda dapat memiliki toko perangkat Anda koordinat lokasi Anda saat ini sebagai titik arah.GPS Koordinat
Bila Anda perangkat GPS mengumpulkan sinyal radio, maka format mereka dengan cara yang ia mengerti. Kebanyakan perangkat akan memberikan Anda pilihan untuk menyajikan informasi lokasi dalam beberapa format yang berbeda. Dengan konvensi, waypoints akan diformat dalam lintang dan bujur. Alih-alih derajat, menit, dan detik - seperti yang secara tradisional ditampilkan pada peta - GPS waypoint biasanya diberikan dalam derajat dan fraksi derajat, atau derajat, menit dan fraksi menit.Berbeda GPS Waypoint Koordinat
Standar bujur dan lintang koordinat yang diberikan dalam derajat, menit dan detik. Koordinat dalam derajat, menit, dan fraksi menit hanya dengan cara yang berbeda dari format informasi yang sama. Jadi 35 derajat, 56 menit, 32 detik sama dengan 35 derajat, 56.53 menit, dan itu sama dengan 35,9422 derajat. Kebanyakan perangkat GPS akan membiarkan Anda memasukkan koordinat dalam bentuk apapun yang nyaman bagi Anda. Bila Anda melihat angka lebih banyak, seperti 35.942243, masih sesuai dengan lintang atau bujur, hanya dengan akurasi lebih dari format derajat / menit standar / detik."Landmark" GPS Waypoints
Beberapa situs menawarkan daftar GPS waypoint sesuai dengan landmark terkenal. Bila Anda memasukkan koordinat tersebut ke perangkat GPS Anda, Anda akan mendapatkan arah ke tengara yang menarik.Anda Personal GPS Waypoints
Perangkat GPS juga akan memungkinkan Anda untuk merekam koordinat tempat yang dikunjungi. Anda dapat merekam lokasi dari restoran yang bagus Anda telah menemukan, musim panas kabin Anda di danau atau pompa bensin terakhir sebelum menuju off-road. Anda kemudian dapat mengirim koordinat tersebut ke teman atau menggunakannya sendiri untuk meninjau kembali tempat-tempat menarik.
Sumber :