Kamis, 10 Maret 2016

Pengantar Teknologi Game 


Pengantar Teknologi Game Terdiri dari beberapa materi yang saling berkaitan berikut penjelasannya :


A. Teknologi Game 
Teknologi game terdiri dari 2 kata, yaitu teknologi dan game. Pertama pengertian dari teknologi. Kata teknologi sebenarnya berasal dari Bahasa Perancis yaitu La Teknique yang dapat diartikan dengan semua proses yang dilaksanakan dalam upaya untuk mewujudkan sesuatu secara rasional. Dalam hal ini yang dimasukkan dengtan sesuatu tersebut dapat saja berupa benda atau konsep, pembatasan cara yaitu secara rasional adalah penting sekali dipahami disini sedemikian pembuatan atau pewujudan sesuatu tersebut dapat dilaksanakan secara berulang.
Teknologi dalam arti ini dapat diketahui melalui barang-barang, benda-benda atau alat-alat yang berhasil dibuat oleh manusia untuk memudahkan dan menggampangkan realisasi hidupnya didalam dunia. Hal mana juga memperlihatkan tentang wujud dari karya cipta dan karya seni menusia. Dari sini muncul istilah teknologi  yang berarti ilmu yang mempelajari tentang techne manusia. Teknologi sebenarnya lebih dari sekedar penciptaan barang, benda atau alat lain. Teknologi bahkan telah menjadi suatu sisyem atau struktur dalam eksistensi manusia di dalam dunia. Teknologi juga membentuk dan menciptakan suatu komunitas manusia yang lain. Teknologi juga penerapan keilmuan yang mempelajari dan mengembangkan kemampuan dari suatu rekayasa dengan langkah dan teknik tertentu dalam suatu bidang.
Dan yang kedua adalah pengertian dari Game. 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.

B. Bisnis dalam game dan komputer 
Di era baru ini, tidak bisa diduga 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.
Game/permainan 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.
Beberapa waktu lalu istilah “game” yang dalam bahasa Indonesia adalah “permainan” identik dengan anak-anak  selaku pemain. Tentunya dalam permainan itu suatu kegiatan yang dilakukan oleh anak-anak yang menurut mereka itu dapat menyenangkan hati mereka. Segala bentuk kegiatan yang memerlukan pemikiran, kelincahan intelektual dan pencapaian terhadap target tertentu dapat dikatakan sebagai game. Tetapi yang akan dibahas pada kesempatan ini adalah game yang terdapat di komputer, baik off line maupun online.
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.
Aplikasi games dapat dijalankan pada berbagai platform. Beberapa platform media yang bisa dijadikan pilihan untuk advergames adalah :
1. Personal Computer berupa aplikasi games pada PC. Games ini dijalankan pada personal computer. Pada media Personal Computer, durasi waktu penayangan adalah tidak terbatas, selama games tersebut bagus dan mampu menghibur audience/pemain, maka selama itulah tingkat kemungkinan untuk dilihat audience akan semakin tinggi. Pembuatan Games ini biasanya menggunakan Language C++ / C#, membutuhkan waktu 3-6 bulan tergantung dengan kompleksitas games tersebut.
2. Web Based Games. Yaitu aplikasi games yang diletakkan pada server di internet dimana audience/pemain hanya perlu menggunakan akses internet dan browser untuk mengakses games tersebut. Corporate yang memiliki keinginan mengumpulkan komunitas internet dan sekaligus memperkenalkan product/brandnya kepada komunitas Internet sangat cocok memilih media games online internet ini. Pilihan ini banyak digunakan karena dapat meningkatkan traffic pada suatu website Bila games yang dibutuhkan simple maka diperlukan waktu pengembangan yang relative lebih singkat 1-2 bulan.
3. SmartPhones/PocketPC. Aplikasi games yang jalan pada mobile devices bersistem operasi Windows Mobile 2003/2004 ataupun windows mobile 5.0. Product yang memiliki target market status ekonomi A,B dan karakter pengusaha/ eksekutif muda sangat cocok apabila menggunakan media PocketPC/SmartPhones sebagai bagian aktivitas kegiatan advertising. Games bertemakan strategi ataupun simulasi bisnis pada umumnya lebih disukai oleh orang-orang golongan ini. Waktu pengembangan biasanya memerlukan waktu 3-6 bulan tergantung dengan kompleksitas games tersebut.
4.CellPhones / Mobile Phones. Aplikasi games untuk cell-phones atau mobile phones sebenarnya bisa dimanfaatkan untuk mendapatkan potensial pelanggan dengan golongan Status Ekonomi Responden A,B dan C. Produk yang memiliki target golongan ABG, remaja, anak kuliah, eksekutif muda sangat tepat menggunakan media ini, mengingat pada golongan inilah mereka suka sekali mencoba dan mengeksplorasi features aplikasi yang tersedia pada mobile/cellphones mereka. Mereka biasanya aktif mencari aplikasi bersifat fun atau game yang dapat mengisi waktu senggang mereka. Waktu pengembangan untuk membuat aplikasi pada devices ini relative lebih pendek yaitu 1-3 bulan tergantung dengan kompleksitas games tersebut.
Industri game memang masih terbilang baru di Indonesia. Kendati begitu, perkembangannya sudah sangat pesat dan menjadi bisnis yang sangat menggiurkan. Penyebab utamanya adalah berkembangnya era teknologi dan komunikasi. Perkembangan ini terlihat dari banyaknya game center yang terus bermunculan, terutama yang menyediakan jasa gameonline. Bukan tanpa alasan game online menjadi semakin marak dan digandrungi, karena fasilitas online memungkinkan sebuah game dapat dimainkan oleh 100 orang lebih secara bersama-sama dalam satu waktu.
Contoh untuk bisnis dalam game komputer itu beragam. Seperti kita dituntut melakukan pembayaran untuk game tersebut. Maksud dari pembayaran ini adalah bagaimana perusahaan game online mendapatkan uang dari gamesnya. Bedasarkan kategori ini games online dapat dibedakan menjadi 2 yaitu : 
A. Pay Per Item, game yang berada pada category ini merupakan game yang bisa diinstall atau dimainkan secara gratis, dan game ini biasanya mengenakan biaya pada pemainnya apabila pemainnya ingin cepat menaikkan level atau membeli barang (item) langka yang tidak pernah dijumpai pada permainan. Jenis game seperti ini yang paling dijumpai di Indonesia. Contoh: Gunbound, Ragnarok, Ghost Online,dll.
B. Pay per Play, game ini harus dibeli dan diinstal secara legal karena pada saat diinstal game terebut akan mendaftarkan pemain ke internet langsung dan apabila yang diinstal adalah program bajakan maka secara otomatis system akan memblokirnya. Contoh: War of Warcraft,dll.

