Minggu, 15 April 2018

Tugas 2 - Pengantar Teknologi Game # (Bab 7 - 8)

0

BAB 7
VISIBILITY

Visibility merupakan tampilan grafik scene game untuk computer. Yaitu mengenai bagaimana caranya sebuah game agar terlihat menarik oleh user dan berkualitas sehingga user menikmati game tersebut.

Pada sebuah video game terdapat istilah scene 2.5 dimensi. Pada scene 2.5 dimensi ini memiliki beberapa fitur yang tidak beda jauh dari 2 dimensi hanya saja ada beberapa fitur tambahan seperti efek cahaya, bayangan dan sebagainya yang dibuat agar seakan-akan menyerupai scene 3 dimensi. Teori 2.5 dimensi ini biasa juga disebut dengan pseudo-3D sedangkan pada istilah game lebih dikenal dengan isometric/diametric/trimetric projection.


1.1 gambar algoritma Ray Tracing


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

2 Dimensi Graphic
Graphic 2 dimensi berperan sebagai texture untuk object, sebagai latar belakang seperti langit dan pemandangan, sebagai meteran untuk nyawa dan gambar untuk speedometer pada game racing.


1.2 Game dengan sudut pandang isometric merupakan game 2D yang seolah olah menyerupai 3D


LEVEL of DETAIL
Pada komputer grafis, akuntansi untuk tingkat detail melibatkan menurunkan kompleksitas representasi objek 3D seperti bergerak menjauh dari penampil atau sesuai metrik lainnya seperti objek penting, kecepatan sudut pandang-relatif atau posisi.

Tingkat teknik detil meningkatkan efisiensi render dengan mengurangi beban kerja pada tahap pipa grafis, transformasi biasanya simpul. Kualitas visual berkurang dari model sering diperhatikan karena efek kecil pada objek muncul ketika jauh atau bergerak cepat.



1.3 penerapan level of detail


2 Game dengan Jalan Cerita dan Level yang menarik
* Deus Ex: Human Revolution

Deus Ex: Human Revolution adalah judul ketiga dari seri Deus Ex yang dikembangkan oleh Eidos Montreal dan dirilis pada bulan Agustus 2011. Permainan ini disambut para gamer dengan pujian yang luar biasa, terutama untuk jalan cerita dan aspek-aspek dari permainan yang sangat bergantung pada keputusan yang dibuat oleh pemain.

Game futuristik bertema revolusi umat manusia di masa depan ini menawarkan empat jenis gameplay: Combat, Hacking, Stealth dan Social. Pemain dapat bebas memilih jenis gameplay yang digunakan tergantung pada situasi yang cocok. Sebagai contoh, anda bisa melewati daerah tertentu menggunakan interaksi sosial seperti bercakap-cakap dan memilih dialog yang tepat, tanpa perlu beradu tembak maupun membunuh seorang musuh pun. Pemain bahkan dapat menerima trofi khusus apabila mampu menyelesaikan permainan tanpa membunuh satu orang NPC-pun.

Deus Ex: Human Revolution adalah permainan yang sangat taktis, dan keunggulan dari jalan cerita permainan ini terletak pada tangan anda sendiri, selaku seorang gamer sekaligus tokoh utama.


* Mass Effect 3

Mass Effect adalah game trilogi RPG bertema fiksi ilmiah yang dikembangkan oleh BioWare. Semua game dalam serial ini diakui memiliki kualitas yang sangat baik secara keseluruhan. Serial ini telah merevolusi video game dari sekedar permainan menjadi sebuah media untuk bercerita, seperti layaknya menyaksikan sebuah film di mana anda bisa terlibat secara langsung dan aktif di dalamnya. Alur cerita di serial ini benar-benar fantastis, di mana anda bisa memilih untuk menjadi seorang pasukan angkasa yang baik hati, atau komandan militer yang tak kenal ampun dalam mengorbankan anak buahnya.  Ada ratusan misi yang bisa anda mainkan dalam permainan ini, dan semuanya disajikan dengan cerita yang benar-benar brilian.  Jika anda mencari sebuah  RPG dengan storyline yang memukau, maka Mass Effect 3 harus anda mainkan sesegera mungkin, sebelum serial keempatnya dirilis ke pasaran.


BAB 8
GAME BERJARINGAN

Dalam pembahasan game berjaringan terdapat dua kata yaitu GAME dan JARINGAN dimana memiliki pengertian yang berbeda. Dalam penulisan kali ini akan membahas tentang Game Berjaringan. Satu per satu akan saya bahas sedikit banyak untuk memahami penulisan kali ini.

Bahasan pertama adalah game. Apa itu game? Game merupakan permainan yang menggunakan media elektronik, merupakan sebuah hiburan berbentuk multimedia yang dibuat semenarik mungkin agar pemain bias mendapatkan sesuatu sehingga adanya kepuasaan batin dari psikologis seseorang. 
Dalam game terdapat objek berupa dua dimensi hingga tiga dimensi, selain itu dalam game kita ketahui ada AI yang berfungsi sebagai alur jalan lawan (komputer) untuk melawan apa yang kita (user) input atau jalankan. Untuk jenis game terdapat banyak jenisnya. Seperti game strategi, RPG, FPS, hingga game action. Semua jenis game sering kita jumpai sebagai media hiburan. Akan tetapi belakangan ini banyak berkembang game yang dibuat dapat membuat kita (user) membuat kita ketagihan yang mengakibatkan lupa waktu.

