Rabu, 23 Maret 2016

Tugas Pengantar Teknologi Game I

Muhammad Yudistira. A_ 56413184_3IA19                                                

PENGANTAR TEKNOLOGI GAME  I

Pada blog kali ini, saya akan mengulas tentang beberapa materi yang terdapat pada mata kuliah Pengantar Teknologi Game, berikut ini adalah ulasan materi tersebut dari saya.

Teknologi Game dan Bisnis dalam Game Komputer
Teknologi Game
Kata teknologi game terdiri dari dua kata yaitu “teknologi” dan “game”, 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 dimaksudkan dengan sesuatu yang diwujudkan secara rasional tersebut dapat saja berupa benda atau konsep. Teknologi sebenarnya lebih dari sekedar penciptaan barang, benda atau alat lain. Teknologi bahkan telah menjadi suatu sistem atau struktur dalam eksistensi manusia di dalam dunia.
Kata yang kedua, yaitu game, game(permainan) secara umum adalah sebuah aktivitas rekreasi dengan tujuan bersenang-senang, mengisi waktu luang, atau berolahraga ringan. Permainan biasanya dilakukan sendiri atau bersama-sama. Sedangkan computer game adalah permainan video yang dimainkan pada komputer pribadi, dan bukan pada konsol permainan, maupun mesin ding-dong.
    Permainan komputer telah berevolusi dari sistem grafis sederhana sampai menjadi kompleks dan mutakhir. Namun, pasar permainan komputer di Amerika Serikat mulai menurun sejak tahun 1999. adalah permainan yang menggunakan interaksi dengan antarmuka pengguna melalui gambar yang dihasilkan oleh piranti video. Permainan video umumnya menyediakan sistem penghargaan, misalnya skor yang dihitung berdasarkan tingkat keberhasilan yang dicapai dalam menyelesaikan tugas-tugas yang ada di dalam permainan. Kata “video” pada “permainan video” pada awalnya merujuk pada piranti tampilan raster. Namun dengan semakin dipakainya istilah “video game”, kini kata permainan video dapat digunakan untuk menyebut permainan pada piranti tampilan apapun. Sistem elektronik yang digunakan untuk menjalankan permainan video disebut platform, contohnya adalah komputer pribadi dan konsol permainan. Tampilannya mirip seperti game dari bahasa program Java, yang bisa dimainkan di handphone sekarang ini. Perusahaan game yang terkenal pada saat itu adalah Atari, Sega dan Nintendo.
Pada jaman sekarang ini, permainan video game dengan console sudah berkembang dengan sangat pesat, console yang cukup terkenal yaitu X - BOX dari Microsoft dan PlayStation keluaran Sony. Pada console game kita menemukan adanya lingkungan bermain game yang lebih sederhana dibanding pemain di PC game, bukan hanya terutama karena keterbatasan fitur dari joystick, tapi karena disebabkan keterbatasan teknologi di dalam perangkat keras (hardware) pada console serta output resolusi visual yang secara potensial lebih rendah.
Seperti kita ketahui, pada umumnya setiap PC memiliki sebuah keyboard dan sebuah mouse yang bisa digunakan dalam desain permainan game yang lebih kompleks. Gambar grafik yang ditampilkan di PC game lebih hidup dan tajam, tergantung dari pemakaian display adapter card atau video card yang digunakan pada mainboard komputer. Semakin besar kapasitas memori video card-nya, maka semakin halus pula resolusi gambar dan pergerakan gamenya juga tidak putus putus atau lebih fleksibel. Sedangkan console game biasanya dimainkan di televisi, dimana ketajaman gambar lebih rendah dan game biasanya dimainkan dari jarak dekat.