Mungkin kita juga tidak asing mendengar permainan Let's Get Rich. LGR merupakan permainan monopoly yang sudah dimodifikasi sedemikian rupa. Ini merupakan game yang kita jumpai di gadget, baik android maupun iOs. Dalam game ini kita sangat membutuhkan diamond yang berfungsi untuk membeli item bagus yang dapat meningkatkan peluang kita untuk menjadi pemenang. Diamond ini pun dapat dijadikan bisnis karena mengharuskan kita mengeluarkan uang untuk mendapatkannya.

C. 3D Engine dan Scene 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.

D. Scripting Pada Game Komputer
Pilihan bahasa pemrograman
Walaupun terdapat banyak sekali pilihan bahasa pemrograman untuk membuat game, namun pada intinya bahasa tersebut harus memenuhi syarat sebagai berikut :

a)   Speed
Bahasa scripting untuk game harus mampu berjalan secepat mungkin. Jika kita berniat untuk menggunakan banyak script untuk perilaku karakter dan kejadian di level game, maka script akan perlu untuk mengeksekusi sebagai bagian dari loop game utama. Ini berarti bahwa script yang lambat akan memakan waktu yang kita butuhkan untuk membuat suatu adegan, menjalankan mesin fisika, atau menyiapkan audio.

b)   Kompilasi dan Interpretasi (penyusunan dan penafsiran)
Bahasa scripting secara luas diinterpretasikan,melalui susunan serangkaian byte. Penafsiran bahasa diambil melalui format teks. Interpreter melihat setiap baris, penyusunan bekerja sesuai yang maksud dari script, dan melakukan tindakan yang spesifik. Bahasa byte-terkompilasi dikonversi dari teks ke format internal, yang disebut byte code. Kode byte biasanya jauh lebih padat daripada format teks. Karena kode byte dalam suatu format dioptimalkan ketika dieksekusi, agar dapat berjalan lebih cepat.

c)    Ekstensibilitas dan Integrasi
Bahasa scripting perlu memiliki akses ke fungsi yang signifikan ke dalam game. Sebuah script yang mengendalikan karakter, misalnya, harus mampu untuk menanyai game untuk mencari tahu apa yang bisa dilihat dan kemudian membiarkan game tahu apa yang akan dilakukan sebagai aksinya.
Serangkaian fungsi yang dibutuhkan untuk mengakses ini jarang diketahui ketika bahasa scripting telah diimplementasikan atau dipilih. Hal ini penting untuk memiliki sebuah bahasa yang dapat dengan mudah memanggil fungsi-fungsi atau menggunakan kelas main code dalam game. Biasanya, itu adalah penting bagi programmer untuk dapat mengekspos fungsi baru atau kelas yang dengan mudah ketika pembuat script memintanya.

d)   Re-Entrancy (ikut serta ulang)
Fungsi ini sering berguna untuk memanggil script menjadi diikutsertakan ulang. Mereka dapat berjalan untuk sementara waktu, dan ketika anggaran waktu telah habis script akan dapat ditunda. Ketika script selanjutnya mendapatkan beberapa waktu kembali, maka akan dapat menjalankan kembali script yang ditunda sebelumnya.
Hal ini sering membantu untuk membiarkan kontrol hasil script saat mencapai jeda normal. Kemudian sebuah algoritma penjadwalan dapat memberikan lebih banyak waktu untuk meminimalisasi penggunaan sumber daya.
Sebuah script untuk mengendalikan sebuah karakter, misalnya, mungkin memiliki lima tahapan yang berbeda (memeriksa situasi, memeriksa kesehatan, menentukan gerakan, rencana rute, dan melaksanakan gerakan). Ini semua dapat dimasukkan dalam satu script yang menghasilkan penyekat antara setiap bagian. Kemudian masing-masing akan berjalan dengan setiap lima frame, dan beban dari eksekusi AI akan didistribusikan.
Re-entrancy yang lebih canggih harus memungkinkan penulis script untuk menandai bagian yang tidak boleh terputus.

A.   Embedding (penanaman)

Embedding berhubungan dengan ekstensibilitas. Sebuah bahasa yang tertanam dirancang untuk dimasukkan ke dalam program lain. Ketika kita menjalankan bahasa scripting dari workstation, biasanya akan menjalankan program khusus untuk menafsirkan file source code. Dalam game, sistem scripting perlu dikontrol dari dalam program utama. Game yang menentukan jalannya script harus dijalankan dan harus dapat memberitahu mesin terkait bahasa scripting yang cocok untuk memproses script tersebut.

B.   Memilih sebuah bahasa

Sejumlah besar bahasa scripting tersedia, dan banyak dari mereka yang dirilis di bawah lisensi yang cocok untuk dimasukkan dalam sebuah game. Secara tradisional, sebagian besar bahasa scripting dalam game telah diciptakan oleh pengembang khusus untuk kebutuhan mereka sendiri. Dalam beberapa tahun terakhir telah ada minat dalam bahasa off-the-shelf, yang kebanyakn diterapkan pada suatu game engine.
Beberapa mesin game komersial dilengkapi dengan dukungan bahasa scripting ini (Unreal dan Quake oleh id Software, misalnya). Hal ini memberikan solusi lengkap dalam efisiensi waktu pembuatan game, karena sebagian besar bahasa yang ada yang digunakan dalam game pada awalnya tidak dirancang untuk tujuan ini. Namun penggunaan bahasa off-the-shelf ini memiliki hubungan dengan kelebihan dan kekurangan yang perlu dievaluasi sebelum kita membuat pilihan.