Selanjutnya masuk dalam pembahasan jaringan. Apa itu jaringan? Pengertian umumnya adalah kumpulan system yang terdiri dari beberapa perangkat yang saling terhubung untuk mendapatkan hasil tujuan yang sama. Dapat dikatakan si perangkat-perangkat ini dihubungkan agar dapat terkoneksi satu sama lain. Jaringan dapat berupa sambungan yang terhubung ke dunia luas dengan koneksi internet, dan ada juga jenis jaringan offline dimana kita hanya dapat terkoneksi antar perangkat dengan system local area. Jadi, saat dimana ada suatu perangkat terhubung dengan perangkat lain, kita dapat katakana disana terdapat jaringan, entah itu online atau offline.

Dari bahasan pengertian dari GAME dan JARINGAN, dapat dikatakan bahwa Game Berjaringan adalah suatu  permainan dengan media elektronik yang dimainkan dengan cara terhubung dengan user lain dengan memanfaatkan sebuah alat penghubung jaringan agar dapat bermain game secara bersamaan dengan user lain yang berbeda tempat, waktu, hingga kondisi dengan bantuan jaringan yang dapat menghubungkan atau mengkoneksikan antar perangkat, entah itu device komputer atau perangkat lain untuk dapat bermain game.

Banyak contoh dari Game Berjaringan. contoh dari Game Berjaringan adalah Dota. Game atau permainan Dota pada PC ini cara mainnya adalah dengan kita terhubung antar perangkat yang menggunakan alat perantara seperti router atau yang lainnya yang dapat menguhubungkan sebuah jaringan, bahkan kita dapat bermain secara lokal atau offline bersama teman-teman dengan memanfaatkan jaringan.

Contoh lain dari Game Berjaringan adalah CS (Counter Strke) dimana game ini dapat kita mainkan bukan hanya bermain sendir, tapi bahkan dapat kita mainkan beramai ramai dengan teman-teman via jaringan lokal hingga online yang beda lokasi negara ataupun benua yang baermain secara realtime bersamaan.

Dalam Game Berjaringan ini kita pasti akan akrab dengan yang namanya PING. Ping ini berperan dalam masalah real time atau ketepatan waktu pergerakan game dengan perangkat lain. semakin besar ping maka semakin buruk, dan semakin kecil ping maka akan semakin baik dalam bermain Game Berjaringan ini. Jadi, bila ping besar maka pergerakan game akan tidak sinkron dengan gerakan game lain. Jadi disarankan bila bermain Game Berjaringan kita disarankan untuk menggunakan jaringan via kabel, karena bila kita gunakan jaringan via wireless maka akan banyak noise frekuensi yang dapat merusak sinyal ping keselarasan pergerakan game. dengan demikian kita dapat simpulkan bahwa untuk bermain Game yang Berjaringan unutk memakai internet atau jaringan via kabel agar lebih stabil.

Ps:
ini adalah Tugas Kelompok pada Mata Kuliah Pengantar Teknologi Game.
yang mengerjakan bab 7 - 8 adalah http://bangjek1ia13.blogspot.co.id/

Tugas 2 - Pengantar Teknologi Game # (Bab 5 - 6)

0

BAB 5
EFEK FISIK DALAM TEKNOLOGI GAME, COLLISION DETECTION

Collision Detection adalah proses pengecekan apaka beberapa objek spesial saling bertumpuk atau tidak. Jika ternyata ada dua buah objek saling bertempuk, maka kedua objek tersebut dapat dikatakan saling bertumpukkan. Meatode ini juga sering digunakan dalam membuat game antara objek dengan objek atau objek dengan sebuah frame atau pembatas. Sebagai contoh game Snake yang menggunakan metode Collision Detection antara kepala ular yang kita perintah lewat keyboard dengan objek tujuan atau pembatas sebuah arena game. Contoh lain pada Collision Detection adalah pada game shooter, yaitu pada peluru dan objek sasaran akan menjadi sebuag deteksi tabrakan. Untuk membuat metode deteksi tabrakan dengan menggunakan logika if-else.

Algoritma untuk mendeteksi Collision (tabrakan) sangat dibutuhkan untuk program game. Flash mulai versi 5 keatas menyediakan metode yang dinamakan hitTest untuk memeriksa apakah sebuah movie clip bertabrakan dengan movie yang lain. Sebelum metode hitTest ini tersedia, seorang programmer flash harus mendeteksi secara manual koordinat sebuah movie clip, apakah movie clip ini bertabrakan dengan movie clip yang lain. Tentunya cara ini sangat merepotkan karena harus mempertimbangkan pula ukuran movie clipnya.


BAB 6
USER INTERFACE PADA GAME KOMPUTER

Diegetic 
Elemen user interface yang diegetik ada dalam dunia permainan (fiksi dan geometris) sehingga pemain dan avatar dapat berinteraksi dengan mereka melalui visual, audible atau haptic. Elemen UI diegetik yang dieksekusi dengan baik dapat meningkatkan pengalaman narasi untuk pemain, memberikan pengalaman yang lebih mendalam dan terintegrasi. Salah satu game yang mengimplementasikan elemen diegetic adalah Assassin’s Creed. Assassin’s Creed berhasil menggunakan banyak pola diegetic meskipun itu diatur dalam dunia sejarah karena pemain pemain menggunakan sistem virtual reality di masa depan. Jadi cerita sebenarnya futuristik daripada sejarah.
Contohnya: Batman Arkham Knight

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: Grand Theft Auto 4 Berinteraksi dengan telepon di Grand Theft Auto 4 adalah contoh menarik. Ini meniru interaksi dunia nyata – Anda mendengar dering telepon dan ada penundaan sebelum karakter dan pemain menjawabnya. Elemen UI sebenarnya itu sendiri muncul pada pesawat hub 2D, jadi itu benar-benar elemen Meta, meskipun awal interaksi yang diegetik.
Contohnya: adalah efek ditampilkan di layar, seperti percikan darah pada kamera untuk menunjukkan kerusakan.