Bisnis dalam Game Komputer
Di zaman modern ini, 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.
Contoh untuk bisnis dalam game komputer itu beragam. Seperti kita dituntut melakukan pembayaran untuk game tersebut. Maksud dari pembayaran ini adalah bagaimana perusahaan game online mendapatkan uang dari gamesnya. Bedasarkan kategori ini games online dapat dibedakan menjadi 2 yaitu : 
A. Pay Per Item, game yang berada pada category ini merupakan game yang bisa diinstall atau dimainkan secara gratis, dan game ini biasanya mengenakan biaya pada pemainnya apabila pemainnya ingin cepat menaikkan level atau membeli barang (item) langka yang tidak pernah dijumpai pada permainan. Jenis game seperti ini yang paling dijumpai di Indonesia. Contoh: Gunbound, Ragnarok, Ghost Online,dll.
B. Pay per Play, game ini harus dibeli dan diinstal secara legal karena pada saat diinstal game terebut akan mendaftarkan pemain ke internet langsung dan apabila yang diinstal adalah program bajakan maka secara otomatis system akan memblokirnya. Contoh: War of Warcraft,dll. 
Mungkin kita juga tidak asing mendengar permainan Let's Get Rich. LGR merupakan permainan monopoly yang sudah dimodifikasi sedemikian rupa. Ini merupakan game yang kita jumpai di gadget, baik android maupun iOs. Dalam game ini kita sangat membutuhkan diamond yang berfungsi untuk membeli item bagus yang dapat meningkatkan peluang kita untuk menjadi pemenang. Diamond ini pun dapat dijadikan bisnis karena mengharuskan kita mengeluarkan uang untuk mendapatkannya. 


Cara Membuat Script Game Komputer
Mencari Alat/Aplikasi yang Diperlukan:
Berikut ini adalah beberapa pilihan alat/aplikasi yang diperlukan dalam membuat script game komputer.
1.    Membuat game berbasis teks. Game jenis kebanyakan merupakan game berbasis teks yang fokus pada cerita, teka-teki, atau petualangan yang menggabungkan cerita, eksplorasi, dan teka-teki. Aplikasi yang dianjurkan untuk membuat game ini :
ü  Twine adalah aplikasi yang bisa digunakan dengan mudah di browser.
ü  StoryNexus dan Visionaire adalah pilihan yang menyediakan lebih banyak pilihan gameplay dan gambar statis.
ü  Inform7 adalah alat atau aplikasi yang lebih bagus karena memiliki komunitas dan pendukung yang besar.

2.    Membuat game 2D. GameMaker dan Stencyl adalah opsi yang bagus jika ingin membuat game 2D dalam genre apapun, dan keduanya dapat digunakan untuk menggunakan kode pemrograman tanpa harus tahu bagaimana cara membuat program. Scratch! juga merupakan alat yang bisa digunakan untuk membuat game browser.
3.    Mencoba membuat game 3D. Aplikasi yang dapat digunakan seperti spark, game guru, dan engine game yang sedang populer yaitu unity.
4.    Mengambil pendekatan yang fokus pada pemrograman. Jika ingin menggunakan salah satu engine di atas untuk membuat game pertama untuk pertama kalinya, tidak perlu mengambil cara yang berbeda yang lebih sulit. Tapi, beberapa orang lebih suka mengendalikan segala aspek dari game yang mereka buat dan ingin membuatnya dari nol. Idealnya, agar dapat menggabungkan semua aspek game secara rapi dan jelas, dianjurkan untuk lebih memilih membuat game di Integrated Development Environment seperti Eclipse dan bukan di text editor.