a)   Kelebihan
Bahasa-bahasa off-the-shelf cenderung lebih lengkap dan handal daripada bahasa yang kita tulis sendiri. Dengan menggunakan cara ini, kita mendapatkan manfaat dari banyaknya waktu pengembangan, upaya debugging, dan optimasi yang telah dilakukan oleh pihak lain sebelumnya.
Bila kita telah menggunakan bahasa off-the-shelf, pengembangan tidak berhenti sampai di situ. Terdapat sebuah komunitas pengembang yang mungkin akan melanjutkan pengembangan pada bahasa tersebut, memperbaiki dan menghapus bug. Banyak bahasa open source menyediakan forum web di mana masalah dapat dibicarakan, bug dapat dilaporkan, dan contoh kode dapat didownload. Dukungan yang berkelanjutan Ini dapat sangat berharga dalam memastikan sistem scripting yang kuat dan bebas bug.
Banyak game, terutama pada PC, ditulis dengan tujuan yang memungkinkan konsumen untuk mengedit perilaku mereka. Konsumen membangun objek baru, level, atau mods keseluruhan dapat memperpanjang hidup sebuah rak game. Menggunakan bahasa scripting yang umum memungkinkan pengguna untuk mempelajari bahasa yang mudah dengan menggunakan tutorial, contoh kode, dan penerjemah baris perintah yang dapat didownload dari web. Kebanyakan bahasa memiliki newsgroup atau forum web di mana pelanggan bisa mendapatkan nasihat tanpa menyebut garis bantuan penerbit.

b)   Kekurangan
Bila kita membuat game menggunakan bahasa ini, anda dapat memastikan itu tidak persis apa yang anda inginkan. Karena game peka terhadap keterbatasan memori dan kecepatan, anda dapat menaruh fitur yang anda butuhkan saja ke dalam bahasa. Seperti yang kita lihat pada re-entrancy, anda juga dapat menambahkan fitur yang khusus untuk aplikasi game dan yang biasanya tidak dimasukkan dalam bahasa umum.
Dengan cara yang sama, bila ada sesuatu yang salah dengan bahasa tersebut, staf anda yang tahu bagaimana susunan game dan biasanya dapat menemukan bug dan menciptakan solusi yang lebih cepat.
Setiap kali anda menyertakan kode pihak ketiga ke dalam game anda, anda akan kehilangan kontrol atas hal itu. Dalam kebanyakan kasus, keuntungan lebih besar daripada kurangnya fleksibilitas, tapi hanya untuk beberapa proyek kontrol.

C.   Bahasa Open-Source

Banyak bahasa scripting game populer yang dirilis di bawah lisensi open source. Software open-source dirilis di bawah lisensi yang memberikan hak user untuk memasukkannya ke dalam perangkat lunak mereka sendiri tanpa membayar biaya tambahan. Beberapa lisensi open source mengharuskan user membebaskan produk open source yang baru dibuat. Ini jelas tidak cocok bagi game komersial.
Open-source software, seperti namanya, juga memungkinkan akses untuk melihat dan mengubah source code. Hal ini membuat mudah untuk menarik studio dengan memberikan kebebasan untuk menarik keluar setiap kode asing atau kode yang tidak efisien. Beberapa lisensi open source, bahkan yang mengijinkan anda untuk menggunakan bahasa dalam produk komersial, mengharuskan anda membebaskan modifikasi bahasa itu sendiri. Ini mungkin akan menjadi masalah bagi proyek anda.
Walaupun ada atau tidak sebuah bahasa scripting open source, terdapat implikasi hukum dari penggunaan bahasa tersebut dalam proyek anda. Sebelum menggunakan teknologi luar dalam produk yang ingin anda distribusikan (apakah komersial atau tidak), anda harus selalu berkonsultasi dengan pengacara properti intelektual yang baik. Buku ini tidak bisa dengan benar menyarankan anda pada implikasi hukum dari penggunaan bahasa pihak ketiga. Isi komentar berikut ini dimaksudkan sebagai indikasi dari hal-hal yang mungkin menimbulkan kekhawatiran. Ada banyak lainnya.
Bila Anda menggunakan perangkat lunak open source, tidak ada orang yang melisensi perangkat lunak untuk anda, dan karena anda tidak menulis itu, anda tidak tahu apakah bagian dari itu dicuri atau disalin. Kecuali jika anda sangat berhati-hati, anda tidak akan tahu kalau itu merusak paten atau hak kekayaan intelektual. Hasilnya adalah bahwa anda bisa bertanggung jawab atas pelanggaran tersebut.
Anda perlu memastikan bahwa anda memahami implikasi hukum dari penggunaan "bebas" software. Hal ini tidak selalu menjadi pilihan termurah atau terbaik, meskipun biaya di muka yang sangat rendah. Berkonsultasilah dengan seorang pengacara sebelum anda membuat komitmen.

D.   Tahapan Pengolahan Bahasa

Memulai sebagai teks dalam sebuah file teks, script biasanya  melewati empat tahap:  tokenization,
parsing (penguraian), kompilasi, dan interpretasi.
Keempat tahapan membentuk sebuah jalur, masing-masing memodifikasi masukan untuk mengubahnya menjadi format yang lebih mudah dimanipulasi. Tahapan tidak mungkin terjadi satu demi satu. Semua langkah bisa saling terkait, atau set tahapan bisa membentuk fase terpisah. Script mungkin berupa tokenized, diuraikan, dan dikompilasi secara offline, misalnya untuk interpretasi kemudian.

1)   Tokenizing
Tokenizing mengidentifikasi unsur-unsur dalam teks. Sebuah file teks hanya berisi serangkaian karakter (dalam pengertian karakter ASCII). Hasil tokenizer keluar sebagai kumpulan byte tertentu dan jenis dari kelompok tertentu yang membentuk mereka.