Spatial
Desain user interface dalam game berbeda dari desain UI lainnya karena melibatkan unsur tambahan fiksi. Fiksi melibatkan avatar dari pengguna yang sebenarnya, atau player. Pemain menjadi elemen tak terlihat, tapi kunci untuk cerita, seperti halnya narator dalam novel atau film. Fiksi ini dapat langsung dihubungkan ke UI, sebagian terkait, atau tidak sama sekali.
Contohnya: adalah Game historis tidak memiliki hubungan nyata untuk narasi game, kemungkinan besar karena game semasa dulu jarang memiliki unsur-unsur cerita yang kuat.

Non-Diagetic
Lalu ada elemen diegetic non-tradisional, elemen-elemen ini memiliki kebebasan untuk benar-benar dihapus dari fiksi permainan dan geometri dan dapat mengadopsi pemakaian visual mereka sendiri, meskipun sering dipengaruhi oleh arah seni permainan. Saya pikir ini unsur paling baik digunakan ketika bentuk diegetik, meta dan spasial memberikan batasan yang melanggar seamlessness atau konsistensi dari elemen UI.
Contohnya: Game Fable 3

Sumber
https://www.youtube.com/watch?v=6y7og-4NTHk
https://www.youtube.com/watch?v=NGh-Vh_NYO0
https://www.youtube.com/watch?v=nFxkL5L99Ts
http://digitalstudio.co.id/collision-detection.html
http://www.kamu-info.web.id/2016/03/pengantar-teknologi-game.html
http://www.organisasi.org/1970/01/efek-dampak-buruk-main-video-game-bagi-kesehatan-fisik-dan-mental.html


Ps:
ini adalah Tugas Kelompok pada Mata Kuliah Pengantar Teknologi Game.
yang mengerjakan bab 5 - 6 adalah https://zamanbahoela.blogspot.co.id/

Tugas 2 - Pengantar Teknologi Game # (Bab 3 - 4)

0

BAB 3
Artificial Intelligence Pada Game

Kecerdasan buatan (bahasa Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. 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), dan lain lain.

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)

Dalam video game, kecerdasan buatan digunakan untuk menghasilkan perilaku cerdas terutama dalam karakter non-pemain (NPC), sering simulasi kecerdasan manusia-seperti. Teknik yang digunakan biasanya memanfaatkan metode yang ada dari bidang kecerdasan buatan (AI). Namun, permainan istilah AI sering digunakan untuk merujuk kepada serangkaian luas algoritma yang juga mencakup teknik dari teori kontrol, robotika, komputer grafis dan ilmu komputer pada umumnya.

Kelebihan dan Kekurangan Artificial Intelligence
Walaupun perkembangan teknologi artificial intelligence dapat menggantikan posisi manusia, bahkan dapat dikatakan lebih pintar dari manusia, tetapi tetap saja perkembangan teknologi dengan menggunakan articial intelegensi tetap memiliki kekurangan dan keterbatasan.

Kelebihan Artificial Intelligence
1. Kemampuan menyimpan data yang tidak terbatas (dapat disesuaikan dengan kebutuhan).
2. Memiliki ketepatan dan kecepatan yang sangat akurat dalam system kerjanya
3. Dapat digunakan kapan saja karena tanpa ada rasa lelah atau bosan


Kekurangan Artificial Intelligence
1. Teknologi artificial intelegensi tidak memiliki common sense. common sense adalah sesuatu yang membuat kita tidak sekedar memproses informasi, namun kita mengerti informasi tersebut. Kemengertian ini hanya dimiliki oleh manusia.

2. Kecerdasan yang ada pada artificial intelligence terbatas pada apa yang diberikan kepadanya (terbatas pada program yang diberikan). Alat teknologi artificial intelligence tidak dapat mengolah informasi yang tidak ada dalam sistemnya.


Kelebihan dan kekurangan artificial intelligence dibandingkan dengan otak manusia, dalam hal waktu tunda propagasi Oleh karena itu manusia kalah dalam kecepatan perhitungan numerik. Dalam aspek lainnya otak manusia jauh di atas angin, terutama dalam tata letak dan jumlah elemennya. Sedangkan metoda pemrosesan secara paralel dalam komputer dikembangkan untuk menggantikan kedudukan manusia.


Gambar 3.1 Pacman



Decision Making
Decision Making adalah serangkaian algoritma yang dirancang dengan memasukan beberapa kemungkinan langkah yang bisa diambil oleh suatu aplikasi, Pada game ini decision making memberikan kemampuan suatu karakter untuk menentukan langkah apa yang akan diambil. Decision making dilakukan dengan cara menentukan satu pilihan dari list yang sudah dibuat pada algoritma yang dirancang. Algoritma decision making kerap digunakan dalam aplikasi game, akan tetapi algoritma decision making dapat diimplementasikan pada banyak aplikasi lain.

Decision Making terbagi menjadi 3 :
Decision Tree, State Machine dan Rule System

Decision Tree
Pohon Keputusan (Decision Tree) merupakan metode klasifikasi dan prediksi yang sangat kuat dan terkenal. Metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon keputusan yang merepresentasikan aturan. Aturan dapat dengan mudah dipahami dengan bahasa alami. Aturan ini juga dapat diekspresikan dalam bentuk bahasa basis data seperti SQL untuk mencari record pada kategori tertentu. 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).