Membuat Game
1.     Menentukan Konsep. membuat game sederhana dari genre yang suka adalah langkah awal yang cukup baik (misalnya, gameplatformer atau role-playing). Sebelum memulai, ada beberapa poin yang dimiliki dalam game tersebut, yaitu:
ü  Menentukan komponen utama gameplaynya, apakah itu mengalahkan musuh, memecahkan teka-teki, atau bicara dengan karakter lain di game.
ü  Menentukan gameplay yang diinginkan pada pembuatan game tersebut.
ü  Menentukan genre game tersebut.
2.    Buat level yang sederhana. Jika menggunakan engine game atau alat pembuat game untuk membuat game, cobalah untuk berkreasi menggunakan engine atau alat tersebut.
3.    Desain gameplay utama. Mendesain sebuah gameplay memerlukan sedikit sentuhan dan modifikasi pada software pembuat game-nya, dan memerlukan pembuatan sistem yang lebih rumit jika dibuat dari nol.
4.    Buat beberapa level. Tiga atau lima level singkat adalah target yang masuk akal untuk game yang baru pertama kali dibuat. Kita juga dapat bisa menambahkan levelnya nanti. Selalu pertahankan gameplay utama di tiap level, dan buat tiap levelnya memiliki tantangan yang berbeda atau meningkat. kita juga dapat membuat levelnya berurutan dimana pemain harus menyelesaikan satu level untuk memainkan level lain, atau dibuat terpisah dimana pemain bisa memilih level yang mereka inginkan.
5.    Buat tujuan jangka panjang dan menengah. Sebuah game kadang memiliki sesuatu yang disebut “mekanisme sekunder” atau “gameplay sekunder”. Dengan menggunakan mekanisme dari gameplay utama, misalnya meloncat, pemain juga bisa menggunakan gameplay sekunder seperti menginjak lawan ketika mendarat atau mengumpulkan item. Gameplay sekunder ini bisa dimanfaatkan untuk menjadi pencapaian jangka panjang di game-nya, misalnya dengan mengumpulkan koin di tiap level, pemain bisa menabungnya dan membeli upgrade yang bisa membantu menamatkan game.
6.    Lakukan uji coba. Uji coba tiap level yang dibuat sampai beberapa kali, dan minta teman atau orang yang dikenal untuk membantu dalam melakukan uji coba terhadap game tersebut. Cobalah memainkan game-nya dengan berbagai pendekatan, mulai dari menggunakan cara yang semestinya, atau menggunakan cara yang tidak biasa seperti mengabaikan misi dan langsung melawan bos akhir, atau mencoba menamatkan game-nya dengan sumber daya yan paling buruk. Proses uji coba adalah proses yang panjang dan rumit, tapi memperbaiki bug dan menyempurnakan gameplay adalah hal yang harus dilakukan sebelum game yang dibuat tersebut dirilis.
7.    Sempurnakan grafis dan suara dalam game-nya. Meskipun di luar sana banyak aset game yang bisa digunakan, luangkan waktu untuk menyesuaikan semua asetnya agar terlihat sempurna. Jika ada aspek yang tidak sempurna atau terlihat tidak cocok, gantilah dengan yang lain.


Artificial Intelligent pada game komputer
       Salah satu unsur yang berperan penting dalam sebuah game adalah Artificial Intelligent atau kecerdasan buatan. Dengan AI atau kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia. AI dapat didefinisikan sebagai suatu mesin atau alat cerdas (biasanya adalah suatu komputer) yang dapat melakukan suatu tugas yang bilamana tugas tersebut dilakukan oleh manusia akan dibutuhkan suatu kecerdasan untuk melakukannya. Definisi ini tampaknya kurang begitu membantu, karena beberapa ahli berpendapat :
·         H.A Simon (1987):
o   “kecerdasan buatan merupakan kawasan penelitian, aplikasi dan instruksi yang terkait dengan pemrograman computer untuk melakukan sesuatu hal yang dalam pandangan manusia adalah cerdas”.
·         Rich and Knight (1991):
o   “sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan dengan lebih baik oleh manusia”.
·         Encyclopedia Britannica:
o   “merupakan cabang dari ilmu computer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk symbol-simbol dari bilangan, dan memproses informasi berdasarkan metode heuristic atau berdasarkan sejumlah aturan”
Tujuan dari kecerdasan buatan menurut Winston dan Prendergast (1984):
1.      Membuat mesin menjadi lebih pintar (tujuan utama)
2.      Memahami apa itu kecerdasan (tujuan ilmiah)
3.      Membuat mesin menjadi lebih bermanfaat (tujuan entrepreneurial)


Arsitektur Game Engine
       Game Engine adalah sistem 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. 
Beberapa elemen yang ada di dalam game engine adalah :

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

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

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

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

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

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

g.       The Game
Merupakan inti dari penggunaan game engine sendiri, sehingga terserah kita bagaimana mengembangkan game tersebut.

Beberapa Contoh Game Engine Open Source :
3Dgame Studio                         Panda3D
Torque                                      Delta 3D
UnrealEngine                            Quake Engine