2)   Parsing
Makna dari sebuah program adalah sangat hirarkis: nama variabel dapat ditemukan dalam sebuah statement pemberian nilai, ditemukan di dalam pernyataan IF-, yang ada di dalam tubuh fungsi, di dalam definisi kelas, maupun di dalam sebuah deklarasi namespace, misalnya. Parser mengambil urutan token, mengidentifikasi peran masing-masing kode dalam program, dan mengidentifikasi struktur hirarkis keseluruhan program.

3)   Compiling
       Compiler mengubah parse tree ke dalam kode byte yang dapat dijalankan oleh interpreter. Kode byte biasanya berbentuk data biner berurutan. Compiler non-optimasi biasanya berisi output kode byte sebagai terjemahan literal dari parse tree.

4)   Interpreting
Tahap akhir dari serangkaian ini ialah menjalankan kode byte. Dalam sebuah compiler untuk bahasa seperti C atau C++, produk akhir akan menjadi mesin instruksi yang dapat langsung dijalankan oleh prosesor. Dalam bahasa scripting, anda sering perlu untuk menyediakan layanan (seperti re-entrancy dan eksekusi yang aman) yang tidak mudah dicapai dengan bahasa mesin.
Kode byte akhir dijalankan pada sebuah "mesin virtual". Ini secara efektif menjadi sebuah emulator untuk sebuah mesin yang belum pernah ada di hardware. Anda menentukan instruksi agar mesin dapat mengeksekusi, dengan instruksi kode byte.

E.    Contoh bahasa yang sering digunakan

1)   Lua
Lua adalah bahasa prosedural sederhana yang dibangun dari dasar ke atas sebagai bahasa embedding. Desain bahasa didorong oleh ekstensibilitas. Tidak seperti kebanyakan bahasa embedded, hal ini tidak terbatas untuk menambahkan fungsi baru atau tipe data di C atau C + +. Cara kerja bahasa Lua juga dapat men-tweak.
Lua memiliki sejumlah kecil core library yang menyediakan fungsionalitas dasar. Core yang relatif tanpa sifat khusus merupakan bagian objek tersebut, bagaimanapun. Dalam game anda tidak mungkin membutuhkan library untuk memproses apa pun kecuali matematika dan logika. Core kecil ini mudah dipelajari dan sangat fleksibel.

2)   Python
Python adalah mudah dipelajari, bahasa scripting berorientasi objek dengan ekstensibilitas baik dan dukungan embedding. Python menyediakan dukungan yang sangat baik untuk pemrograman bahasa campuran, termasuk kemampuan untuk secara transparan memanggil C dan C + + dari Python. Python memiliki dukungan untuk fungsi re-entrant sebagai bagian dari bahasa inti dari versi 2.2 dan seterusnya (disebut Generator).
Python memiliki sejumlah besar library yang tersedia untuk itu dan memiliki komunitas yang sangat besar dari usernya. Pengguna python memiliki reputasi untuk menolong, dan newsgroup comp.lang.python merupakan sumber troubleshooting dan saran yang sangat baik.
Kelemahan utama Python adalah dalam kecepatan dan ukuran. Meskipun mengalami kemajuan signifikan dalam kecepatan eksekusi telah dibuat selama beberapa tahun terakhir, namun masih terasa lambat ketika dijalankan. Python bergantung pada lookup tabel hash (oleh string) bagi banyak operasi fundamental (fungsi panggilan, akses variabel, object-oriented programming). Hal ini menambahkan banyak biaya overhead.

F.    Tools: Sekilas tentang Lex dan Yacc

Lex dan Yacc adalah dua tool utama yang digunakan dalam membangun tokenizers dan parser. Masing-masing memiliki implementasi yang berbeda dan kebanyakan disediakan untuk platform UNIX (namun tersedia versi untuk platform lain juga). Varian Linux yang sering digunakan contohnya adalah Flex dan Bison.
Untuk membuat tokenizer dengan Lex, kita harus menjelaskan apa yang membuat token yang berbeda dalam bahasa anda. Ini akan menghasilkan kode C yang akan mengkonversi aliran teks dari program ke dalam aliran kode token dan data token, kemudian menghasilkan output yang lebih baik dan lebih cepat daripada kita membuatnya sendiri.
Yacc digunakan untuk membangun parser. Dibutuhkan representasi dari tata bahasa kita. Tata bahasa ini kemudian diberikan dalam seperangkat aturan yang menunjukkan bagaimana struktur yang lebih besar yang terbuat dari yang sederhana atau dari token.
  
 E. Artificial Intelligence pada Game
 
Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia.
Game AI adalah aplikasi untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak ikut bermain (NPC = Non Playable Character). Peranan kecerdasan buatan dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan menusia untuk berinteraksi dengan sesama manusia. Contoh media interaksi ialah:
·         Penglihatan (vision)
·         Suara (voice), ucapan (speech)
·         Gerakan anggota badan ( gesture)
Untuk pembentukan Artificial Intelligence pada game ternyata digunakan pula algoritma, yaitu jenis pohon n-ary untuk suatu struktur. Implementasi pohon (tree) ini biasa disebut game tree. Berdasarkan game tree inilah sebuah game disusun algoritma kecerdasan buatannya. Artificial intellegence yang disematkan dalam sebuah game yang membentuk analisis game tree biasanya merepresentasikan kondisi atau posisi permainan dari game sebagai suatu node, dan merepresentasikan langkah yang mungkin dilakukan sebagai sisi berarah yang menghubungkan node kondisi tersebut ke anak (child) sebagaimana representasi suatu pohon (tree).
Namun, biasanya representasi langsung tersebut mempunyai kelemahan, yaitu representasi data pohon akan menjadi sangat lebar dan banyak. Mungkin bagi sebuah mesin komputer mampu melakukan kalkulasi sebanyak apapun masalah, namun game tree yang lebar dan besar memberikan beberapa masalah, antara lain konsumsi proses memori, kapasitas penyimpanan yang cukup besar dan kinerja yang kurang pada konsol game berspesifikasi rendah. Karena itu dibentuklah beberapa algoritma dan penyederhanaan bagi sebuah game tree.
Pada salah satu contoh game klasik, yaitu tic tac toe, penyederhanaan dapat dilakukan dengan berbagai metode. Salah satu diantaranya adalah minimax. Metode ini berhasil diterapkan dan memberikan nilai reduksi yang cukup signifikan. Dan tidak hanya bisa digunakan secara monoton, minimax juga bisa digunakan untuk game-game yang lebih rumit seperti catur, tentunya dengan algoritma dan representasi berbeda.
Minimax yang merupakan salah satu metode penerapan (implementasi) pohon n-ary pada suatu game, menandakan bahwa implementasi struktur (pohon khusunya) sangatlah diperlukan pada pembuatan dan penerapan Artificial Intelligence, dan tidak menutup kemungkinan ilmu dan metode baru yang lebih canggih akan ditemukan di masa depan.