Dalam situasi lain kemampuan untuk menjelaskan alasan pengambilan keputusan adalah sesuatu yang sangat penting. Misalnya pada perusahaan asuransi ada larangan resmi untuk mendeskriminasi berdasarkan variabel-variabel tertentu. Perusahaan asuransi dapat mencari sendiri keadaan yang mencerminkan bahwa mereka tidak menggunakan deskriminasi yang ilegal dalam memutuskan seseorang diterima atau ditolak. Sebuah pohon keputusan adalah sebuah struktur yang dapat digunakan untuk membagi kumpulan data yang besar menjadi himpunan-himpunan record yang lebih kecil dengan menerapkan serangkaian aturan keputusan. Anggota himpunan hasil menjadi mirip satu dengan yang lain dengan masing-masing rangkaian pembagian. Sebuah model pohon keputusan terdiri dari sekumpulan aturan untuk membagi sejumlah populasi yang heterogen menjadi lebih kecil, lebih homogen dengan memperhatikan pada variabel tujuannya. Sebuah pohon keputusan mungkin dibangun dengan seksama secara manual, atau dapat tumbuh secara otomatis dengan menerapkan salah satu atau beberapa algoritma pohon keputusan untuk memodelkan himpunan data yang belum terklasifikasi (Tan dkk, 2004).

Variabel tujuan biasanya dikelompokkan dengan pasti dan model pohon keputusan lebih mengarah pada perhitungan probabilitas dari masing-masing record terhadap kategori-kategori tersebut, atau untuk mengklasifikasi record dengan mengelompokkannya dalam satu kelas. Pohon keputusan juga dapat digunakan untuk mengestimasi nilai dari variabel kontinyu, meskipun ada beberapa teknik yang lebih sesuai untuk kasus ini.

Kelebihan dari metode pohon keputusan adalah:
1. Daerah pengambilan keputusan yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik
2. Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode pohon keputusan maka sampel diuji hanya berdasarkan kriteria atau kelas tertentu
3. Fleksibel untuk memilih fitur dari node internal yang berbeda, fitur yang terpilih akan membedakan suatu kriteria dibandingkan kriteria yang lain dalam node yang sama. Kefleksibelan metode pohon keputusan ini meningkatkan kualitas keputusan yang dihasilkan jika dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih konvensional
4. Dalam analisis multivarian, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu mengestimasikan baik itu distribusi dimensi tinggi ataupun parameter tertentu dari distribusi kelas tersebut. Metode pohon keputusan dapat menghindari munculnya permasalahan ini dengan menggunakan kriteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan.

Kekurangan pada pohon keputusan adalah:
1. Terjadi overlapping terutama ketika kelas-kelas dan kriteria yang digunakan jumlahnya sangat banyak. Hal tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan jumlah memori yang diperlukan
2. Pengakumulasian jumlah kesalahan dari setiap tingkat dalam sebuah pohon keputusan yang besar
3. Kesulitan dalam mendesain pohon keputusan yang optimal
4. Hasil kualitas keputusan yang didapatkan dari metode pohon keputusan sangat tergantung pada bagaimana pohon tersebut didesain.

Pohon keputusan adalah model prediksi menggunakan struktur pohon atau struktur berhirarki.

Setiap percabangan menyatakan kondisi yang harus dipenuhi dan tiap ujung pohon menyatakan kelas data. Contoh pada Gambar diatas adalah identifikasi pembeli komputer. Dari pohon keputusan tersebut diketahui bahwa salah satu kelompok yang potensial membeli komputer adalah orang yang berusia di bawah 30 tahun dan juga pelajar. Setelah sebuah pohon keputusan dibangun maka dapat digunakan untuk mengklasifikasikan record yang belum ada kelasnya. Dimulai dari node root, menggunakan tes terhadap atribut dari record yang belum ada kelasnya ini lalu mengikuti cabang yang sesuai dengan hasil dari tes tersebut, yang akan membawa kepada internal node (node yang memiliki satu cabang masuk dan dua atau lebih cabang yang keluar), dengan cara harus melakukan tes lagi terhadap atribut atau node leaf. Record yang kelasnya tidak diketahui kemudian diberikan kelas yang sesuai dengan kelas yang ada pada node leaf. Pada pohon keputusan setiap simpul leaf menandai label kelas. Proses dalam pohon keputusan yaitu mengubah bentuk data (tabel) menjadi model pohon (tree) kemudian mengubah model pohon tersebut menjadi aturan (rule) (J R Quinlan, 1993).

Salah satu algoritma induksi pohon keputusan yaitu ID3 (Iterative Dichotomiser 3). ID3 dikembangkan oleh J. Ross Quinlan. Dalam prosedur algoritma ID3, input berupa sampel training, label training dan atribut. Algoritma Decision Tree C4.5 merupakan pengembangan dari ID3. Sedangkan pada perangkat lunak open source WEKA mempunyai versi sendiri dari C4.5 yang dikenal sebagai J48.


State Machine
Finite State Machines (FSM) adalah sebuah metodologi perancangan sistem kontrol yang menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga hal berikut: State (Keadaan), Event (kejadian) dan action (aksi). Pada satu saat dalam periode waktu yang cukup signifikan, sistem akan berada pada salah satu state yang aktif. Sistem dapat beralih atau bertransisi menuju state lain jika mendapatkan masukan atau event tertentu, baik yang berasal dari perangkat luar atau komponen dalam sistemnya itu sendiri (misal interupsi timer). Transisi keadaan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat berupa aksi yang sederhana atau melibatkan rangkaian proses yang relative kompleks.

Berdasarkan sifatnya, metode FSM ini sangat cocok digunakan sebagai basis perancangan perangkat lunak pengendalian yang bersifat reaktif dan real time. Salah satu keutungan nyata penggunaan FSM adalah kemampuannya dalam mendekomposisi aplikasi yang relative besar dengan hanya menggunakan sejumlah kecil item state. Selain untuk bidang kontrol, Penggunaan metode ini pada kenyataannya juga umum digunakan sebagai basis untuk perancangan protokol-protokol komunikasi, perancangan perangkat lunak game, aplikasi WEB dan sebagainya.