Interaksi Fisik dalam Teknologi Game
       Interaksi fisik dalam teknologi game merupakan perangkat gerak yang melibatkan aktivitas fisik sehingga permainan game dapat sekaligus melatih otot dan gerak selayaknya berolahraga, seperti halnya yang disediakan oleh konsol Nintendo Wii , PS3 Move, Xbox Kinect. Game –  game yang melibatkan aktivitas fisik mengharuskan untuk menggerakkan tangan dan anggota tubuh.
       Efek fisik dalam game, terdiri dari 2, yaitu efek positif dan negatif :
Efek positif pada game :
1.     Setiap game memiliki tingkat kesulitan/Level yang berbeda. Umumnya permainan ini dilengkapi pernak-pernik senjata, amunisi, karakter dan peta permainan yang berbeda. Untuk menyelesaikan level atau mengalahkan musuh secara efisien diperlukan strategi. 
2.    Meningkatkan konsentrasi. Kemampuan konsentrasi pemain game online akan meningkat karena mereka harus menyelesaikan beberapa tugas, mecari celah yang mungkin bisa dilewati dan memonitor jalannya permainan.
3.    Meningkatkan koordinasi tangan dan mata. Penelitian yang dilakukan di Manchester University dan Central Lanchashire University menyatakan bahwa orang yang bermain game 18 jam seminggu atau sekitar dua setengah jam perhari dapat meningkatkan koordinasi antara mata dan tangan.
Efek negatif pada game :
1.     Membatasi Hubungan Sosial. Pada dampak positif  bermain game telah dijelaskan bahwa bermain game dapat meningkatkan hubungan sosial secara online dengan para gamer diseluruh dunia. Sebaliknya dalam hal ini justru akan membatasi hubungan sosial di kehidupan nyata mereka.
2.    Mengganggu Kesehatan. Waktu bermain game yang terlalu lama, dapat mengganggu kesehatan mata, karena mata kita berhadapan langsung dengan layar, dan menurunkan daya penglihatan.
3.    Menjadi Ketagihan. Permainan game yang seru, dapat membuat gamer tidak dapat berhenti memainkan game tersebut. Untuk mencegah hal ini, perlu dilakukan dengan membatasi waktu bermain game. Misalnya, 2 atau 3x dalam satu minggu dengan jangka waktu 1-2 jam.

Collision Detection
Algoritma untuk mendeteksi collision (tabrakan) sangat dibutuhkan untuk program game. Flash mulai versi 5 sampai versi berikutnya, menyediakan method yang bernama hitTest untuk memeriksa apakah sebuah movie clip bertabrakan dengan movie yang lain. Sebelum method hitTest ini tersedia, seorang programmer Flash harus mendeteksi secara manual koordinat sebuah movie clip, apakah movie clip ini bertabrakan dengan movie clip lain.


Pembuatan User Interface pada Game Komputer
Antarmuka (Interface) merupakan mekanisme komunikasi antara pengguna (user) dengan sistem. Antarmuka (Interface) dapat menerima informasi dari pengguna (user) dan memberikan informasi kepada pengguna (user) untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan suatu solusi. Antarmuka (Interface)  berfungsi untuk menginput pengetahuan baru ke dalam basis pengetahuan sistem pakar (ES), menampilkan penjelasan sistem dan memberikan panduan pemakaian sistem secara berurutan  sehingga pengguna mengerti apa yang akan dilakukan terhadap suatu sistem.
Dalam desain user interface game, terdapat sebuah teori yang dikemukakan oleh Erik Fagerholt dan Magnus Lorentzon dari Chalmers University of Technology. Dalam tesisnya berisikan 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 merupakan kepanjangan dari Heads – up display, yaitu metode dimana informasi secara visul disampaikan kepada pemain sebagai bagian dari antarmukan pengguna permainan. Biasanya menunjukkan kotak HP(Health Point) ataupun MP(Mana Point) dan biasanya muncul  di atas kepala karakter. 


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

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

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