Beberapa karakteristik dan batasan game untuk game playing :
Dimainkan oleh 2 ( dua ) pemain: manusia dan komputer. Para pemain saling bergantian melangkah.
1.      Perfect Information Game
Kedua pemain sama-sama memiliki akses pada informasi yang lengkap tentang keadaan permainan, sehingga tidak ada informasi yang tertutup bagi lawan mainnya.
2.      No Determined by Chances
Tidak melibatkan faktor probabilitas, misalnya dengan menggunakan dadu.
3.      No Phsychological Factors
Tidak melibatkan faktor psikologi, seperti "gertakan" (misalnya Poker)
4.      No Oversight Errors. Smart Opponen
Lawan diasumsikan pintar juga, jadi jangan mengharap lawan khilaf, sehingga terjadi salah langkah.
5.      Beberapa contoh permainan yang biasa digunakan sebagai contoh kasus Game Playintyle = "font-family:courier new;"> Last One Loses n
                                ·      n-coins Grundy's Game
                                ·      Slide-5
·      Tic-Tac-Toe
·      Checkers
                                ·      Go 
                                ·      Nim
                                ·      Othello
                                ·      Chess

F. Arsitektur Game Engine

 A.     Game Engine
Game engine adalah perangkat lunak yang digunakan untuk menciptakan perangkat lunak lain, dalam hal ini adalah game. Kita bisa menyebutnya game authoring software, game creator tool, software pembuat game, dan sebagainya.

 B.      Sejarah dari Game Engine
Istilah “Game Engine” muncul pada pertengahan 1990-an, terutama dalam kaitannya dengan game 3D seperti orang pertama shooters (FPS). (Lihat juga: pertama-orang jujur mesin).Begitulah popularitas id Software ’s Doom dan Quakepermainan yang, daripada bekerja dari nol, lain pengembangberlisensi bagian inti dari perangkat lunak dan grafis yang dirancang mereka sendiri, karakter, senjata, dan tingkat-”permainan isi” atau “permainan aset. “ Pemisahan permainan-aturan tertentu dan data dari konsep-konsep dasar seperti tabrakan dan permainanentitas yang berarti bahwa tim bisa tumbuh dan mengkhususkan.
Kemudian permainan, seperti Quake III Arena dan Epic Games ’s 1998 Unreal dirancang dengan pendekatan ini dalam pikiran, dengan mesin dan konten dikembangkan secara terpisah.Praktek seperti perizinan teknologi telah terbukti menjadi aliran pendapatan tambahan yang berguna untuk beberapa pengembang game, sebagai lisensi tunggal untuk high-end mesin permainan komersial dapat berkisar dari US $ 10.000 hingga jutaan dolar, dan jumlah pemegang lisensi dapat mencapai beberapa lusin perusahaan (seperti terlihat dengan Unreal Engine).Setidaknya, mesin dapat digunakan kembali membuat sekuel permainan berkembang lebih cepat dan lebih mudah, yang merupakan keuntungan berharga dalam persaingan industri video game.
Sekarang hampir semua perusahaan game memiliki game engine mereka sendiri, menggunakannya untuk membuat game mereka, dan menyimpannya untuk diri sendiri. Semakin lama kebutuhan untuk game engine yang makin modern semakin bertambah. Waktu demi waktu, game engine yang mereka kembangkan sendiri mulai dirasa terlalu mahal untuk dikembangkan lebih lanjut. Hal ini memicu beberapa developer untuk menciptakan game engine yang terbuka untuk di franchise kan. Sebagai contoh adalah id Tech dan Unreal Engine. Game Engine yang dijual dan di franchisekan secara umum semacam ini disebut dengan middleware. Middleware menawarkan harga yang relatif lebih murah, dan bagi kebanyakan studio game, menggunakan middleware merupakan solusi cepat dan ekonomis ketimbang harus membangun sendiri engine game mereka. Konsep dari game engine sebenernya cukup gampang, yaitu bahan dasar yang diperlukan sebuah game untuk menjalankan tugasnya, merender pixel demi pixel, menghitung physiscs, memperkirakan input tombol, dan lain hal, yang memungkinkan developer kreatif dapat membuat sebuah game dengan engine yang sama menjadi unik satu sama lain. Di analogikan sebagai sebuah mobil, game engine sudah merupakan bagian mobil, sekitar 50% jadi. Mesin dan rangkaian sistem pengapian, sampai pembuangan. Kurang body dan aksesoris. Sebuah game engine memungkinkan penggunaan kembali komponen komponen yang dapat mempercepat hadirnya game menjadi nyata di layar monitor mu. Beberapa diantara nya yang termasuk dengan itu adalah deteksi tubrukan, tampilan grafis, setting dalam game, artificial intelligence dan lain lain. Semua komponen tadi disatukan dalam satu pake game engine. Artist dan Developer, dapat menambahkan pustaka texture dan model sendiri untuk dijadikan tokoh utama atau setting dunia dalam sebuah engine. Sekali lagi dalam analogi game, model dan texture dalam game engine bisa dibilang sebagai body dan aksesoris mobil. Sebuah game engine dibagi lagi menjadi dua bagian besar. Yaitu API dan SDK. API ( Applicaiton Programming Interfaces ) adalah bagian operating system, services dan libraries yang diperlukan untuk memanfaatkan beberapa feature yang diperlukan. Dalam hal ini contohnya DirectX. Sementara SDK adalah kumpulan dari libraries dan API yang sudah siap digunakan untuk memodifikasi program yang menggunakan operating system dan services yang sama. Biasanya, game engine menyertakan keduanya. Contohnya dalam Unreal Engine, menyiapkan antarmuka baku bagi programmer untuk menciptakan game nya dengan mudah, melalui scripting engine, yang disebut UnrealScript, dan juga libraries, yang berisi model standar dan texture standar dan juga world editor yang disebut sebagai UnrealED.

 C.      Arsitektur Game Engine
   Arsitek adalah pelajaran untuk membuat rancangan dari bangunan.        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.
 Tahap awal dari merancang suatu game adalah memilih jenis game yang akan  dibuat agar dapat lebih terfokus dalam mengerjakannya. Selanjutnya adalah  mendesaian game yang akan dibuat. Setelah kita memiliki desain game,  langkah berikutnya adalah mengimplementasikan desain tersebut menjadi  source code. Apabila source telah selesai dirancang, maka game tersebut  dapat dimainkan dan digunakan sesuai yang diinginkan oleh sang pembuat  game. Apakah game tersebut dibuat untuk dikomersilkan atau dikembangkan  oleh orang lain.

 D.     Tipe-Tipe Game Engine
 Game engine biasanya datang dengan macam-macam jenis dan tujuannya. Ada 3  tipe game engine yaitu sebagai berikut :
 ·          Roll Your-Game Engine
 ·         Mostly-Ready-Game Engine
 ·         Point-and-Click Engine

 E.      Jenis-Jenis Game Engine