Dalam bahasa pemrograman prosedural seperti bahasa C, FSM ini umumnya direalisasikan dengan menggunakan statemen kontrol switch case atau/dan if..then. Dengan menggunakan statemen-statemen kontrol ini, aliran program secara praktis akan mudah dipahami dan dilacak jika terjadi kesalahan logika.


Rule Systems
Rule Based System merupakan metode pengambilan keputusan 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 direpresentasikan oleh set aturan yaitu penyebab tindakan itu terjadi, proses tindakan dan hasil dari tindakan tersebut.

Rule Base Systems (RBS) sistem yang baik untuk mendapat jawaban dari pertanyaan mengenai What (apa), How (bagaimana) dan Why (mengapa) dari Rule Base (RB) selama proses inferensia. Jawaban dan penjelasannya dapat disediakan dengan baik. Masalah yang ada dengan SBP adalah ia tak dapat secara mudah menjalankan proses akuisisi knowledge (pengetahuan) dan ia tak dapat mengupdate rule (aturan) secara otomatis. Hanya pakar yang dapat mengupdate Knowledge Base (KB) secara manual dengan dukungan dari knowledge engineer (insinyur pengetahuan). Lebih jauh kebanyakan peneliti dalam SBA lebih memperhatikan masalah optimasi pada rule yang sudah ada daripada pembangkitan rule baru dari rule yang sudah ada. Namun demikian, optimasi rule tak dapat mengubah hasil dari inferensia secara signifikan, yaitu dalam hal cakupan pengetahuan.

Ripple Down Rule (RDR) datang untuk mengatasi permasalahan utama dari sistem pakar: pakar tak perlu lagi selalu mengkomunikasikan pengetahuan dalam konteks yang spesifik. RDR membolehkan akuisisi yang cepat dan sederhana secara ekstrim tanpa bantuan dari knowledge engineer. Pengguna tak perlu menguji RB dalam rangka mendefinisikan rule baru: pengguna hanya perlu untuk mampu mendefinisikan rule baru yang secara benar mengklasifikasikan contoh yang diberikan, dan sistem dapat menentukan dimana suatu rule harus ditempatkan dalam hirarki rulenya. Keterbatasan dari RDR adalah kekurangan dalam hal inferensia yang berdayaguna. Tak seperti SBA yang dilengkapi dengan inferensia melalui forward dan backward chaining, RDR kelihatannya menggunakan Depth 

First Search (DFS) yang memiliki kekurangan dalam hal fleksibelitas dalam hal penjawaban pertanyaan dan penjelasan yang tumbuh dari inferensia yang berdayaguna.

Variable-Centered Intelligent Rule System (VCIRS) merupakan perkawinan dari SBA dan RDR. Arsitektur sistem diadaptasi dari SBA dan ia mengambil keuntungan-keuntungan yang ada dari RDR. Sistem ini mengorganisasi RB dalam struktur spesial sehingga pembangunan pengetahuan, inferensia pengetahuan yang berdayaguna dan peningkatan evolusional dari kinerja sistem dapat didapatkan pada waktu yang sama. Istilah “Intelligent” dalam VCIRS menekankan pada keadaan sistem ini yang dapat “belajar” untuk meningkatkan kinerja sistem dari pengguna sistem selama pembangunan pengetahuan (melalui analisis nilai) dan penghalusan pengetahuan (dengan pembangkitan rule).


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.

Pathfinding merupakan metode yang sangat dibutuhkan pada berbagai game, terutama game 3d. Path finding digunakan untuk menentukan arah pergerakan suatu objek berdasarkan keadaan lokasi dan object di sekitarnya dari satu titik ke titik lain. 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.

Pathfinding algorithm adalah konsep pencarian dengan menggunakan best-first search. Pada proses ini node didalam map ditempatkan dan diberi id pada setiap node yang ada. Node tersebut akan men-scan setiap node yang satu dengan lain : Node 1 scan node 2,3,4  ..,n dan seterusnya. Dan node 2 scan node 1,3,4, ..., n dan seterusnya. Sewaktu semua node telah discan maka akan dimasukan kedalam variabel 

Metode pada Path Finding terbagi menjadi 4 bagian yakni:
1. Waypoints 
Waypoint merupakan kumpulan dari beberapa titik kordinat yang kemudian dijadikan sebagai navigasi pergerakan. Dalam sebuah game, pergerakan NPC (non playable character) umumnya menggunakan titik arah antara titik kordinat yang satu dengan yang lain ditentukan oleh pencipta game. Waypoint dapat digunakan pada non playable character untuk melakukan patroli di dalam game dengan melintasi titik-titik kordinat yang ditentukan.


Waypoint search merupakan pencarian yang paling efisien dan menghemat konsumsi pada CPU-Time. Hampir semua game sekarang ini menggunakan metode waypoint sebagai metode pencarian, terutama pada 3D game action dimana contoh game yang menerapkan waypoint sebagai solusinya adalah "Counter-Strike". Terdapat dua metode pencarian dengan menggunakan waypoint search, yaitu Best-First Search dan Data-Based Search.

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.




BAB 4
Arsitektur Game Engine

Game Engine adalah system perangkat lunak yang dirancang untuk menciptakan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol permainan video dan sistem operasi desktop seperti Microsoft Windows, Linux, dan Mac OS X. fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render ( “renderer”) untuk 2D atau 3D grafis, mesin fisika atau tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori, threading, dukungan lokalisasi, dan adegan grafik. Proses pengembangan permainan sering dihemat oleh sebagian besar menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.