Level Of Detail
Dalam komputer grafis, untuk tingkat detail melibatkan menurunkan kompleksitas representasi objek 3D seperti bergerak menjauh sesuai metriksnya, 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. Untuk konsep menggambar LOD sebagian besar waktu LOD diterapkan untuk geometri rinci saja, konsep dasar bisa disamaratakan. Baru-baru ini, teknik LOD termasuk manajemen juga shader untuk tetap mengontrol kompleksitas pixel. Suatu bentuk tingkat manajemen detail telah diterapkan untuk tekstur selama bertahun-tahun, di bawah nama mipmapping, juga memberikan kualitas rendering yang lebih tinggi.


Game Berjaringan
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.
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.
Pada 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.
 
                       

Pembuatan Game Komputer dengan Menerapkan Konsep Artifial Intelligent pada Sebuah Game Engine
Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu sistem yang bisa diatur dalam konteks ilmiah atauIntelegensi Artifisial (Artificial Intelligence atau hanya disingkat AI) didefinisikan sebagai kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin komputer agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika. Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Contoh media interaksi ialah:

Penglihatan (vision)· 
Suara (voice).
ucapan (speech)· 

Gerakan anggota badan ( gesture)

Contoh Game Engine :

1. RAGE
Merupakan kependekan dari Rockstar Advanced Game Engine. RAGE telah dipakai oleh Rockstar untuk membuat game-game besar seperti GTAV. Bersifat proprietary.

2. Unreal Engine
Pilihan bagi para indie developer karena sifatnya yang bersifat freeware dan menjadi propietary jika ingin mendapatkan fitur tambahan (pro). Game yang telah dirilis menggunakan engine ini antara lain : Unreal Tournament, seri Gears of War, seri Mass of Effects, Medal of Honor : Airborne, dan Outlast.

3. CryEngine
Merupakan game engine yang dikembangkan oleh Crytek. Telah merilis berbagai game seperti seri Crysis dan Far Cry. Tetapi game engine ini sangat berat untuk kelas pc yang mempunyai spek rendah sehingga sering dijuluki “Cry engine make me cry”.

4. Anvil, Distrupt, Dunia, Jade, dan LyN
Merupakan game engine yang dikembangkan oleh Ubisoft, tentunya game-game keluarannya merupakan seri Prince of Persia, Tom Clancy, Assassin’s Creed, dll.

5. Frostbite
Terkenal setelah seri Battlefield menjadi game yang katanya game first-person shooter terbaik, menurut sebagian orang.

6. HPL Engine
Game engine ini terkenal dari seri game horor keluarannya, seperti Penumbra (Overture, Black Plague, Requiem) dan Amnesia (The Dark Descent, A Machine For Pigs)

7. Unity
Game-game keluarannya lebih sering menuju ke aplikasi dan game-game kecil. Tapi keunggulan tersendirinya adalah fleksibilitas dan bahasa yang digunakan lumayan mudah (C# dan JavaScript). Game horor keluaran Digital Happiness yaitu DreadOut yang notabene dibuat oleh anak bangsa dikembangkan oleh Unity. Angkot The Game mungkin juga dikembangkan oleh Unity. Game-game lainnya adalah Slender, Temple Run, Bad Piggies, dsb.

8. SAGE, W3D
Jika anda pernah memainkan game-game seri Command & Conquer maka game itu di buat menggunakan game engine SAGE. Versi awal dari SAGE adalah W3D yang dikembangkan oleh Westwood Studios. Sekarang, versi terbaru dari engine ini adalah SAGE 2.0 yang dikembangkan oleh Westwood Studios dan Electronic Arts Los Angeles.

9. Source Engine
Game engine ini lebih banyak digunakan dalam game genre fps. Dengan ini maka game-game yang dikeluarkannya adalah seri Counter Strike, Half Life, Portal, Left 4 Dead, dan The Stanley Parable.
   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).

Demikian ulasan dari saya tentang tugas pertama softskill ini, semoga bermanfaat...       
         
          Sumber :

Pemrograman Jaringan : 5. Membangun Aplikasi Client-Server TCP Sederhana

5. Membangun Aplikasi Client-Server TCP Sederhana Source Code import java.io.*; import java.net.*; publi...