1. Freeware
Blender
Golden T Game Engine (GTGE)
DXFramework
Ogre
Aleph One
Axiom Engine
Allegro Library
Box2D
Build Engine
Cube
Cube 2
DarkPlaces
jMonkeyEngine (jME)
Panda3D
Pipmak Game
Unity

2. Berbayar/ Commercial
Alamo
A.L.I.V.E
BigWorld
DXStudio
Dunia Engine
Euphoria
GameStudio
Jade Engine
Jedi
Medusa
RPG Maker VX
RPG Maker XP
RPG Maker 2003
RPG Maker 95
Vision Engine
Visual3d




G. Interaksi Fisik dalam teknologi Game

Game Engine adalah perangkat lunak yang digunakan untuk menciptakan perangkat lunak lain, dalam hal ini adalah game. Kita bisa menyebutnya game authoring software, game creator tool, software pembuat game, dan sebagainya.
Efek fisik dalam game engine
Game konsol modern saat ini sudah dilengkapi dengan perangkat gerak yang melibatkan aktivitas fisik sehingga permainan video game dapat sekaligus melatih otot dan gerak selayaknya berolahraga, seperti halnya yang disediakan oleh konsol Nintendo Wii, PS3 Move, atau yang lebih canggih lagi, Xbox 360 Kinect.
Game – game yang melibatkan aktivitas fisik seperti game tinju, tennis, sepakbola dsb, yang mengharuskan anda untuk menggerakkan tangan dan anggota tubuh anda sesuai tema video game yang dimainkan.  Untuk mendapatkan seperangkat konsol tersebut tidaklah perlu mengeluarkan kocek yang dalam. Ketiganya memiliki harga yang berlainan yang dapat disesuaikan dengan kocek anda.
Efek fisik dalam game ada 2, yaitu positif dan negatif :
Efek positif dalam game :
  1. Setiap game memiliki tingkat kesulitan/Level yang berbeda. Umumnya permainan ini dilengkapi pernak-pernik senjata, amunisi, karakter dan peta permainan yang berbeda. Untuk menyelesaikan level atau mengalahkan musuh secara efisien diperlukan strategi. Permainan game online akan melatih pemainnya untuk dapat memenangkan permainan dengan cepat, efisien dan menghasilkan lebih banyak poin.
  2. Meningkatkan konsentrasi. Kemampuan konsentrasi pemain game online akan meningkat karena mereka harus menyelesaikan beberapa tugas, mecari celah yang mungkin bisa dilewati dan memonitor jalannya permainan. Semakin sulit sebuah game maka semakin diperlukan tingkat konsentrasi yang tinggi.
  3. Meningkatkan koordinasi tangan dan mata. Penelitian yang dilakukan di Manchester University dan Central Lanchashire University menyatakan bahwa orang yang bermain game 18 jam seminggu atau sekita dua setengah jam perhari dapat meningkatkan koordinasi antara mata dan tangan
  4. meningkatkan kemampuan membaca. Psikolog dari Finland Univesity menyatakan bahwa game meningkatkan kemampuan membaca pada anak-anak. Jadi pendapat yang menyatakan bahwa jenis permainan ini menurunkan tingkat minat baca anak sangat tidak beralasan.
  5. Meningkatkan kemampuan berbahasa inggris. Sebuah studi menemukan bahwa gamers mempunyai skil berbahasa inggris yang lebih baik meskipun tidak mengambil kursus pada masa sekolah maupun kuliah. Ini karena banyak alur cerita yang diceritakan dalam bahasa inggris dan kadang kala mereka chat dengan pemain lain dari berbagai negara.
  6. Meningkatkan pengetahuan tentang komputer. untuk dapat menikmati permainan dengan nyaman dan kualitas gambar yang prima seorang peman game online akan berusaha mencari informasi tentang spesifikasi komputer dan koneksi internet yang dapat digunakan untuk memainkan game tersebut. Karena pengguna komputer aktif biasanya mereka juga akan belajar troubleshooting komputer dan overclocking.
  7. Meningkatkan kemampuan mengetik. Kemampuan mengetik sudah pasti meningkat karena mereka menggunakan keyboard dan mouse untuk mengendalikan permainan.
Efek negatif dalam game :
  1. Kecanduan
Seperti yang disebutkan pada awal tulisan ini, kebahagiaan dan kesenangan yang dirasakan para gamer pada saat memainkan game, akan membuat orang tersebut ‘merindukan’ suasana hati yang mereka rasakan selama bermain game, sehingga mereka akan cenderung kembali bermain dan bermain lagi untuk mencari sensasi yang mereka rasakan tersebut. Untuk mencegah hal ini, adalah dengan membatasi waktu bermain game. Misalnya, 2 atau 3x dalam satu minggu dengan jangka waktu 1-2 jam.
  1. Membatasi Hubungan Sosial
