Selasa, 10 April 2018
Pengantar Teknologi Game
a
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS GUNADARMA
DEPOK
2018
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:
Storyboard
a). Speed
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.
Pengertian Game
Sejarah Artificial Intelligence dalam Game
Artificial Intelligence dalam Game
BAB 4
(28 Maret 2018, 19:40 Wib)
interaksi fisik ialah salah satu bentuk interaksi
yang terjadi jika ada dua orang atau lebih melakukan kontak dengan menggunakan
bahasa-bahasa tubuh. Contoh interaksi ini : posisi tubuh, ekspresi wajah,
gerak-gerik tubuh dan kontak mata.
Dalam lingkungan game, interaksi fisik dapat dimaksud dengan menyerap pengertian diatas, yaitu menjadi interaksi fisik ialah salah satu bentuk interaksi yang terjadi jika ada dua objek atau lebih melakukan kontak. Kontak yang terjadi antara objek – objek tersebut umumnya adalah collision atau tabrakan.
Pada dasarnya, objek baik 2 dimensi maupun 3 dimensi pada Teknologi Game dan digital, secara umumnya objek – objek tersebut bukanlah objek yang memiliki kemampuan fisik, atau secara lain objek tersebut hanyalah susunan dari titik, garis, dan penampang yang terhubung satu sama lain, dan bisa dianggap bahwa objek tersebut hanyalah sebatas bentuk, tanpa memiliki kemampuan.
Agar objek – objek tersebut dapat mensimulasikan kemampuan fisik, objek – objek tersebut harus diberikan pemahaman dengan menggunakan aljabar linear dan komputasi geometri.
Komputasi geometri tersebut digunakan untuk memberikan batas pada objek. Walaupun objek tersebut terlihat sudah memiliki penampang, sebenarnya penampang tersebut bukanlah batasan dari sisi terluar objek tersebut. Oleh karena itu, komputasi geometri dibuat dengan parameter bentuk dan volume dari objek tersebut. Umumnya, bentuk batasan ini disebut bounding box ( batas kotak ).
Aljabar linear digunakan untuk memberitahukan bahwa, ketika batas tersebut terletak pada koordinat yang sama atau berpotongan dengan batas objek lain, maka objek – objek tersebut mensimulasikan tabrakan.
Pada awalnya, penggunaan algoritma untuk pendeteksian tabrakan ini bekerja dengan cara mudah, yaitu dengan cara mengecek apakah penampang dari batas objek A dengan penampang dari batas objek B akan saling berpotongan. Tentu saja hal tersebut akan bekerja. Tapi, bayangkan apabila objek yang digunakan sangat banyak. Setiap penampang dari batas objek A = [a1, a2, …, an] akan melakukan pengecekan sampai ke penampang dari batas objek N = [n1, n2, …, nn]. Mungkin algoritma ini akan bekerja dengan baik apabila hanya terdapat 2 objek dalam lingkungan tersebut.
Dalam perkembangan pendeteksian tabrakan, konfigurasi kemampuan fisik dari satu pergerakan ke pergerakan selanjutnya hanya berubah sedikit. Banyak objek – objek yang tidak bergerak sama sekali. Algoritma telah di desain sehingga perhitungan telah selesai untuk menentukan bahwa pergerakan terdahulu dapat digunakan kembali untuk pergerakan di masa kini, yang menghasilkan perhitungan selesai dengan lebih cepat.
Perkembangan tersebut tujuan nya hanya untuk mencari dan menentukan pasangan – pasangan dari objek – objek yang mungkin berpotongan. Pasangan – pasangan tersebut akan menganalisis pergerakan kedepannya.
Logikanya adalah setiap kotak direpresentasikan dengan tiga bentuk interval ( misalkan, sebuah kotak akan direpresentasikan dengan I1 x I2 x I3 = [a1, b1] x [a2, b2] x [a3, b3] ). Jika terdapat 2 kotak ( dengan bounding box nya masing – masing ) I1 x I2 x I3 dan J1 x J2 x J3 akan berpotongan jika, dan hanya jika, I1 berpotongan dengan J1, dan seterusnya. Maka, pada pergerakan tersebut dan untuk ke pergerakan selanjutnya, Ik dan Jk berpotongan, sehingga hal tersebut akan sama untuk pergerakan lainnya. Sebaliknya, jika mereka tidak berpotongan pada pergerakan sebelumnya, maka pergerakan mereka tidak akan berpotongan.
Sehingga untuk mengurangi masalah tersebut, dibuatkan tiga daftar interval ( satu untuk setiap sumbu, X,Y, dan Z). Maka dari itu didapat matriks n x n, M = (mij) dengan isi nol dan satu: mij adalah 1 jika interval i dan j berpotongan, dan 0 jika mereka tidak berpotongan.
FPS adalah game Tembak-tembakan, pukul-pukulan, tusuk-tusukan yang menggunakan sudut pandang orang pertama. Biasanya kita hanya bisa melihat tangan dari character kita. Contoh game ini FPS adalah (Call of Duty, Counter Strike, Far Cry 3)
RTS (Real Time Strategy). Game ini biasanya bersifat turn based ataupun bisa dimainkan secara bersamaan, identik dengan bermain melawan human intelegent (manusia vs manusia) yang biasanya menggunakan LAN ataupun Internet. Game ini bisa dikatakan game perang-perangan. Contoh game RTS adalah (DOTA, StarCraft, Civilization)
RPG (Role Playing Game). Game ini memiliki unsur yang unik, karena biasanya tidak ada tamat dalam game seperti ini (Kalaupun tamat, hanya ceritanya saja, dan kalian masih bisa leveling atau grinding sesuka hati). Kalian akan menjalankan sebuah main character yang bisa kalian costumize, mencari uang, membangun koneksi dengan NPC (non playable player) dan sebagainya. Contoh dari game RPG adalah (KOA, Skyrim, The Witcher).
Cross-Platform Online, merupakan game yang dapat dimainkan secara online dengan hardware yang berbeda misalnya saja need for speed undercover dapat dimainkan secara online dari PC maupun Xbox 360(Xbox 360 merupakan hardware/console game yang memiliki konektivitas ke internet sehingga dapat bermain secara online).
PENGANTAR
TEKNOLOGI GAME
Oleh
: Kelompok 4
Adjie Hadi Rachmadi (57415648)
Amalia Zati Atsari (50415609)
Firlian Ugroseno (52415711) Hery Apriansyah (53415148)
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS GUNADARMA
DEPOK
2018
BAB
1
http://hilmantan.blogspot.co.id/2016/04/aspek-teknologi-dan-bisnis-dalam-game.html#.Wrt_9ZcxXIU
http://hilmantan.blogspot.co.id/2016/04/aspek-teknologi-dan-bisnis-dalam-game.html#.Wrt_9ZcxXIU
(Rabu,28
Maret 2018,18 :40 Wib)
(Rabu,28
Maret 2018, 20:33 Wib)
Teknologi Game Industri Game memang bisa menjadi
pilihan dimana Game tidak hanya dimainkan oleh anak-anak tetapi hingga kalangan
dewasa-pun ikut senang memainkan Game, itu semua dikarenakan terjangkaunya
perangkat Game serta jumlah Video Game yang semakin banyak dirilis.
Bisnis/Usaha Industri Game memang kelihatan menjanjikan keuntungan karena
banyaknya penggemar Game, dalam aspek bisnis setidaknya ada 4 aspek dasar yakni
:
1. Modal
Awal
2. Biaya
Operasional
3.
Keuntungan (Laba), dan
4. Modal
Investasi Kedepan
Jenis Industri Game memang cukup banyak seperti
Warnet/Internet Cafe, Game Center, Mobile Game, Game PC, Konsol Game, Game
Online, dsb. Berikut ini Aspek Bisnis dalam Industri Game :
Warung Internet (Warnet) / Internet
Cafe
- Modal Awal Dalam memulai bisnis/usaha tentu seseorang harus memiliki modal awal, tanpa modal awal tidak ada bisnis yang bisa dibuka. Tentukan modal awal yang dapat dijangkau untuk memulai usaha warnet.
- Sasaran Menentukan sasaran warnet seperti misalnya hanya untuk gaming yang biasanya tidak menyediakan layanan print, scanning, pengetikkan, dsb. Contoh sasaran lainnya untuk umum yang menyediakan layanan print, scanning, pengetikkan, dsb serta bisa menggabungkan antara dua hal tersebut.
- Spesifikasi & Jumlah Komputer Tentukan spesifikasi dan jumlah komputer yang disediakan, dengan spesifikasi komputer yang bagus dan tangguh jelas akan membuat pengunjung merasa nyaman menggunakan komputer.
- Biaya Operasional Biaya operasional seperti listrik ditentukan dari jumlah komputer yang ada, fasilitas yang tersedia, air dan maintenance (perawatan) untuk setiap komputer/perangkat yang mengalami kerusakan.
- Koneksi Internet Menentukan Provider dan pilihan paket Internet yang cocok untuk keperluan bisnis seperti warnet, provider internet biasanya memiliki kebijakan, pilihan kecepatan dan harga yang berbeda.
- Fasilitas Menentukkan fasilitas sebain dan senyaman mungkin yang tersedia didalam warnet seperti misalnya warnet menggunakan kursi/bantal untuk duduk, tempat parkir, menggunakan meja tinggi atau meja rendah, menyediakan toilet, menggunakan AC atau kipas, menjual Air Mineral dan Makanan Ringan, menjual Voucher Game, dsb.
Rental PS
- Menentukkan Modal untuk membeli TV dan jumlah konsol Menentukkan modal awal untuk membeli TV yang ingin digunakan seperti TV LCD atau LED dengan ukuran kecil atau bahkan dengan ukuran besar serta menentukkan jumlah konsol yang disediakan dirental.
- Biaya Operasional Biaya operasional seperti listrik, air, dsb ditentukan dari banyak jumlah konsol yang digunakan dan fasilitas yang ada di Rental.
- Fasilitas Merancang fasiltas senyaman mungkin untuk pelanggan agar betah dan kembali lagi seperti misalnya menggunakan AC, menyediakan toilet, tempat parkir yang baik dan terpantau, menjual Air Mineral dan Makanan, menggunakan Kursi atau bantal sebagai tempat duduk, dsb.
Game Online
- Menyelenggarakan Event Event menjadi hal yang menarik bagi pemain Game Online karena biasanya dalam suatu Event harga item/barang-barang langka yang dibeli dengan mata uang asli diberi diskon/diberi secara gratis dengan berbagai cara yang unik untuk mendapatkannya. Event yang kelihatannya memberi keuntungan besar bagi pemain akan sangat diminati oleh pemain Game Online.
- Mengadakan Turnamen Mengikuti turnamen bagi para pemain Game Online memang hal yang luar biasa karena dengan turnamen para pemain Game Online bisa menunjukkan kemampuannya didalam Game. Hadiah dari suatu turnamen biasanya mencapai jutaan bahkan puluhan juta, cakupan turnamen bisa menjadi lebih luas seperti turnamen Game Online antar negara jika peminat turnamen itu sangat banyak.
- Item resmi yang dijual dengan Mata uang asli Sudah bukan hal biasa didalam Game Online pengembang Game menyediakan item/perlengkapan yang dapat dibeli menggunakan mata uang asli melalui sejenis voucher. Biasanya harga item/perlengkapan tersebut bervariasi, semakin bagus efek yang dimiliki atau semakin dibutuhkannya item tersebut bisa didapat dengan harga mahal.
- Jual-beli ilegal dengan Mata uang asli Dalam game online sudah biasa sulitnya mencari item/barang langka dan Uang didalam Game itu sehingga pemain yang memiliki banyak item langka dan Uang sering menjualnya dengan mata uang asli kepada pemain yang membutuhkan. Biasanya transaksi dilakukan dengan saling bertemu untuk menghindari aksi penipuan didalam Game, padahal, hal seperti ini dilarang oleh developer dengan alasan menghindari aksi penipuan serta memberi hukuman kepada pembeli dan penjual.
ASPEK TEKNOLOGI DALAM GAME
Saat ini keberadaan game di Indonesia sudah menjamur
bak pasir di gurun pasir, yang sudah sangat mempengaruhi segala aspek kehidupan
penikmatnya seperti aspek sosial, agama, psikis bahkan sampai pola hidup. Game
bekembang pesat seiring pertumbuhan teknologi yang semakin canggih, tuntutan
pasar semakin tinggi dan tidak luput juga tuntutan kapitalisme memboncengi
dibelakangnya. Tidak hanya di negara barat sebagai pusat industri, kini
pertumbuhan game, baik dari segi produsen maupun konsumen juga mulai merambah
ke pasar pasar yang lebih luas termassuk salah satunya Indonesia.
Jenis Konsol Game
Dari zaman
ke zaman terdapat perkembangan di dunia mainan ini, beberapa diantaranya kalah
bersaing lalu tenggelam, ada juga yang masih bertahan, beberapa diantaranya
adalah
Game Cube
Lebih
dikenal dengan konsol game yang menonjolkan karakter yang lucu, lebih tepatnya
Nitendo atau jenis mesin game yang muncul dibawah perkembangan dunia game.
PS1 dan PS2
Konsol
game yang
satu ini mampu memberikan visualilasi yang menarik serta mempunyai keunggulan
dari segi jenis permainannya yang lebih variatif dari pada pendahulnya.
Sifat Game
Offline
Contoh-contoh
yang telah disebutkan diatas, seperti nitendo ataupun playstation merupakan
contoh game yang bersifat offline yang dapat dimainkan tanpa jaringan nirkabel
atau mudahnya permainan ini bersifat lokal yang dengannya seseorang tidak harus
membutuhkan jaringan internet
Online Era
cyberspace
telah mempengaruhi perubahan disegala aspek yang salah satunya adalah pola
komunikasi yang terjadidalam dunia game. Ini menjadi hal yang sangat menaik
ketika seoranggamers mampu bertatap muka, bergaul, bertukar pikiran, bahkan
sampai ke level bersaing. Game Online menjadi pembicaraan hangat di awal tahun
millenium, yang sejak itu telahmelahirkan generasi pecandu game di berbagai
belahan dunia. Dunia game yang satu ini bersifat luas dari segi interaksi
khalayak yang dimana sanggup menjadi magnet para pecandu game untuk mencoba
sensasinya. Berbeda ketika disandingkan game offline yang hanya bersifat dua
atau maksimal hanya sampai lima orang dalam hal game interaction.
Kekurangan dan Kelebihan
Membahas
mengenai dampak game tidak terlepas dari baik dan buruk, disini kita akan
mebahas apa saja dampak yang ditimbulkan, sehingga kita bias menimbang-nimbang
penting gak sih game untuk remaja dan anak-anak kita, langsung saja menurut
penelitian dari berbagai Negara maju hasil posifnya yaitu :
1. Memainkan
video game membuat anak mengenal teknologi computer.
2. Game
dapat memberikan pelajaran dalam hal mengikuti arahan dan aturan.
3. Beberapa
game menyediakan latihan untuk pemecahan masalah dan loika.
4. Game
menyediakan latihan penggunaan saraf motorik spatial skill.
5. Game
menjadi sarana keakraban antara orang tua dan anak ketika bermain bersama.
6. Game
mengenalkan teknologi dan berbagai fiturnya.
7. Beberapa
game mampu menyediakan sarana penyembuhan untuk pasien tertentu.
8. Game
menghibur dan menyenangkan.
Banyak
pilihan untuk kita pilih, dunia game menawarkan game yang menarik tetapi
sejatinya merusak ataupun juga menarik tetapi tidak merusak seperti contoh game
yang berjudul Harvest Moon yang mengajarkan bagaimana seseorang yang taat
kepada orang tuanya, rajin bekerja, menghargai waktu, menyayangi binatang,
mengajarkan arti tanggung jawab yang sangat sedikit sekali game seperti ini
beredar. Contoh lain dari game yang menarik namun merusak seperti permainan
yang memperlihatkan adegan pembunuhan, pelecehan seksual, ataupun pelanggaran
tata tertib seperti, resident evil, GTA, 7 sins ataupun Playboy the mansion.
Dampak
positif yang telah dipaparkan masih bersifat umum, darimana kita memandangnya
maka persepsi itu akan lahir. Sejatinya, pemilihan game yang baik akan
berdampak juga terhadap baiknya jasmani dan rohani seseorang yang memainkannya.
Konsep Game
- Generasi Pertama Tahun 1952, di Universitas Cambridge, A.S Douglas menulis sebuah tesis untuk gelar sebuah PhD-nya mengenai interaksi antara komputer dan manusia. Dalam tesisnya itu ia menciptakan game komputer dari sebuah permainan tradisional bernama Tic-Tac-Toe. Game ini diprogram dengan memakai komputer EDVAC vacuum tube yang memiliki layer berupa cathode ray tube (CRT). Kemudian di tahun 1958. William Haginbotham menciptakan video game pertamanya. Berbeda dengan Douglas, video game pertamanya yang berjudul Tennis for Two diciptakan dan dimainkan di osciloscope. Tapi game komputer pertama yang benar-benar diciptakan menggunakan komputer betulan adalah Spacewar. Saat itu di tahun 60-an, komputer adalah barang sangat mewah. Dan biasanya komputer dipakai untuk kepentingan riset dalam dunia militer. Tapi seseorang bernama Steve Russel memiliki ketertarikan akan hal lain. Dia dan teman-temannya sangat nge-fan dengan kisah fiksi ilmiah berjudul Skylark karangan Edward E Smith. Dari situ mereka membuat sebuah game bernama Spacewar. Kebetulan juga, Steve Russel bekerja menggunakan sebuah komputer mainframe bernama MIT PDP-1 yang biasa dipakai untuk perhitungan statistik. Dengan komputer itulah dia membuat Spacewar di tahun 1961.
- Generasi Kedua Di tahun 1971, Nolan Bushnell bersama dengan Ted Dabney menciptakan game ber-genre arcade yang pertama. Dinamai Komputer Space, game itu didasari oleh Spacewar. Tahun 1972, Nolan dan Ted memulai Atari komputer. Kemudian dia mengembangkan game berjudul Pong yaitu game pertama yang tersedia untuk publik. Karena game-game sebelumnya hanya ada di dalam komputer mainframe untuk kesenangan sendiri saja. Asal usul Pong dimulai saat Nolan ingin membuat game sederhana dan mudah dimengerti. Dengan memory dan micro processor kelas rendah, kemampuan proses yang terbatas dan grafis yang sederhana, akhirnya dia membuat versi elektronik dari permainan ping pong yang kemudian menjadi Pong. Sedikit selingan, Pong kemudian berevolusi menjadi sebuah game bernama Breakout. Game itu diciptakan oleh Steve Jobs untuk Atari. Dari situ, Steve Jobs dan temannya Steve Wozniak mulai berpikir untuk menciptakan sebuah PC. Kemudian mereka meminjam semua peralatan yang dipakai dalam proyek Breakout dan membuat sebuah prototype bernama Apple I. dan itu adalah cikal bakal dari komputer Apple Macintosh yang ada sekarang. Pada tahun 1980, Atari mengeluarkan game berjudul Asteroid dan Lunar Lander. Kedua game tersebut adalah game pertama yang didaftarkan pada kantor hak cipta untuk mendapatkan paten. Asteroid merupakan game yang penuh inovasi baru dalam grafisnya. Daripada menggunakan metode raster, game ini merupakan grafis vector line seperti yang ada pada osciloscope. Pengenalan Atari Video komputer System (Atari 2600) dengan CPU biasa dan slot untuk kasetnya, menjadi suatu era baru dalam dunia game. Di tahun 1980 itu juga menunjukkan penjualan yang meningkat dari PC yang biasa dipakai untuk game.Dan kini komputer bersaing dengan mesin konsol seperti PS atau Xbox. Dan komputer tidak hanya sebagai mesin untuk kepentingan bisnis semata, tapi juga untuk hiburan seperti game.
Jenis Game Komputer
- Simulasi/Virtual Reality: Simulasi adalah jenis permainan game simulasi tanpa tujuan yang pasti dari apa yang ingin dilakukan diserahkan kepada pemain.
- Education: merupakan jenis permainan yang dapat digunakan pula untuk belajar para siswa yang menggunakannya.
- Entertainment: jenis game ini merupakan jenis game yang dapat dimainkan oleh 1 orang atau lebih .
- User: Game ini tidak hanya untuk anak-anak saja namun game ini jg banya dimainkan oleh orang remaja dan dewasa.
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.
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:
- 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.
(Rabu,28 Maret 2018, 18:54 Wib)
http://vanillabluse.blogspot.co.id/2016/03/penjelasan-tentang-desain-skenario.html
(Rabu, 28 Maret 2018 , 20:22 Wib)
(Rabu, 28 Maret 2018 , 20:22 Wib)
Perkembangan teknologi komputer
sangat mempengaruhi perkembangan yang ada dalam dunia game.
Pembentukan karakter pada game semakinmendekati dengan keadaan sebenarnya pada
dunianyata. Ketika proses pembuatan game membutuhkan susunan yang lebih
kompleks, timbullah kebutuhanuntuk memisahkan konten (desain perilaku)
darimesin. Kehandalan seorang desainer game benar-benar dibutuhkan untuk
merancang perilaku yang luas dari karakter. Banyak tersedia berbagai
macambentuk bahasa pemrograman yang ada. Tentunya darikesemuanya itu memiliki
kelebihan dan kekurangan sendiri-sendiri. Maka game developer harus
benar-benar jeli dalam memilih bahasa dan menyusun script untuk membuat
suatu game, agar nantinya gamedapat berjalan lancar, tanpa bug, dan
mampumenjalankan script dengan kebutuhan hardware seminimum mungkin.
Pemrograman suatu game bisa
menggunakan berbagai macam jenis bahasa pemrograman. Diantaranya yang terkenal
adalah C++, C dan Java. Proses pembuatan game modern bisa memakan waktu 1-3
tahun untuk menyelesaikannya. Lamanya suatu pengembangan bergantung pada
sejumlah faktor, seperti genre, skala, platform pengembangan dan jumlah aset.
C++ biasa digunakan untuk membuat
game engine. Game engine berfungsi sebagai “Middleware” atau jembatan antara
Brainware (pembuat game) dan game itu sendiri. Game engine bisa membuat proses
pembuatan sebuah game menjadi lebih cepat dan efisien karena game engine
layaknya sebuah template yang “reuseable”.
Desain Skenario
Skenario adalah urutan cerita yang disusun oleh seseorang agar suatu peristiwa
terjadi sesuai dengan yang diinginkan. Kalau dasar untuk
pembuatan film adalah skenario, maka dasar untuk membuat game adalah design
document atau lebih mudahnya disebut skenario game. Skenario game adalah
langkah awal dalam membuat sebuah game, dengan skenario game dapat mempermudah
kita menyelesaikan game yang akan kita buat. Skenario game adalah sebuah cerita
khusus yang melatarbelakangi kejadian – kejadian dalam game. Kalau skenario menentukan interior
dan eksterior, dekor, pemain, dan studio, serta pembuatan trik, dalam desain
dokumen ada ketentuan program game, grafik, tokoh, animasi, suara, dan musik.
Sampai di sini keduanya masih paralel. Berbeda dengan skenario yang merupakan
sekuens linier dari adegan, turn around point, dialog, dan seterusnya; design
documents adalah gabungan dokumen yang mendiskripsikan secara kompleks semua
segi game yang direncanakan.
Ditambah lagi, berbeda dengan skenario, tidak bisa secara pasti ditentukan,
dokumen apa saja yang akan ditemukan dalam design documents, karena itu tergantung
pada gaya game yang akan dibuat. Hampir sama seperti pembuatan film dimana
penulis skenario pertama-tama menulis tema, kalau ada produser yang berminat,
penulis skenario membuat sinopsis, dan setelah mendapat persetujuan produser,
baru skenario dibuat, begitu juga prosesnya dalam merencanakan suatu judul game
komputer. Temanya dibuat dulu, kemudian konsep dan akhirnya design documents
disusun. Gambaran seperti ini adalah kondisi yang ideal, tidak semua pengembang
melalui proses ini, walaupun hal itu patut disayangkan. Cukup rumit bukan?
Serupa namun tak sama hehe.
Konsep seharusnya berguna untuk memberikan gambaran garis besar tentang cerita,
prinsip-prinsip mekanisme game, dan titik berat untuk gameplay. Karena itu
konsep mencakup prinsip-prinsip dasar, gaya game, kerangka peraturan, sinopsis
cerita (kalau ada cerita), karakteristik game, contoh misi, atau
situasi-situasi dalam game dan bisa juga diferensiasi perangkat pengguna atau
ada eek-efek khusus serta akhirnya unsur-unsur spesifik yang menjadi andalan
pencipta. Dalam penutup sinopsis seharusnya dicantumkan daftar unsur yang unik
dan orisinil serta faktor-faktor yang bisa dijadikan daya jual tinggi bagi
judul tersebut. Konsepnya biasanya ditulis setebal 5-10 halaman. Kalau konsep sudah
diterima, artinya sudah disetujui produser, dinilai positif oleh tim dan
sebagainya, desainer game mulai menulis dengan documents.
Dokumen
ini tidak baku, selama pengembangan bisa dimodifikasi atau diperbarui. Itu
tidak berarti bahwa design document tidak perlu dibuat lengkap dan serius.
Seperti dalam kalimat pembuka, semuanya perlu dipertimbangkan dan direncanakan
dengan teliti, kalau tidak, pekerjaan tim bisa mengalami banyak masalah.
Apasaja yang tidak direncanakan dengan baik akan menyebabkan kerugian waktu dan
biaya dalam pelaksanaan proyek. Tentu saja tidak segalanya bisa direncanakan
sebelumnya, tetapi menurut teori 80/20, sekitar 80% pekerjaan bisa berjalan
sesuai rencana.
Tidak ada
patokan umum apa saja yang harus menjadi bagian design documents, karena ada
banyak perbedaan tergantung proyeknya. Tetapi dalam satu hal semua dokumen
sama, harus mendeskripsikan game secara kompleks maupun mendetail. Setelah
membaca design document, anda seharusnya memiliki gambaran lengkap tentang
produk akhir. Salah satu dokumen biasanya menjelaskan mekanisme game. Sebagai
bagiannya, misalkan untuk RPG dan strategi, adalah peraturan yang menentukan
dan mendiskripsi tipe objek dalam game berikut karakteristik serta hubungan
interaktifnya.
Bagian lain
membahas penerapan hukum fisika dalam dunia game dalam arti luas, misalkan
kekuatan alam yang dapat diterapkan dan bagaimana reaksi objek-objek dalam
game. Ada deskripsi lokasi secara lisan maupun dalam sketsa, skenario cerita,
bisa disebutkan diferensiasi perangkat pengguna. Dan sebaiknya ada daftar
monster (untuk RPG fantasi) atau daftar pasukan (untuk strategi). Singkatnya,
dalam struktur dokumen-dokumen ini seharusnya terdapat seluruh materi yang
mencakup seluruh aspek game. Baru berdasarkan design documents yang lengkap
bisa ditulis spesifikasi untuk rancangan engine atau modifikasi engine yang
sudah ada, dan rencana produksi. Bagian akhir dari design documents adalah
catatan-catatan desainer game, di mana dicantumkan misalnya ide-ide susulan
atau perubahan yang dilakukan berdasarkan hasil tes, dan seterusnya.
Script
Dalam pemrograman komputer, naskah
adalah sebuah program atau urutan instruksi yang ditafsirkan atau
dilakukan dengan program lain daripada oleh komputer prossesor. Skrip (script)
adalah semacam bahasa pemrograman dalam tingkat kesulitan yang lebih rendah,
tanpa aplikasi hasil kompilasi interpreter; skrip biasanya disisipkan ke dalam
bahasa pemrograman yang lebih kompleks dan hasil skrip digunakan oleh bahasa
pemrograman yang lebih kompleks itu.
Contohnya ialah penyisipan skrip assembly ke dalam program Pascal untuk
mengakses hardware pada level bahasa tingkat rendah. Skrip merupakan kumpulan
sintaks bahasa pemrograman yang siap untuk di-compile. Untuk mengetahui tentang
script, disini ada sedikit rangkuman tentang script :
- Script adalah bahasa yang digunakan untuk menerjemahkan setiap perintah dalam situs yang pada saat di akses.
- Jenis script sangat menentukan statis, dinamis, atau interaktifnya sebuah situs
- Semakin banyak script yang digunakan maka akan terlihat semakin dinamis, dan interaktif serta terlihat lebih bagus.
- Bahasa dasar yang di pakai setiap situs adalah HTM
- Macam-macam script, PHP, ASP, JSP, Java Script, Java Applets, VBScript.
Storyboard
Storyboard adalah visualisasi ide dari aplikasi yang akan dibangun, sehingga
dapat memberikan gambaran dari aplikasi yang akan dihasilkan. Storyboard dapat
dikatakan juga visual script yang akan dijadikan outline dari sebuah
proyek, ditampilkan shot by shot yang biasa disebut dengan istilah scene.
Storyboard sekarang lebih banyak digunakan untuk membuat kerangka pembuatan websites dan proyek media interaktif lainnya seperti iklan, film pendek, games, media pembelajaran interaktif ketika dalam tahap perancangan /desain.
Baru-baru ini istilah “Storyboard” telah digunakan dibidang pengembangan web, pengembangan perangkat lunak dan perancangan instruksi untuk mempresentasikan dan menjelaskan kejadian interaktif seperti suara dan gerakan biasanya pada antarmuka pengguna, halaman elektronik dan layar presentasi. Sebuah Storyboard media interaktif dapat digunakan dalam antarmuka grafik pengguna untuk rancangan rencana desain sebuah website atau proyek interaktif sebagaimana alat visual untuk perencanaan isi.
Sebaliknya, sebuah site map (peta) atau flow chart (diagram alur) dapat lebih bagus digunakan untuk merencanakan arsitektur informasi, navigasi, links, organisasi dan pengalaman pengguna, terutama urutan kejadian yang susah diramalkan atau pertukaran audiovisual kejadian menjadi kepentingan desain yang belum menyeluruh.
Salah satu keuntungan menggunakan Storyboard adalah dapat membuat pengguna untuk mengalami perubahan dalam alur cerita untuk memicu reaksi atau ketertarikan yang lebih dalam. Kilas balik, secara cepat menjadi hasil dari pengaturan Storyboard secara kronologis untuk membangun rasa penasaran dan ketertarikan.
Seorang pembuat Storyboard harus mampu menceritakan sebuah cerita yang bagus. Untuk mencapainya, mereka harus mengetahui berbagai film, dengan pengertian tampilan yang bagus, komposisi, gambaran berurut dan editing. Mereka harus mampu untuk bekerja secara sendiri atau dalam sebuah bagian tiam. Mereka harus mampu menerima arahan dan juga bersiap membuat perubahan terhadap hasil kerja mereka.
Untuk proyek tertentu, pembuat Storyboard memerlukan ketrampilan menggambar yang bagus dan kemampuan beradaptasi terhadap gaya yang bermacam. Mereka harus mampu untuk mengikuti desain yang telah dikeluarkan dan menghasilkan kerja konsisten, yang digambar pada model.
Storyboard sekarang lebih banyak digunakan untuk membuat kerangka pembuatan websites dan proyek media interaktif lainnya seperti iklan, film pendek, games, media pembelajaran interaktif ketika dalam tahap perancangan /desain.
Baru-baru ini istilah “Storyboard” telah digunakan dibidang pengembangan web, pengembangan perangkat lunak dan perancangan instruksi untuk mempresentasikan dan menjelaskan kejadian interaktif seperti suara dan gerakan biasanya pada antarmuka pengguna, halaman elektronik dan layar presentasi. Sebuah Storyboard media interaktif dapat digunakan dalam antarmuka grafik pengguna untuk rancangan rencana desain sebuah website atau proyek interaktif sebagaimana alat visual untuk perencanaan isi.
Sebaliknya, sebuah site map (peta) atau flow chart (diagram alur) dapat lebih bagus digunakan untuk merencanakan arsitektur informasi, navigasi, links, organisasi dan pengalaman pengguna, terutama urutan kejadian yang susah diramalkan atau pertukaran audiovisual kejadian menjadi kepentingan desain yang belum menyeluruh.
Salah satu keuntungan menggunakan Storyboard adalah dapat membuat pengguna untuk mengalami perubahan dalam alur cerita untuk memicu reaksi atau ketertarikan yang lebih dalam. Kilas balik, secara cepat menjadi hasil dari pengaturan Storyboard secara kronologis untuk membangun rasa penasaran dan ketertarikan.
Seorang pembuat Storyboard harus mampu menceritakan sebuah cerita yang bagus. Untuk mencapainya, mereka harus mengetahui berbagai film, dengan pengertian tampilan yang bagus, komposisi, gambaran berurut dan editing. Mereka harus mampu untuk bekerja secara sendiri atau dalam sebuah bagian tiam. Mereka harus mampu menerima arahan dan juga bersiap membuat perubahan terhadap hasil kerja mereka.
Untuk proyek tertentu, pembuat Storyboard memerlukan ketrampilan menggambar yang bagus dan kemampuan beradaptasi terhadap gaya yang bermacam. Mereka harus mampu untuk mengikuti desain yang telah dikeluarkan dan menghasilkan kerja konsisten, yang digambar pada model.
Storyboard pada Game
Storyboard pada Game sedikit berbeda dari storyboard animasi, dimana pada storyboard
game terdapat goal / mission yang akan dibuat pada game itu sendiri.
Kemudian storyboard pada game menjelakaskan tentang alur permaianan itu sendiri
seperti apa tergantung dari jenis game. misalkan game ber-genre arcade
tidak memiliki alur cerita namun game terebut menitik beratkan pada perolehan
point. Jadi storyboard yang dibuat yaitu bagaimana pemain mendapat nilai /
point setinggi mungkin.
Storyboard pada
Aminasi
Storyboard pada animasi ialah untuk menjelaskan tentang alur narasi dari sebuah
cerita, atau storyboard pada animasi sebagai acuan agar animator dalam
membuat animasi tidak melenceng dari yang dibuat pada storyboard. Sebenarnya
fungsi dari storyboard itu sama, namun yang berbeda hanya media yang
diperuntukkan dari storyboard itu sendiri, contoh storyboard pada game atau
storyboard pada iklan.
A. Pilihan bahasa pemrograman
Walaupun terdapat banyak sekali
pilihan bahasa pemrograman untuk membuat game, namun padaintinya 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 perilakukarakter dan kejadian di level game, maka
scriptakan perlu untuk mengeksekusi sebagai bagiandari loop game utama. Ini
berarti bahwa scriptyang 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 luasdiinterpretasikan,melalui
susunan serangkaian byte. Penafsiran bahasa diambil melalui formatteks.
Interpreter melihat setiap baris, penyusunan bekerja sesuai yang maksud
dari script, danmelakukan tindakan yang spesifik. Bahasa byte-terkompilasi
dikonversi dari teks ke formatinternal, yang disebut byte code. Kode
byte biasanya jauh lebih padat daripada format teks.Karena kode byte dalam
suatu formatdioptimalkan ketika dieksekusi, agar dapat berjalan lebih
cepat
c). 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.
B. 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.
C. 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.
D. 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.
Memulai sebagai teks dalam sebuah
file teks, script biasanya melewati empat tahap:
tokenization : 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.
- Tokenizing : mengidentifikasi unsur-unsur dalam teks. Sebuah file teks hanya berisiserangkaian karakter (dalam pengertian karakter ASCII). Hasil tokenizer keluar sebagai kumpulan byte tertentu dan jenis dari kelompok tertentu yangmembentuk mereka. Sebuah string dalam bentuk :
- Parsing (penguraian) : 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.Contoh : 1 if (a < b) return;
dapat dilakukan proses parsing seperti pada bagan di bawah ini :tes
- 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.
- 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.
Contoh
bahasa yang sering digunakan
1. Lua
Lua adalah bahasa prosedural
sederhana yangdibangun dari dasar ke atas sebagai bahasaembedding. Desain
bahasa didorong olehekstensibilitas. Tidak seperti kebanyakan bahasaembedded,
hal ini tidak terbatas untuk menambahkan fungsi baru atau tipe data di C
atauC + +. Cara kerja bahasa Lua juga dapat men-tweak.Lua memiliki sejumlah
kecil core libraryyang menyediakan fungsionalitas dasar. Core yangrelatif tanpa
sifat khusus merupakan bagian objek tersebut, bagaimanapun. Dalam game
anda tidak mungkin membutuhkan library untuk memprosesapa pun kecuali
matematika dan logika. Core kecilini mudah dipelajari dan sangat fleksibel.
2. Python
Python adalah mudah dipelajari,
bahasascripting berorientasi objek dengan ekstensibilitas baik dan
dukungan embedding. Pythonmenyediakan dukungan yang sangat baik
untuk pemrograman bahasa campuran, termasuk kemampuan untuk
secara transparan memanggil Cdan C + + dari Python. Python memiliki
dukunganuntuk fungsi re-entrant sebagai bagian dari bahasa inti dari versi 2.2
dan seterusnya (disebutGenerator).Python memiliki sejumlah besar library
yangtersedia untuk itu dan memiliki komunitas yangsangat besar dari usernya.
Pengguna pythonmemiliki reputasi untuk menolong, dan newsgroupcomp.lang.python
merupakan sumber troubleshooting dan saran yang sangat baik.Kelemahan
utama Python adalah dalamkecepatan dan ukuran. Meskipun mengalamikemajuan
signifikan dalam kecepatan eksekusitelah dibuat selama beberapa tahun terakhir,namun
masih terasa lambat ketika dijalankan.Python bergantung pada lookup tabel hash
(olehstring) bagi banyak operasi fundamental (fungsi panggilan, akses
variabel, object-oriented programming). Hal ini menambahkan
banyak biaya overhead.
BAB 3
https://setiyanugroho.wordpress.com/2011/04/12/kecerdasan-buatan-dalam-game/ (Rabu,28 Maret 2018 ,19:00 Wib)
Pengertian Kecerdasan Buatanhttps://setiyanugroho.wordpress.com/2011/04/12/kecerdasan-buatan-dalam-game/ (Rabu,28 Maret 2018 ,19:00 Wib)
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),
logika fuzzy, jaringan syaraf tiruan dan robotika.
Penelitian dalam AI menyangkut pembuatan mesin
untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk
contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk
menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan,
suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri,
yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata.
Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan,
teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi
perangkat lunak komputer rumah dan video game.
Pengertian Game
Game adalah permainan komputer yang dibuat dengan
teknik dan metode animasi. Permainan game merupakan bidang AI yang sangat
populer berupa permainan antara manusia melawan mesin yang mempunyai
intelektual untuk berpikir. Komputer dapat bereaksi dan menjawab
tindakan-tindakan yang diberikan oleh lawan mainnya.
Salah satu komputer yang ditanamkan AI untuk game bernama Deep Blue.
Deep Blue adalah sebuah komputer catur buatan IBM pertama yang
memenangkan sebuah permainan catur melawan seorang juara dunia (Garry Kasparov)
dalam waktu standar sebuah turnamen catur. Kemenangan pertamanya (dalam pertandingan
atau babak pertama) terjadi pada 10 Februari 1996, dan merupakan permainan yang
sangat terkenal.
Kini telah banyak berkembang game AI yang semakin
menarik, interaktif, dan dengan grafis yang sangat bagus. Ditambah dengan
kemajuan teknologi jaringan komputer yang semakin cepat, sudah banyak terdapat
game-game AI yang berbasiskan online. Tidak sedikit orang yang
tertarik dengan game saat ini. Mereka memainkan game untuk mengisi kekosongan
waktu mereka atau pun melatih skill mereka dalam berpikir.
Sejarah Artificial Intelligence dalam Game
Pada tahun 1769, dataran Eropa dikejutkan dengan
suatu permainan catur yang dapat menjawab langkah-langkah permainan catur yang
belum ditentukan terlebih dahulu. Mesin ini disebut dengan Maelzel Chess
Automation dan dibuat oleh Wolfgang Von Kempelan (1734-1804)
dari Hungaria. Akan tetapi mesin ini akhirnya terbakar pada tahun 1854 di
Philadelphia Amerika Serikat.banyak orang tidak percaya akan kemampuan mesin
tersebut. Dan seorang penulis dari Amerika Serikat, Edgar Allan Poe
(1809-1849) menulis sanggahan terhadap mesin tersebut, dia dan kawan-kawannya
ternyata benar, bahwa mesin tersebut adalah tipuan, dan kenyataannya bukanlah
aoutomation, tetapi merupakan konstruksi yang sangat baik yang dikontrol oleh
seorang pemain catur handal yang bersembunyi di dalamnya.
Usaha untuk membuat konstruksi mesin permainan
terus dilanjutkan pada tahun 1914, dan mesin yang pertama kali didemonstrasikan
adalah mesin permainan catur. Penemu mesin ini adalah Leonardo Torres Y
Quevedo, direktur dari Laboratorio de Automatica di Madrid,
Spanyol. Beberapa tahun kemudian, ide permainan catur dikembangkan dan
diterapkan di komputer oleh Arthur L. Samuel dari IBM dan
dikembangkan lebih lanjut oleh Claude Shannon.
Artificial Intelligence dalam 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.
Definisi
Game Engine
Game engine
adalah perangkat lunak yang dirancang untuk membuat dan mengembangkan video
game. Fungsi utama yang diberikan oleh game engine meliputi rendering untuk 2D
atau 3D graphic, collision detection, sound, scripting, animasi, artificial
intelligence, networking, memory management, threading dan scene graph. Game
engines memberikan perangkat untuk visual development dengan tambahan komponen
perangkat lunak yang dapat dipakai berulang kali. Perangkat ini pada umumnya
memberikan integrated development environment yang dapat mempermudah, serta
mempercepat pengembangan game.Game engine juga sering disebut juga “Game
Middleware”. Game Middleware adalah software yang didalamnya sudah terdapat
elemen-elemen yang dibutuhkan oleh seorang game developer, kebanyakan dari game
middleware memberikan fasilitas guna menunjang pengembangan game dengan mudah
seperti graphics, sound dan Artificial intelligence.
Beberapa
elemen yang ada di dalam game engine adalah :
- Tools/Data
Dalam
pengembangan game, dibutuhkan data yang tidak semudah menuliskan text files.
Dalam pengembangan game, paling tidak dibutuhkan beberapa tools seperti 3d
model editor, level editor dan graphics programs. Bahkan jika diperlukan,
seringkali kita mengembangkan game engine tersebut dengan menambahkan beberapa
code dan fitur yang diperlukan.
- System
System
sendiri adalah bagian dari game engine yang berfungsi untuk melakukan
komunikasi dengan hardware yang berada di dalam mesin. Jika game engine sudah
dibuat dengan baik maka system ini adalah satu-satunya bagian yang membutuhkan
perubahan yang cukup banyak apabila dilakukan implementasi pada platform yang
berbeda. Di dalam system sendiri terdapat beberapa sub system yaitu graphics,
input, sound, timer, configuration. System sendiri bertanggung jawab untuk
melakukan inisialisasi, update dan mematikan sub system yang terdapat di
dalamnya.
- Console
Dengan
menambahkan console, kita dapat merubah setting game dan setting game engine di
dalam game tanpa perlu melakukan restart pada game tersebut. Console sendiri
lebih sering digunakan dalam proses debugging. Apabila game engine tersebut
mengalami error kita tinggal mengoutputkan error message tersebut ke dalam
console tanpa harus melakukan restart. Console sendiri dapat dihidupkan dan
dimatikan sesuai keinginan.
- Support
Support
adalah bagian yang paling sering digunakan oleh system di dalam game engine.
Support sendiri berisi rumus-rumus matematika yang biasa digunakan, vector,
matrix, memory manager, file loader. Merupakan dasar dari game engine dan
hampir digunakan semua projek game engine.
- Renderer/Engine Core
Pada game
engine, engine core / renderer terdiri dari beberapa sub yaitu visibility,
Collision Detection dan Response, Camera, Static Geometry, Dynamic Geometry,
Particle Systems, Billboarding, Meshes, Skybox, Lighting, Fogging, Vertex
Shading, dan Output.
- Game Interface
Game
interface sendiri merupakan layer diantara game engine dan game itu sendiri.
Berfungsi sebagai control yang bertujuan untuk memberikan interface apabila di
dalam game engine tersebut terdapat fungsi fungsi yang bersifat dinamis
sehingga memudahkan untuk mengembangkan game tersebut.
- The Game
Merupakan
inti dari penggunaan game engine sendiri, sehingga terserah kita bagaimana
mengembangkan game tersebut.
Saat
sekarang ini sudah sangat banyak game engine yang hadir, dan sangat maju. Para
pembuat game engine kini berlomba-lomba untuk menciptakan game engine dengan
tampilan yang menarik agar menciptakan suasana permainan yang nyaman atau enak
untuk dilihat dan dimainkan dalam PC ataupun Console. Dengan tampilan atau
graphic yang menarik yang kini semakin mendekati realitas dalam segi fisik para
tokoh serta gameplay-nya, akan membuat para gamers semakin antusias untuk
memainkan game tersebut.
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.
(Rabu, 28 Maret 2018,19:34 Wib)
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.
Beberapa
elemen yang terdapat dalam game engine, yaitu:
a) Tools/Data
Pada pengembangan game paling tidak dibutuhkan beberapa
tools seperti 3d model editor, level editor dan graphics programs. Bahkan jika
diperlukan, seringkali kita mengembangkan game engine tersebut dengan
menambahkan beberapa code dan fitur yang diperlukan.
b) System
System adalah bagian dari game engine yang berfungsi
untuk melakukan komunikasi dengan hardware yang berada di dalam mesin. System
adalah bagian yang membutuhkan perubahan yang cukup banyak apabila dilakukan
implementasi pada platform yang berbeda. Di dalam system sendiri terdapat
beberapa sub system seperti graphics, input, sound, timer, configuration.
System bertanggung jawab untuk melakukan inisialisasi, update dan mematikan sub
system yang terdapat di dalamnya.
c) Console
Console dapat merubah setting game dan setting game
engine di dalam game tanpa perlu melakukan restart pada game tersebut. Console
biasa digunakan dalam proses debugging, seperti misalnya apabila game engine
tersebut mengalami error maka kita hanya mengoutputkan error message tersebut
ke dalam console tanpa harus melakukan restart.
d) Support
Support merupakan bagian yang sering digunakan pada
system di galam game engine. Support berisikan rumus-rumus matematika yang
biasa digunakan, vector, matrix, memory, file loader. Merupakan dasar dari game
engine dan hampir digunakan dalam semua project game engine.
e) Renderer/Engine
Core
Renderer/engine core terdiri dari beberapa sub yaitu
visibility, collision detection dan response, camera, static geometry, dynamic
geometry, particle systems, billboarding, meshes, skybox, lighting, fogging,
vertex shading dan output.
f) Game
Interface
Game interface merupakan layer antara game engine dan
game itu sendiri. Berfungsi sebagai control yang bertuuan untuk memberikan
interface apabila di dalam game engine tersebut terdapat fungsi yang bersifat
dinamis sehingga memudahkan untuk mengembangkan game tersebut.
g) The
Game
Game merupakan inti dari penggunaan game engine
sendiri, sehingga ini tergantung bagaimana pengguna dalam mengembangkannya.
Pengertian
Game Engine (Mesin Game)
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.
(28 Maret 2018, 19:40 Wib)
Dalam lingkungan game, interaksi fisik dapat dimaksud dengan menyerap pengertian diatas, yaitu menjadi interaksi fisik ialah salah satu bentuk interaksi yang terjadi jika ada dua objek atau lebih melakukan kontak. Kontak yang terjadi antara objek – objek tersebut umumnya adalah collision atau tabrakan.
Collision Detection
Collision Detection dibutuhkan untuk memastikan tidak ada objek yang saling menembus.Pada dasarnya, objek baik 2 dimensi maupun 3 dimensi pada Teknologi Game dan digital, secara umumnya objek – objek tersebut bukanlah objek yang memiliki kemampuan fisik, atau secara lain objek tersebut hanyalah susunan dari titik, garis, dan penampang yang terhubung satu sama lain, dan bisa dianggap bahwa objek tersebut hanyalah sebatas bentuk, tanpa memiliki kemampuan.
Agar objek – objek tersebut dapat mensimulasikan kemampuan fisik, objek – objek tersebut harus diberikan pemahaman dengan menggunakan aljabar linear dan komputasi geometri.
Komputasi geometri tersebut digunakan untuk memberikan batas pada objek. Walaupun objek tersebut terlihat sudah memiliki penampang, sebenarnya penampang tersebut bukanlah batasan dari sisi terluar objek tersebut. Oleh karena itu, komputasi geometri dibuat dengan parameter bentuk dan volume dari objek tersebut. Umumnya, bentuk batasan ini disebut bounding box ( batas kotak ).
Aljabar linear digunakan untuk memberitahukan bahwa, ketika batas tersebut terletak pada koordinat yang sama atau berpotongan dengan batas objek lain, maka objek – objek tersebut mensimulasikan tabrakan.
Pada awalnya, penggunaan algoritma untuk pendeteksian tabrakan ini bekerja dengan cara mudah, yaitu dengan cara mengecek apakah penampang dari batas objek A dengan penampang dari batas objek B akan saling berpotongan. Tentu saja hal tersebut akan bekerja. Tapi, bayangkan apabila objek yang digunakan sangat banyak. Setiap penampang dari batas objek A = [a1, a2, …, an] akan melakukan pengecekan sampai ke penampang dari batas objek N = [n1, n2, …, nn]. Mungkin algoritma ini akan bekerja dengan baik apabila hanya terdapat 2 objek dalam lingkungan tersebut.
Dalam perkembangan pendeteksian tabrakan, konfigurasi kemampuan fisik dari satu pergerakan ke pergerakan selanjutnya hanya berubah sedikit. Banyak objek – objek yang tidak bergerak sama sekali. Algoritma telah di desain sehingga perhitungan telah selesai untuk menentukan bahwa pergerakan terdahulu dapat digunakan kembali untuk pergerakan di masa kini, yang menghasilkan perhitungan selesai dengan lebih cepat.
Perkembangan tersebut tujuan nya hanya untuk mencari dan menentukan pasangan – pasangan dari objek – objek yang mungkin berpotongan. Pasangan – pasangan tersebut akan menganalisis pergerakan kedepannya.
Logikanya adalah setiap kotak direpresentasikan dengan tiga bentuk interval ( misalkan, sebuah kotak akan direpresentasikan dengan I1 x I2 x I3 = [a1, b1] x [a2, b2] x [a3, b3] ). Jika terdapat 2 kotak ( dengan bounding box nya masing – masing ) I1 x I2 x I3 dan J1 x J2 x J3 akan berpotongan jika, dan hanya jika, I1 berpotongan dengan J1, dan seterusnya. Maka, pada pergerakan tersebut dan untuk ke pergerakan selanjutnya, Ik dan Jk berpotongan, sehingga hal tersebut akan sama untuk pergerakan lainnya. Sebaliknya, jika mereka tidak berpotongan pada pergerakan sebelumnya, maka pergerakan mereka tidak akan berpotongan.
Sehingga untuk mengurangi masalah tersebut, dibuatkan tiga daftar interval ( satu untuk setiap sumbu, X,Y, dan Z). Maka dari itu didapat matriks n x n, M = (mij) dengan isi nol dan satu: mij adalah 1 jika interval i dan j berpotongan, dan 0 jika mereka tidak berpotongan.
Spatial Partitioning
Algoritma alternatif di kelompokkan dibawah spatial partitioning, termasuk octress, binary space partitioning ( BSP Trees ), dan yang lainnya yang memiliki pendekatan yang serupa. Hal ini digunakan dengan membagikan sebuah wilayah menjadi beberapa bagian, dan jika dua objek tidak terdapat pada bagian yang sama, maka objek – objek tersebut tidak perlu dicek apakah akan berpotongan. BSP Trees bisa memperhitungkan terlebih dahulu, yang mana pendekatan tersebut sangat cocok untuk didefinisikan di dalam objek berbentuk tembok, dan objek halangan yang tetap dalam sebuah game. Algoritma tersebut secara umum lebih dulu diketahu daripada algoritma yang telah dijabarkan sebelumnya.Bounding Boxes
Bounding boxes ( atau Bounding volumes ) seringnya digunakan untuk objek yang berbentuk persegi atau kubus, tetapi objek dengan bentuk lainnya dapat menggunakannya. Bounding diamond, minimum bounding parallelogram, convex hull, bounding circle, atau bounding ball, dan bounding ellipse sudah diujicoba, tetapi bounding boxes tetap menjadi algoritma yang popular karena simpel.
BAB 6
(Rabu 28 Maret 2018, 19:47 Wib)
User Interface pada Game Komputer
User interface berarti
tampilan antar muka pengguna. Jika didefinisikan secara sederhana User
interface adalah penghubung atau mediator antar komputer dan manusia atau user
komputer itu agar hubungan antara perangkat komputer dengan user bisa terjalin.
User interface sangat berperan penting dalam dunia komputer karena dengan
adanya user interface maka kemudahan user dalam mengoprasikan suatu perangkat
komputer menjadi lebih mudah.
Desain user interface dalam game berbeda dari
desain user interface lainnya karena melibatkan unsur tambahan fiksi. Fiksi
melibatkan avatardari pengguna yang sebenarnya atau player. Sebuah desain
interface pada suatu game mempengaruhi kenyamanan dan sejauh mana user atau
pemain meminati game tersebut. Dalam user interface game, terdapat sebuah
teori yang dikemukakkan oleh Erik Fagerholt dan Magnus Loretzon 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. 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
2. 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.
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).
Fable 3 adalah contoh di mana unsur-unsur spatial
yang digunakan untuk memberikan informasi lebih kepada pemain dan mencegah
mereka dari melompat ke layar peta. Jejak bersinar hampir cocok dalam fiksi
mengingat kualitas estetika ajaib itu tapi karakter tidak dimaksudkan untuk
menyadari hal itu. Ini memandu pemain ke tujuan berikutnya.
4. Non-Diagetic
Antarmuka yang diberikan di luar dunia game,
hanya terlihat dan terdengar ke pemain di dunia nyata desain interface ini
semuanya mengunakan visual heads-up display (HUD). semua menjadi sangat nyaman dengan
penggunaan heads-up display (HUD) dalam permainan. Sistem ini memberikan
informasi penting dengan cara yang cukup sederhana. Jika dilakukan dengan benar
pemain bahkan tidak tahu itu ada. Mass Effect 3 menggunakan banyak Non-diegetik
elemen UI untuk menginformasikan pemain senjata karakter dipilih dan kekuasaan
– antara lain. Mengingat pengaturan futuristik itu saya tidak bisa membantu
untuk berpikir jika beberapa informasi ini bisa telah terintegrasi ke dalam
dunia game, narasi, atau bahkan keduanya.
(Rabu, 28 Maret 2018, 19:57 WIB)
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.
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.
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.
(Rabu, 28 Maret 2018 , 20:04 WIB)
Seiring
dengan perkembangan teknologi, inovasi yang terus menerus, mengakibatkan banyak
muncul game komputer yang menyediakan fasilitas untuk dapat bermain dalam suatu
jaringan komputer (network). Fasilitas jaringan komputer (network) memungkinkan
game dapat dimainkan oleh beberapa orang sekaligus dengan menggunakan beberapa
buah komputer yang terhubung satu dengan yang lainnya, menyebabkan game yang
menggunakan papan semakin tersisih. Oleh karena itu dibutuhkan aplikasi yang
menggantikan game papan agar tidak tersisihkan dan terlupakan.
Game
jaringan sering juga disebut multiplayer game, dapat dimainkan oleh beberapa
user sekaligus dalam suatu jaringan (jaringan lokal LAN atau jaringan
internet). Game jaringan sangat populer karena alasan kenyamanan ruang (space).
User tidak perlu berebut pandangan dalam satu monitor dengan user lain, user
dapat merancang strategi permainan di depan komputernya sendiri, tidak terbatas
oleh ruang. Game jaringan yang sederhana dapat dibuat dengan menggunakan
aplikasi Visual Basic dan menggunakan komponen Winsock. Berdasarkan uraian di
atas, penulis bermaksud untuk merancang suatu perangkat lunak permainan Halma
yang dapat dimainkan dalam suatu jaringan komputer (network).
SEJARAH
PERKEMBANGAN GAME ONLINE
Sejarah game
online inilah perjalanan sejarah game online permainan daring dimulai sejak
tahun 1969, ketika permainan untuk dua orang dikembangkan dengan tujuan awal
untuk pendidikan. Kemudian pada awal tahun 1970, sebuah sistem dengan kemampuan
time-sharing, yang disebut Plato, diciptakan untuk memudahkan siswa belajar
secara online, di mana beberapa pengguna dapat mengakses komputer secara
bersamaan menurut waktu yang diperlukan. Dua tahun kemudian, muncul Plato IV
dengan kemampuan grafik baru, yang digunakan untuk menciptakan permainan untuk
banyak pemain (multiplayer games).
Permainan
daring benar-benar mengalami perkembangan setelah tahun 1995, pembatasan NSFNET
(National Science Foundation Network) dihapuskan, membuat akses ke domain
lengkap dari internet. Kesuksesan moneter menghampiri perusahaan-perusahaan
yang meluncurkan permainan ini, sehingga persaingan mulai tumbuh dan menjadikan
permainan daring semakin berkembang hingga hari ini.
Permainan
Daring (Online Games) adalah jenis permainan komputer yang memanfaatkan
jaringan komputer (LAN atau internet), sebagai medianya. Biasanya permainan
daring disediakan sebagai tambahan layanan dari perusahaan penyedia jasa
online, atau dapat diakses langsung melalui sistem yang disediakan dari
perusahaan yang menyediakan permainan tersebut.
Permainan
daring terdiri dari banyak jenis, dari mulai permainan sederhana berbasis teks
hingga permainan yang menggunakan grafik kompleks dan membentuk dunia virtual
yang ditempati oleh banyak pemain sekaligus.
Dalam
permainan daring, ada dua unsur utama, yaitu server dan client. Server
melakukan administrasi permainan dan menghubungkan client, sedangkan client
adalah pengguna permainan yang memakai kemampuan server.
Permainan
daring bisa disebut sebagai bagian dari aktivitas sosial karena pemain bisa
saling berinteraksi secara virtual dan seringkali menciptakan komunitas maya.
TIPE – TIPE
GAME ONLINE
FPS adalah game Tembak-tembakan, pukul-pukulan, tusuk-tusukan yang menggunakan sudut pandang orang pertama. Biasanya kita hanya bisa melihat tangan dari character kita. Contoh game ini FPS adalah (Call of Duty, Counter Strike, Far Cry 3)
RTS (Real Time Strategy). Game ini biasanya bersifat turn based ataupun bisa dimainkan secara bersamaan, identik dengan bermain melawan human intelegent (manusia vs manusia) yang biasanya menggunakan LAN ataupun Internet. Game ini bisa dikatakan game perang-perangan. Contoh game RTS adalah (DOTA, StarCraft, Civilization)
RPG (Role Playing Game). Game ini memiliki unsur yang unik, karena biasanya tidak ada tamat dalam game seperti ini (Kalaupun tamat, hanya ceritanya saja, dan kalian masih bisa leveling atau grinding sesuka hati). Kalian akan menjalankan sebuah main character yang bisa kalian costumize, mencari uang, membangun koneksi dengan NPC (non playable player) dan sebagainya. Contoh dari game RPG adalah (KOA, Skyrim, The Witcher).
Cross-Platform Online, merupakan game yang dapat dimainkan secara online dengan hardware yang berbeda misalnya saja need for speed undercover dapat dimainkan secara online dari PC maupun Xbox 360(Xbox 360 merupakan hardware/console game yang memiliki konektivitas ke internet sehingga dapat bermain secara online).
Browser
Games, merupakan game yang dimainkan pada browser seperti Firefox, Opera, IE.
Syarat dimana sebuah browser dapat memainkan game ini adalah browser sudah
mendukung javascript, php, maupun flash.
Massive
Multiplayer Online Games, adalah game dimana pemain bermain dalam dunia yang
skalanya besar (>100 pemain), setiap pemain dapat berinteraksi langsung
seperti halnya dunia nyata.
BERDASARKAN
TEKNOLOGI GRAFIS
2 Dimensi,
game yang mengadopsi teknologi ini rata-rata game yang termasuk ringan, tidak
membebani system. Tetapi game dengan kualitas gambar 2D tidak enak dilihat
apabila dibandingkan dengan game 3D sehingga rata-rata game online sekarang
mengadopsi teknologi 2,5D yaitu dimana karakter yang dimainkan masih berupa 2D
akan tetapi lingkungannya sudah mengadopsi 3D.
3
Dimensi, game bertipe 3 DImensi merupakan game dengan grapis yang baik dalam
penggambaran secara realita, kebanyakan game-game ini memiliki perpindahan
kamera (angle) hingga 360 derajat sehingga kita bisa melihat secara keseluruhan
dunia games tersebut. Akan tetapi game 3D meminta spesifikasi komputer yang
lumayan tinggi agar tampilan 3 Dimensi game tersebut ditampilkan secara
sempurna.
DAMPAK BAIK
DAN BURUK DARI GAME ONLINE
Game online
muncul tidak hanya mempengaruhi kehidupan social pemainnya dalam dunia nyata
tetapi juga terkadang mempengaruhi kejiwaan seseorang apabila memainkannya
terlalu lama. Seperti ingin menjadi sosok yang ada di dalam game dan kemudian
melakukan tindakan kriminal ke orang sekitar yang bisa di bilang tidak tahu
apa-apa(normal). Atau mempengaruhi emosional yang bisa jadi merugikan orang
lain.
Akan tetapi
dari segi bisnis, game online masih memiliki prospek bagus kedepannya. Dengan
kehadiran games online ini, orang-orang bisa menciptakan lapangan kerja sendiri
yaitu games center, atau menjadi pengembang games sehingga dapat mengurangi
angka pengangguran. Game online juga bisa meningkatkan kemampuan bekerja sama
pada otak anak dan menghasilkan uang.
Langganan:
Postingan (Atom)