Engine bukanlah executable program, artinya engine tidak bisa dijalankan sebagai program yang berdiri sendiri. Diperlukan sebuah program utama sebagai entry point atau titik awal jalannya program. Pada C++, entry point-nya adalah fungsi ‘main().’ Biasanya program utama ini relatif pendek. Game engine adalah program yang ‘memotori’ jalannya suatu program game. Kalau game diilustrasikan sebagai ‘musik’ yang keluar dari mp3 player, maka engine adalah ‘mp3 player’ dan program utama adalah ‘data mp3’ yang dimasukkan ke dalam mp3 player tersebut. Dengan adanya engine, waktu, tenaga dan biaya yang dibutuhkan untuk membuat game software menjadi berkurang secara signifikan.

Beberapa game dengan jenis dan gameplay yang hampir sama bisa dibuat dengan sedikit usaha bila terlebih dulu dibuat engine-nya. Setelah engine diselesaikan, programmer hanya perlu menambahkan program utama, memakai resources (objek 3D, musik, efek suara) yang baru, dan, jika benar-benar dibutuhkan, sedikit memodifikasi engine sesuai kebutuhan spesifk dari game yang bersangkutan. Program game engine seluruhnya berorientasi objek. Dia lebih bersifat reaktif daripada prosedural. Sulit untuk menggambarkan engine secara keseluruhan dalam flow-chart, karena alur program bisa diatur sesuai dengan keinginan pemakai engine, yaitu game programmer.

Tujuan Penggunaan Game Engine
Game engine menyediakan seperangkat alat pengembangan visual di samping komponen software digunakan kembali. Alat-alat ini umumnya diberikan dalam suatu lingkungan pengembangan terpadu untuk mengaktifkan disederhanakan, perkembangan pesat dari permainan dengan cara data-driven. Mesin pengembang Game upaya untuk “pra-menciptakan roda” dengan mengembangkan suite perangkat lunak kuat yang mencakup banyak unsur pengembang game mungkin perlu untuk membangun sebuah permainan.

Kebanyakan mesin permainan suite menyediakan fasilitas yang memudahkan pengembangan, seperti grafik, suara, fisika dan fungsi AI. Mesin permainan ini kadang-kadang disebut “middleware” karena, seperti dengan istilah naluri bisnis, mereka menyediakan sebuah platform perangkat lunak yang fleksibel dan dapat digunakan kembali yang menyediakan semua fungsionalitas inti yang dibutuhkan, langsung dari kotak, untuk mengembangkan sebuah aplikasi permainan sambil mengurangi biaya , kompleksitas, dan waktu-ke-pasar-semua faktor penting dalam industri video game yang sangat kompetitif. Gamebryo dan RenderWare adalah seperti program middleware banyak digunakan.

Seperti solusi middleware lainnya, mesin permainan biasanya menyediakan abstraksi platform, yang memungkinkan permainan yang sama untuk dijalankan pada berbagai platform termasuk game konsol dan komputer pribadi dengan sedikit, jika ada, perubahan yang dibuat ke kode sumber permainan. Seringkali, mesin permainan dirancang dengan arsitektur berbasis komponen yang memungkinkan sistem tertentu dalam mesin yang akan diganti atau diperpanjang dengan lebih khusus (dan sering kali lebih mahal) komponen middleware game seperti Havok untuk fisika, Miles Sound System untuk suara, atau Bink untuk Video.

Beberapa mesin permainan seperti RenderWare bahkan dirancang sebagai rangkaian dihubungkan secara longgar komponen middleware permainan yang bisa selektif dikombinasikan untuk membuat mesin khusus, bukan pendekatan yang lebih umum dari memperluas atau menyesuaikan solusi terintegrasi yang fleksibel. Namun diperpanjang tercapai, hal itu tetap menjadi prioritas tinggi dalam mesin game karena berbagai kegunaan yang mereka diterapkan. Meskipun kekhususan nama, mesin permainan yang sering digunakan untuk jenis lain aplikasi interaktif dengan kebutuhan grafis real-time seperti demo pemasaran, visualisasi arsitektur, simulasi pelatihan, dan lingkungan pemodelan.

Beberapa mesin permainan hanya menyediakan 3D real-time rendering kemampuan bukan berbagai fungsi yang dibutuhkan oleh game. Mesin ini mengandalkan pengembang game untuk melaksanakan seluruh fungsi ini atau merakit dari komponen middleware permainan lainnya. Jenis mesin umumnya disebut sebagai “mesin grafis,” “mesin render,” atau “mesin 3D” bukan meliputi lebih istilah “mesin permainan.” Terminologi ini tidak konsisten banyak digunakan sebagai fitur lengkap mesin permainan 3D disebut hanya sebagai “mesin 3D.”

Beberapa contoh mesin grafis adalah: Crystal Space, Genesis3D, Irrlicht, JMonkey Engine, OGRE, RealmForge, Truevision3D, dan Visi Engine. Modern permainan atau mesin grafis umumnya memberikan grafik adegan, yang merupakan representasi berorientasi objek dari dunia permainan 3D yang sering menyederhanakan desain game dan dapat digunakan untuk rendering yang lebih efisien dari dunia maya yang luas.

Tipe Game Engine
Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman. Ada 3 tipe game engine yang ada saat ini, diantaranya :

* 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 Engine.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.

Beberapa Contoh Game Engine Open Source :
* 3D Game Studio
* Delta 3D
* Unreal Engine
* Panda 3D
* Torque
* Quake Engine

Ps:
ini adalah Tugas Kelompok pada Mata Kuliah Pengantar Teknologi Game.
yang mengerjakan bab 3- 4 adalah http://mrezafatih.blogspot.co.id/

Sabtu, 07 April 2018

Tugas 2 - Pengantar Teknologi Game #

0

BAB 1
TEKNOLOGI GAME