Pada dampak positif  bermain game telah dijelaskan bahwa bermain game dapat meningkatkan hubungan sosial secara online dengan para gamer diseluruh dunia. Sebaliknya dalam hal ini justru akan membatasi hubungan sosial di kehidupan nyata mereka. Banyak sekali para pecandu game memiliki sedikit waktu untuk membina hubungan sosial di kehidupan nyata mereka sehingga kemampuan berkomunikasi dan interaksi secara fisik dan oral menjadi tidak terasah.
  1. Mengganggu Kesehatan
Tunggu! Bukankah dalam poin sebelumnya disebutkan bahwa bermain game dapat menyehatkan karena banyak game yang harus melibatkan aktivitas fisik?
Hal itu memang benar, aktivitas dan gerakan fisik dapat menyehatkan tubuh. Akan tetapi dengan bermain game yang terlalu intensif dapat mengganggu kesehatan mata, karena bagaimana pun juga permainan video game memerlukan kontak langsung antara mata dan layar monitor / TV yang dapat menyebabkan kerusakan pada mata atau menurunnya daya lihat untuk efek kedepannya.
Collision Detection
Algoritma untuk mendeteksi collision (tabrakan) sangat dibutuhkan untuk program game. Flash mulai versi 5 ke atas menyediakan method yang bernama hitTest untuk memeriksa apakah sebuah movie clip bertabrakan dengan movie yang lain. Sebelum method hitTest ini tersedia, seorang programmer Flash harus mendeteksi secara manual koordinat sebuah movie clip, apakah movie clip ini bertabrakan dengan movie clip lain. Cara ini sangat merepotkan karena harus mempertimbangkan pula ukuran movie clipnya

H. User Interface pada Game

     Antarmuka (Interface) merupakan mekanisme komunikasi antara pengguna (user) dengan sistem. Antarmuka (Interface) dapat menerima informasi dari pengguna (user) dan memberikan informasi kepada pengguna (user) untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan suatu solusi. Antarmuka (Interface)  berfungsi untuk menginput pengetahuan baru ke dalam basis pengetahuan sistem pakar (ES), menampilkan penjelasan sistem dan memberikan panduan pemakaian sistem secara berurutan  sehingga pengguna mengerti apa yang akan dilakukan terhadap suatu sistem.
Desain user interface dalam game berbeda dari desain UI lainnya karena melibatkan unsur tambahan fiksi. Fiksi melibatkan avatar dari pengguna yang sebenarnya, atau player. Sebuah Desain Antarmuka (Interface) pada suatu Game mempengaruhi kenyamanan dan sejauh mana user/pengguna meminati Game tersebut.
Dalam desain user interface game, terdapat sebuah teori yang dikemukakan oleh Erik Fagerholt dan Magnus Lorentzon dari Chalmers University of Technology. Dalam tesisnya mereka menulis tesis tentang desain user interface berjudul Beyond the HUD - User Interfaces for Increased Player Immersion in FPS
Games
. Mereka memperkenalkan istilah berbagai jenis interface yang berkaitan dengan desain video game.
HUD itu sendiri kepanjangan dari Heads – up display, merupakan metode dimana informasi secara visul disampaikan kepada pemain sebagai bagian dari antarmukan pengguna permainan. Biasanya menunjukkan bar/kotak HP(Health Point) ataupun MP(Mana Point) dan biasanya muncul  di atas kepala karakter. Fungsi HUD ini untuk memudahkan pemain mengetahui kondisi karakter dalam permainan.
Dalam desain antarmuka game terdapat beberapa elemen yang diantaranya adalah :
1.     Diagetic: Desain antarmuka yang termasuk dalam permainan game  yaitu yang dapat dilihat dan didengar oleh karakter dalam permainan. Yang dimaksudkan pada antarmuka diagetic ini segala sesuatu yang terlihat terkecuali elemen-elemen non-diegetic seperti HUD, Kursor mouse, Informasi dari Komputer,dll  Contoh: Interface  dalam game Dead Space, pada game Assassin’s Creed

2.       Non-diegetic: Desain  Antarmuka yang diberikan sebagai tambahan di luar dunia game itu sendiri, hanya terlihat dan terdengar ke pemain di dunia nyata. Sehingga seakan-akan karakter dalam dunia game tidak melihatnya. Mass Effect 3 menggunakan banyak Non-diegetik elemen UI untuk menginformasikan pemain senjata karakter dipilih dan kekuasaan - antara lain.

3.    Spatial: Elemen User Interface yang disajikan dalam ruang permainan 3D dengan atau tanpa suatu entitas dari dunia permainan yang sebenarnya (diegetik atau non-diegetik). Outline karakter dalam Left 4 Dead adalah contoh dari non-diegetik User Interface spatial.

4.       Meta: Gambaran yang bisa muncul dalam dunia game, namun tidak selalu divisualisasikan spasial untuk pemain.Contoh yang paling jelas adalah efek ditampilkan di layar, seperti percikan darah pada kamera untuk menunjukkan kerusakan. Contoh: Duty Calls- The Calm Before the Storm

penggunaan icon pada game juga mempengaruhi kenyamanan pemain dalam memilih perintah-perintah pada game. Desain icons dalam user Interface dibedakan menjadi dua jenis yaitu picons dan micons.
1.     PICONS adalah singkatan dari Personal ICONS  yaitu "ikon pribadi". Berbentuk kecil, gambar terbatas dan digunakan untuk mewakili pengguna dan domain di internet, disusun dalam database sehingga gambar yang sesuai untuk alamat e-mail yang diberikan dapat ditemukan. Selain pengguna dan domain, ada picons database untuk newsgroup Usenet dan prakiraan cuaca. Para picons berada dalam format XBM monokrom atau XPM warna dan format GIF.
a.                     Domain          : logo untuk domain Internet
b.                     Misc                : picons untuk akun umum
c.                     News               : ikon untuk Usenet newsgroup
d.                     Unknown       : standar picons karena sangat tinggi tingkat domain Internet
e.                    Usenix             : wajah gambar peserta konferensi Usenix
f.                       Users               : picons piutang individu (sering gambar wajah)
g.                     Weather          : ikon untuk menampilkan ramalan cuaca

2.        MICONS adalah Moving ICONS atau picons yang bergerak (dalam hal ini berupa file GIF animasi). Micons ini adalah animasi dari Picons tetapi bisa juga berupa video khusus yang dijadikan micons.
Keunggulan picons
a.    Hemat kapasitas
b.   Lebih praktis
c.    Tidak membuat beban pada kinerja komputer
Keunggulan micons
a.       Icons menjadi terlihat menyenangkan
b.      Seperti melihat video dengan kapasitas kecil
I. Penampilan Grafik Scene Game Komputer : Visibility 

 

Pengertian Visibility merupakan  tampilan grafik scene game pada komputer. Bagaimana sebuah game terlihat oleh user agar menarik dan berkualitas sehingga user menikmati game tersebut.
Biasanya pada video game terdapat istilah scene 2.5D. Sebenarnya istilah tersebut tidak berbeda jauh dari scene 2D (dua dimensi). Hanya saja 2.5D memiliki beberapa fitur tambahan berupa efek cahaya, bayangan dan sebagainya  yang dibuat agar seakan-akan menyerupai scene 3D.
Biasanya gameplaynya memang mirip game 2D dimana kita hanya bisa bergerak secara horizontal dan vertical namun beberapa gambarnya di render secara 3D. Teori grafik 2.5D ini biasa juga disebut dengan pseudo-3D sedangkan pada istilah game lebih dikenal dengan isometric/diametric/trimetric projection.

Game bertipe ini menggunakan 2 macam tipe pemodelan:
·         3 Dimensi object/model
ini merupakan model/object 3D yang nantinya akan dijadikan sebagai karakter utama, bangunan, object-object seperti senjata, musuh, permukaan tanah, pohon, dan bukit. Object 3D seperti ini bisa dibuat dengan menggunakan program seperti 3DS Max, Maya, Hash, dan Blender.

·         2 Dimensi graphic
Gambar 2D juga berperan dalam membuat game ini yaitu sebagai texture untuk object, sebagai latar belakang seperti  langit dan pemandangan, sebagai meteran untuk nyawa dan gambar untuk speedometer pada game racing.

Kegunaan 2.5D dalam game adalah sebagai pengaturan gerakan seperti golden axe, double dragon, path finding yang biasanya cukup sederhana. Hal ini berguna untuk mengikuti posisi pemain dan agar game lebih 'hidup'. Pada video game, biasanya scene 2.5D ini lebih digunakan dalam visualisasi geografis (GVIS) untuk membantu memahami representasi visual spasial-kognitif atau visualisasi 3D.


J. Game Berjaringan

           Game Online atau sering disebut Online Games adalah sebuah permainan (games) yang dimainkan di dalam suatu jaringan (baik LAN maupun Internet). Sebuah game online adalah permainan video yang dimainkan selama beberapa bentuk jaringan komputer , menggunakan komputer pribadi atau konsol video game. Jaringan ini biasanya internet atau teknologi setara, tetapi game selalu digunakan apa pun teknologi yang saat ini:modem sebelum Internet, dan keras kabel terminal sebelum modem.Perluasan game online telah mencerminkan keseluruhan perluasan jaringan komputer dari jaringan lokal kecil ke internet dan pertumbuhan akses internet itu sendiri. Game online dapat berkisar dari yang sederhana lingkungan berbasis teks grafis game menggabungkan kompleks dan dunia maya dihuni oleh banyak pemain secara bersamaan. Banyak permainan online terkait komunitas online, membuat game online suatu bentuk kegiatan sosial di luar permainan pemain tunggal.

Perkembangan game online sendiri tidak lepas juga dari perkembangan teknologi komputer dan jaringan computer itu sendiri. Meledaknya game online sendiri merupakan cerminan dari pesatnya jaringan computer yang dahulunya berskala kecil (small local network) sampai menjadi internet dan terus berkembang sampai sekarang. Games Online saat ini tidaklah sama seperti ketika games online diperkenalkan untuk pertama kalinya. Pada saat muncul pertama kalinya tahun 1960, computer hanya bisa dipakai untuk 2 orang saja untuk bermain game. Lalu muncullah computer dengan kemampuan time-sharing sehingga pemain yang bisa memainkan game tersebut bisa lebih banyak dan tidak harus berada di suatu ruangan yang sama (Multiplayer Games).

Lalu pada tahun 1970 ketika muncul jaringan computer berbasis paket (packet based computer networking), jaringan computer tidak hanya sebatas LAN saja tetapi sudah mencakup WAN dan menjadi Internet. Game online pertama kali muncul kebanyakan adalah game-game simulasi perang ataupun pesawat yang dipakai untuk kepentingan militer yang akhirnya dilepas lalu dikomersialkan, game-game ini kemudian menginspirasi game-game yang lain muncul dan berkembang. Pada tahun 2001 adalah puncak dari demam dotcom, sehingga penyebaran informasi mengenai game online semakin cepat.
 Sumber :
http://rafiqamalyah.blogspot.co.id/2013/05/pengertian-teknologi-game.html
http://andriyanaade.blogspot.co.id/2015/04/teknologi-game-dan-bisnis-game-dalam.html
http://dinyfr.blogspot.co.id/2013/10/3d-engine-dan-scene-graph_20.html
https://www.academia.edu/3875722/Scripting_dalam_Pembuatan_Game
http://kecerdasanbuatan-gaming.blogspot.co.id/p/blog-page.html
http://febryansyahhhydro.blogspot.co.id/2015/04/arsitektur-game-engine.html
https://cyberxskynet.wordpress.com/2015/04/24/interaksi-fisik-dalam-teknologi-game/
http://hendrawansaputra1994.blogspot.co.id/2015/04/user-interface-pada-game.html
http://eituzed.blogspot.co.id/2015/04/penampilan-grafik-scene-game-komputer.html
http://amaliafataham.blogspot.co.id/2015/04/game-berjaringan.html