Pengertian Teknologi Game
Program studi Teknologi Game mempelajari tentang bagaimana sebuah game itu di buat hingga bisa dimainkan oleh orang banyak. Mulai dari merancang cerita yang ada pada game, merancang sistem pelevelan, merancang model karakter yang ada pada game, membuat animasi dan storyboard, merancang user interface, melakukan tugas-tugas programming, hingga proses produksi game tersebut dan distribusinya.

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.

Yang kedua adalah pengertian dari Game. Game diambil dari bahasa Inggris yang diterjemahkan yang artinya permainan. 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. Di dalam era perkembangan teknologi yang pesat ini, seperti halnya permainan kartu, catur dan lain-lainnya dapat ditemui melalui dunia virtual atau yang biasa kita mainkan di dalam komputer. Dengan perkembangan teknologi sekarang ini munculah berbagai sarana permainan, misalnya Playstation 3, Xbox 360, Nintendo Wii, PSP, Nintendo DS, maupun PC dari yang berbasis individu ataupun multiplayer.



Ada 2 cara yang dapat digunakan dalam membuat game, yaitu :
1. Dengan membuat sendiri program yang akan digunakan untuk membuat game (umumnya professional game developer yang menggunakan cara ini).
2. Dengan menggunakan program jadi yang tinggal kita gunakan. Untuk membuat program sendiri tidak akan kita bahas disini karena tujuan penulisan ini adalah untuk amateur game developer , tapi sekedar pengetahuan saja, untuk membuat program sendiri kita harus memahami bahasa pemrograman , dan untuk membuat program sendiri, kita dapat menggunakan “Visual Basic”, “C++”, dll.


BISNIS DALAM GAME KOMPUTER
Di zaman modern ini, tidak dapat dipungkiri 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.

Perkembangan Bisnis Game Komputer
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.

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.

Game menjadi gaya hidup
Akibatnya, tidak bisa dipungkiri bahwa game telah menjadi gaya hidup tersendiri. Mulai dari game di Facebook, game offline (PC, PlayStation, mobile), serta game online (PC dan mobile) kerap dimainkan oleh masyarakat Indonesia. Komunitas-komunitas berbasis game pun bermunculan. Alhasil, industri game pun jadi kian kompetitif.

Tren game
Meski hingga kini game yang dimainkan lewat PC masih lebih ramai dibandingkan dengan mobile, namun menurut prediksi Megaxus, mobile games akan populer dan menjadi tren. Jika benar, maka industri game di Indonesia harus mulai membuat game berbasis smartphone dari sekarang.

Industri game berikutnya akan lebih ke mobile, karena penetrasinya sangat cepat, terutama di tahun 2014 ini,” jelas Eva. Sementara ketika ditanya apakah Megaxus juga akan membuat game versi mobile, Wida Handoyo, Marketing Manager PT. Megaxus Infotech mengatakan, “Ya pasti, kita sedang berencana untuk membuat game mobile, tapi kita masih belum bisa beritahukan secara pasti, game seperti apa dan kapan dikeluarkannya.

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 : 
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.

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.


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:
* Menciptakan objek Canvas3D
* Menciptakan sebuah scene graph
* 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.

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 :
* Desain yang object-oriented dengan menggunakan plugin untuk mempermudah memasukkan fitur lainnya.
* Engine berbasis scane graph dengan bantuan untuk sebuah varietas yang luas, octree, BSP, & paging landscape scene manager.
* 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.
* OGRE mendukung program vertex dan fragment selama ditulis dengan GLSH, HLSL, Cg, dan assembler.
* The landscape scene manager untuk progressive LOD, yang mana bisa dibuat secara otomatis dan manual.
* 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.



BAB 2
DESAIN SKENARIO, SCRIPT DAN STORYBOARD GAME KOMPUTER

DESAIN SKENARIO



Desain skenario pada sebuah game sama halnya dengan desain skenario pada sebuah film.  Jika pada sebuah film terdapat sutradara namun pada game terdapat perancang game, mengapa dibutuhkan sutradara pada sebuah film? Jawabannya adalah karena pada sebuah film membutuhkan skenario dan adegan yang setiap pemain memiliki ciri khas masing-masing. Jadi dibutuhkannya perancang game dalam suatu desain game ialah untuk memberikan ide dalam pembuatan skenario serta adegan yang terdapat di setiap karakter dalam sebuah game. Selain itu karakter pada sebuah game pasti memiliki ciri khas yang tidak dimilki oleh karakter lain.

Pada sebuah game untuk menggambarkan bagaimana game tersebut akan dibuat dinamakan GDD( Game Design Document). GDD tersebut merupakan acuan yang digunakan oleh para anggota tim pengembang dalam pembuatan game. Hal itu sesuai dengan pendapat yang dikemukakan oleh Bob Gates (2004), “pembuatan game akan dimulai dari pembuatan game desain dokumen. Game desain dokumen digunakan untuk menjadi landasan pengembangan game tersebut, dan untuk menarik minat pembaca serta menginformasikan gambaran keseluruhan game yang akan dibuat kepada tim pengembang”.

GDD bisa dikatakan sebagai living document, yang berarti perubahan bisa dilakukan sesuai dengan kebutuhan baru. Akan tetapi jika terlalu sering melakukan perubahan akan menyebabkan implementasi pada sebuah game akan terganggu. Dengan adanya game desain dokumen yang detail akan mampu memberikan gambaran lengkap bagi seluruh tim sehingga proses pengembangan game lebih efektif dan efisien.

Terdapat empat bagian pada saat perancangan game yakni :
1. Pemimpin Desainer, orang yang menggerakan konsep game tersebut menjadi lebih menarik dan membuat game tersebut memiliki nilai artistik didalamnya.
2. Game Mechanic Designer, orang yang membuat suatu aturan pada sebuah permainan, sehinggan permainan tersebut tidak berat sebelah atau bisa dikatakan seimbang.
3. Tingkat Desainer atau Lingkungan Desainer, orang yang bertanggung jawab dalam membuat lingkungan permainan, agar pada sebuah game menjadi lebih real.
4. Writter, seseorang yang bertanggung jawab dalam membentuk suatu narasi dalam game. Dimulai dari alur cerita, hingga apa saja yang harus dilakukan pemain pada saat memainkan game tersebut. Oleh karena itu penulis harus bekerja sama dengan desainer utama dalam pembuatan skenario game.  

Jadi yang dimaksud desain skenario pada sebuah game adalah suatu perancangan dalam membangun sebuah skenario yang  didalamnya terdapat gameplay, karakter atau tokoh, lingkungan. Ketiga unsur tersebutlah yang digunakan selama tahap memproduksi sebuah desain pada game komputer.


SCRIPT



Script sendiri dibedakan dari program, mengapa dari program? Jawabannya adalah karena program dikonversi atau diubah ke dalam file yang berseifat executable berbasis biner (0 atau 1) sebelum script tersebut dijalankan. Ketika script dijalankan tidak akan merubah isi didalamnya dan menterjemahkan setiap instruksi yang dilaksanakan. Script sendiri digunakan untuk mempersingkat proses pada saat kompilasi sampai pada akhirnya dijalankan.

Game script sendiri berfungsi untuk mendokumentasikan rules dan core-mechanics pada sebuah game. Fungsinya adalah untuk membuat suatu aturan yang mendetail pada sebuah game dan agar kita bisa mengetahui cara memainkan game tersebut.

Pada saat pemilihan bahasa pemrograman yang digunakan untuk membuat suatu game perlu diperhatikan beberapa syarat berikut ini :
Speed
Bahasa script untuk sebuah game harus memiliki kemampuan berjalan secepat mungkin. Mengapa dibutuhkan speed pada sebuah script game? Jawabannya adalah karena ketika kita akan membuat suatu game dengan suatu level, pasti secara logikanya suatu perilaku karakter dan rintangan yang terdapat didalamnya akan berbeda. Jika, kita menggunakan bahasa script yang lambat, maka akan memakan waktu yang cukup lama untuk membuatnya.

Kompilasi dan Interpretasi
Bahasa script jika ditinjau secara luas diinterpretasikan melalui susunan suatu rangakaian byte. Interpreter akan melihat script setiap baris, serta penyusunan sesuai maksud dari script itu sendiri dan melakukan tindakan yang spesifik.  Suatu byte akan terkompilasi, dan akan dikonversi atau diubah dari teks menjadi suatu byte code. Byte code biasanya lebih padat jika dibandingkan dengan format teks, mengapa disebut lebih padat? Jawabannya adalah karena kode byte dalam suatu format akan lebih optimal ketika dieksekusi, sehingga dapat berjalan lebih cepat.

Ekstensibilitas dan Integrasi
Bahasa script sangat dianjurkan mempunyai akses ke fungsi yang signifikan ke dalam sebuah game. Sebuah script untuk mengendalikan sebuah karakter misalnya, harus dapat memiliki kemampuan untuk menanyai game untuk mencari tahu apa y ang bisa dilihat dan selanjutnya membiarkan game mengerti apa yang harus dilakukan untuk melakukan aksinya. Kumpulan fungsi yang dibutuhkan untuk mengakses sangat jarang diketahui ketika bahasa script telah diimplementasikan. Oleh karena itu, hal ini penting untuk memiliki sebuah bahasa yang dapat dengan mudah memanggil fungsi atau menggunakan kelas main code dalam sebuah game.

Re-Entrancy
Fungsi ini sering berguna untuk memanggil script secara ulang sehingga bisa digunakan kembali. Selain itu fungsi ini dapat berjalan untuk sementara waktu, dan ketika waktu telah habis maka script bisa ditunda. Dan jika script selanjutnya memiliki waktu lagi, maka akan menjalankan kembali script yang telah ditunda sebelumnya.


STORYBOARD



Storyboard merupakan suatu sketsa gambar yang disusun secara berurutan yang sesuai dengan naskah yang ada. Dengan adanya storyboard ini, kita dapat menyampaikan ide cerita kepada orang lain dengan lebih mudah. Mengapa dikatakan lebih mudah ketika menyampaikan ide menggunakan storyboard? Jawabannya adalah karena dengan menggunakan suatu gambar secara berurut orang akan berkhayal dengan mengikuti gambar yang telah disajikan sedemikian rupa, sehingga menghasilkan persepsi yang sama sesuai dengan ide cerita yang kita buat.

Namun, untuk storyboard pada game akan memperlihatkan suatu gambaran yang berurutan yang menunjukkan level pada setiap game, menggambarkan adegan disetiap kejadian berbeda dan memiliki goal/mission yang dibuat pada game itu sendiri. Storyboard pada game juga mejelaskan alur cerita yang dimiliki oleh game tersebut tapi itu semua tergantung dari genre game itu sendiri. Disini saya akan mengambil sebuah contoh game ber-genre arcade yang lebih memfokuskan pada perolehan point, sehingga tidak memiliki alur cerita. Sehingga, storyboard pada game arcade tersebut adalah bagaimana player dapat mengumpulkan nilai/point setinggi mungkin untuk bisa memenangkan game tersebut.

sumber :
https://www.scribd.com/document/253844681/Pengertian-Teknologi-Game diunduh pada tanggal 06 April 2018 pukul 19.00.
http://dortesom.blogspot.co.id/2017/03/tugas-1-pengantar-teknologi-game.html diunduh pada tanggal 07 April 2018 pukul 16.40.

Melihat Bab Lainnya
Bab 3 dan 4
Bab 5 dan 6
Bab 7 dan 8