Pengantar
Teknologi Game
# Scan
Conversion
Scan
Conversion merupakan metoda untuk memetakan
titik ke dalam suatu pixel. Scan Conversion dapat dilakukan terhadap Line
(garis), polygon, ataupun garis lengkung (kurva). Ada 3 buah algoritma dalam
mebuat sebuah garis yaitu :
-
Algoritma DDA
-
Algoritma Bresenham
-
Algoritma Midpoint
Berikut saya akan menjelaskan
pembuatan garis dengan menggunakan algoritma Bresenham. Berikut langkah –
langkahnya :
- Masukkan 2 endpoint, simpan endpoint kiri sebagai (x0,y0) dan kanan (x1,y1)
- Hitung konstanta dan nilai awal parameter keputusan p0=2
- Pada setiap xk di garis, dimulai dari k=0, ujilah : Jika pk o maka plot (xk+1, yk+1) dan pk = pk+
- Ulangi tahap 3 sampai mencapai x,y yang dituju
Algoritma
Bresenham dikembangkan oleh Bresenham pada tahun 1905. Algoritma ini merupakan
perbaikan dari algoritma sebelumnya tentang menggambar sebuah garis. Dalam
menggambar sebuah garis kita perlu memperhatikan ketebalan garis dan tepi
bentuk garis, berikut ada 3 buah contoh tepi bentuk garis
- Ugly Join : Merupakan penggabungan dua buah garis yang memilik sudut
pertemuan menjorok kedalam.
- Bevel : Merupakan penggabungan dua buah garis yang memilik
sudut pertemuan menjorok keluar.
- Round : Merupakan penggabungan dua buah garis dengan membentuk
lengkungan.
- Miter : Merupakan penggabungan dua buah garis yang membentuk
lancip.
#Transformations
Transformation adalah suatu metoda untuk mengubah
lokasi titik.Operasi-Operasi Primitive padaTransformations terbagi menjadi:
- Scale,
- Rotate,
- Shear,
- Flip,
- Translate
-
transformasi linier adalah yaitu pemetaan dari satu ruang vektor ke ruang
vektor yang lain yang memenuhi aksioma kelinieran. Transformasi linier banyak
dipakai dalam bidang-bidang yang lain, seperti: ekonomi, fisika, keteknikan,
dll. Khusus untuk informatika banyak dipakai dalam bidang citra (image).
Transformasi Non-linier adalah :
transformasi linier adalah yaitu pemetaan dari satu ruang vektor ke ruang
vektor yang lain dengan tidak memenuhi aksioma kelinieran.
Berikut contoh dari kedua
transformasi diatas :
contoh
linier transformation
Misalkan F pemetaan dari R3 ke R2
dengan rumus:
F(x, y, z)=(x + 2y, 2x – 3z)
Maka (0, 1, -1) adalah prapeta dari
(2, 3),
karena F(0, 1, -1)=(2, 3).
Contoh
transformasi non linier :
Ambil u, v∈R3, misalkan u=(x1, y1, z1)
dan v=( x2, y2, z2),
dengan mengingat aturan penjumlahan
vektor
u+v=( x1+ x2, y1 + y2, z1 +
z2),
maka nilai fungsi u+v adalah:
F(u + v) = (( x1+ x2)
+ 2(y1 + y2), 2(x1+ x2) – 3(z1 + z2))
{definisi fungsi}
F(u + v) = (x1+ x2 +
2y1 + 2y2, 2×1+ 2×2 – 3z1 – 3z2)
Kemudian ada juga Geometric
Transformation dan Color Space Transformation, berikut perbedaan keduanya :
geometric
transformation adalah perpindahan objek dari suatu tempat ke tempat lain dengan
memperhatikan garis perbedaan dari tempat benda tersebut bergeser . Sedangkan
color space transformation adalah perpindahan benda dari suatu tempat ke tempat
lain dengan memperhatikan perubahan warna pada objek tesebut.
Kemudian
ada istilah Koordinat Homogen (Homogeneous Coordiantes), apa itu ??
jawabannya dibawah ini :
sistem
koordinat yang digunakan dalam geometri proyektif, sebagai koordinat Cartesian
digunakan dalam geometri Euclidean. Mereka memiliki keuntungan koordinat titik,
termasuk titik di tak terhingga, hal ini dapat direpresentasikan menggunakan
koordinat terbatas. Rumus koordinat homogen sangat sederhana dan lebih simetris
dari pada rumus-rumus Cartesian. Koordinat homogen memiliki berbagai aplikasi,
termasuk komputer grafis dan visi komputer 3D, di mana mereka memungkinkan
untuk ber transformasi affine dan, secara umum, transformasi proyektif untuk
dapat dengan mudah diwakili oleh matriks.
# Proyeksi
Proyeksi
merupakan salah satu jenis transformasi, yaitut ransformasi koordinat.Proyeksi
pada bidang datar (planar) dilakukan melalui sinar proyeksi yang muncul dari
titik pusat proyeksi melewati setiap titik dari benda dan memotong bidang
proyeksi (projection plane) untuk mendapatkan benda hasil proyeksi.Proyeksi
Planar (Planar Geometric Projections) dibedakanmenjadi:
- ProyeksiParalel.
Berdasarkan
hubungan antara arah proyeksi dengan vektor normal dari bidang proyeksi,
proyeksi parallel dibedakan menjadi:
1.
Orthographic Proyeksi orthographic ada yang disebutproyeksi axonometric.
Proyeksi Axonometric dibedakanmenjadiproyeksi:
- isometric
- dimetric
- trimetric
2. Oblique.
- ProyeksiPerspektif.
Perbedaan
antara proyeksi parallel & perspektif adalah: pada proyeksi parallel jarak
antara titik pusat proyeksi kebidang proyeksi tidak terhingga, sementara
paraproyeksi perspektif jarak antara titik pusat proyeksi kebidang proyeksi
bersifat infinite (tertentu).
- Proyeksi orthographic merupakan
kategori dari proyeksi paralel yang memproyeksikan objek berdasarkan bidang
proyeksi yang tegak lurus sehingga hasil dari proyeksi merupakan salah satu
bidang dua dimensi dengan ukuran yang tetap dan sam dengan aslinya. Proyeksi
ortografik yang umum dilakukan adalah proyeksi front elevation yang memiliki
bidang proyeksi tegak lurus terhadap sumbu Z, top elevation yang memiliki
bidang proyeksi tegak lurus terhadap sumbu Y dan side elevation yang memiliki
bidang proyeksi tegak lurus terhadap sumbu X.
Manfaat
terbesar dari visualisasi gambar-gambar ortografi adalah gambar terhindar dari
distorsi atau berkesan timbulnya pemendekan, karena semua tampaknya selalu
sejajar terhadap bidang gambar .
-
Proyeksi Perspektif
adalah proyeksi yang mempunyai garis proyeksi konvergen atau menuju kesatu
titik pengamat. Bila obyeknya tegak lurus terhadap bidang gambar, maka akan
menghasilkan perspektif satu titik lenyap. Bila obyeknya tidak tentu tegak
lurus terhadap bidang gambar, maka akan menhasilkan perspektif dua titik
lenyap.
Proyeksi
ini disebut juga dengan proyeksi konvergen atau sentral atau juga proyeksi
memusat. Dalam proyeksi ini, benda atau produk yang dijadikan objek pengamatan
ditampilkan sesuai dengan apa yang dilihat oleh mata pengamat atau kamera yang
dipakai untuk mengamati benda kerja tersebut. Ukuran benda yang diamati akan
sangat tergantung dengan jarak pengamatan benda tersebut.
Pendapat Game Saat ini
Menurut saya game merupakan salah
satu permainan yang sangat digemari tidak saja oleh anak-anak atau remaja
tetapi juga oleh kalanngan orang dewasa. Game sendiri terdiri dari banyak jenis
mulai dari game untuk anak-anak, game perang, game asah otak, game petualangan,
game olahraga, game balapan, dan berbagai jenis game lainnya. Perkembangan game
dari tahun ke tahun terus mengalami peningkatan. Hal tersebut tidak terlepas
dari perkembangan zaman dan juga perkembangan ilmu teknologi.
Berikut beberapa nama game atau
perangkat game yang pernah ada di antaranya : Brown Box pada tahun 1967,
Odyssey pada tahun 1972, Pong pada tahun 1972, Atari 2600 pada tahun 1977,
Intellivision pada tahun 1980, Spica pada tahun 1985, Megadrive, Sega Saturn
pada tahun 1994, Playstation 1 pada tahun 1955, X-Box pada tahun 2001, Game
Cube, dan masih banyak lagi. Perangkat game juga terus berkembang seiring zaman
dan kebutuhan pecinta game yang terus menuntut adanya game-game baru yang lebih
seru dan menantang.
Game pun saat ini tidak harus
selalu menggunakan perangkat game yang tentunya memiliki harga yang cukup
mahal. Game bisa dimainkan di berbagai jenis HP, tersedia juga software game
yang bisa di pasang di computer atau laptop sehingga pecinta gme bisa
memainkannya de gadget kesayangannya tanpa harus membeli perangkat game.
Terlebih dengan semakin maraknya game online yang ikut maju pesat seiring
semakin populernya penggunaan internet serta akses yang semakin mudah
didapatkan.
Game online sendiri memiliki
banyak jenis. Kelebihan dari game online adalah bisa berman dengan banyak lawan
dari berbagai dunia tidak terbatas. Kelebihan itu menjadi salah satu hal yang sangat
disukai pecinta game khususnya game online. Game online pun sudah banyak
terdapat di berbagai situs jejaring social contohnya berbagai jenis game di
jejaring social facebook. Pemilik akun bisa bermain game bersama teman-teman
facebooknya.
Konsep
Teknologi Game
Narrative: banyak permainan
memiliki unsur-unsur naratif yang memberikan konteks untuk sebuah event pada
game, membuat aktivitas bermain kurang abstrak dan meningkatkan nilai hiburan,
meskipun unsur-unsur naratif yang tidak selalu jelas hadir atau hadir di semua.
Tetris adalah contoh permainan tanpa narasi. Perlu dicatat bahwa beberapa
narratologists mengklaim bahwa semua permainan memiliki unsur narasi. Beberapa
melangkah lebih jauh dan menyatakan bahwa permainan yang pada dasarnya
merupakan bentuk naratif. Narrative dalam praktiknya dapat menjadi titik awal
bagi pengembangan permainan, atau alternatif yang dapat ditambahkan ke desain
yang dimulai sebagai serangkaian mekanika game. Elemen Narrative dari permainan
adalah aspek utama dari permainan yang digunakan dalam pemasaran, karena
kemudahan yang mereka dapat terkait media non-interaktif.
Gameplay: istilah yang umum digunakan untuk menggambarkan aspek desain interaktif video game. Gameplay melibatkan interaksi pemain dengan permainan, biasanya untuk tujuan hiburan, pendidikan atau pelatihan.
Interaksi : yang dilakukan dalam
game adalah ketika user dapat berkomunikasi dengan user lainnya dalam waktu
yang bersamaan walau tempat mengakses game tersebut berbeda. Interaksi yang
dilakukan bisa saja berupa chatting pada saat bermain, atau kerja sama team
dalam game tersebut, contohnya seperti game onlineAyodance, Counter-Strike
(CS), ataupun Defense of the Ancients (DotA).
AI : Kecerdasan Buatan (bahasa
Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan yang
ditunjukkan oleh suatu entitas buatan. Kecerdasan diciptakan dan dimasukkan ke
dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat
dilakukan manusia. Bidang yang menggunakan kecerdasan buatan selain permainan
komputer (games) adalah sistem pakar, logika fuzzy, jaringan syaraf tiruan dan
robotika.
Game interaktif ini diupayakan
tokoh-tokoh yang berada didalamnya mampu diajak bicara dengan user game
tersebut. Selain itu game ini dibuat dengan tampilan 3D untuk menguatkan kesan
seolah-olah pemain game benar-benar sedang berbicara dengan tokoh game.
“Chatbot”, sebuah istilah untuk karakter game yang bisa diajak bicara, akan
mengarahkan pemain dalam bebarapa petunjuk agar tercipta pembicaraan yang bersifat
dialog seolah-olah berinteraksi dengan seseorang yang berbeda karakter.
KONSEP
DASAR GAME
Ada 2 cara yang dapat digunakan
dalam membuat game, yaitu :
- Dengan membuat sendiri program yang akan digunakan untuk membuat game ( umumnya professional game developer yang menggunakan cara ini).
- Dengan menggunakan program jadi
yang tinggal kita gunakan.
Untuk membuat program sendiri tidak akan kita bahas disini karena tujuan penulisan ini adalah untuk amateur game developer , tapi sekedar pengetahuan saja, untuk membuat program sendiri kita harus memahami bahasa pemrograman , dan untuk membuat program sendiri, kita dapat menggunakan “Visual Basic”, “C++”,dll.
Software Pembuatan Game
Saat ini sudah ada banyak aplikasi
untuk membuat game. Diantaranya ada juga yang Freeware (gratisan) untuk di
download&install. Beberapa aplikasi yang akan kita bahasa adalah:
1. Game
Maker
Game
maker merupakan suatu program yang bisa dikatakan cukup simple dan mudah untuk
digunakan. Dengan program ini anda dapat menciptakan game jenis apa saja yang
anda inginkan seperti:
racing,action,fighting,rpg,adventure,puzzle,tactic,simulation,dll. Program ini
lebih focus pada game berjenis 2D tetapi program ini juga menyediakan feature
yang memungkinkan anda untuk membuat game jenis 3D ,namun anda tidak bisa
membuat game sekelas “Halo”, ”Empire Earth”, “Need for Speed”, dengan program
ini. Karena feature 3D yang diberikan hanya untuk membuat game 3D yang
sederhana. Script yang dipakai adalah GML (Game Maker Language) yang juga bisa
dipadukan dengan programming language seperti Delphi,C,dan sebagainya,hal ini
bisa dilakukan dalam kapasitas penggunaan DLL (Dynamic Link Library,berupa
semacam plugin yang mengandung fungsi-fungsi yang tidak dimiliki oleh
GameMaker).
2. RPG MAKER(R.M)
R.M
merupakan program yang difokuskan untuk membuat game bertipe R.P.G (Role
Playing Game).Program ini bisa dikatakan cukup mudah untuk dipahami, karena
dilengkapi dengan tools-tools yang bisa dibilang tidak terlalu rumit. Umumnya
banyak orang-orang yang mulai membuat game karena kecintaanya dengan dunia
R.P.G , Misalkan setelah bermain “Suikoden “ atau “Final Fantasy”,seseorang
merasa ingin membuat game R.P.G. serupa. mungkin anda salah satu dari orang
–orang itu, jadi anda bisa mulai mencari program ini. Sebab dengan program ini
anda dapat membuat game R.P.G sebebas-bebas mungkin . Script yang dipakai dalam
RPGmaker XP adalah RGSS (Ruby Game Scripting System,sebuah system script
turunan dari bahasa Ruby),sementara untuk RPGmaker terbaru (RPGmaker VX) yang
dipakai adalah pengembangan dari RGSS,yaitu RGSS2.
3.AGS( Adventure Game Studio)
AGS
adalah program yang khusus untuk membuat game bertipe “point and click”.
Mungkin sebagian dari anda ada yang tidak mengetahui apa yang dimaksud dengan
“point and click”. Point and click adalah jenis game yang umumnya bertipe
adventure atau puzzle. Game bertipe ini dimainkan dengan menggunakan mouse
sebagai penentu arah bagi karakter, game bertipe ini sendiri sempat meledak dan
mengalahkan game console “Atari”, ketika awal kebangkitan game PC. Contoh
–contoh game bertipe point and click adalah: Clock Tower ( playstation one),
Broken Sword, Monkey Island ,Day of the Tentacle.Jadi bagi anda yang penasaran atau
hobi membuat cerita petualangan atau fiksi ilmiah dan ingin membuat cerita tsb
menjadi game , anda bisa menggunakan program ini.
4.
Macromedia Flash (Sekarang Adobe Flash)
Mungkin
sudah banyak orang yang tahu tentang program yang satu ini. Program ini
sebetulnya digunakan untuk membuat presentasi atau mendisain web. Namun selain itu
dengan sedikit kreatifitas anda dapat membuat game sederhana dengan program
ini. Sebab program ini tidak ditujukan untuk membuat game yang berat.
Macromedia
Flash
Program
yang satu ini ditujukan untuk membuat game-game bertipe 3D ataupun 2D. Namun
program ini lebih dikhususkan untuk membuat game bertipe 3D. Tapi untuk
tambahan , program ini bisa dikatakan cukup sulit digunakan bagi anda yang
belum memiliki pemahaman dasar tentang 3D maupun tentang membuat game.
Kelebihan dari program ini adalah , anda dapat membuat game sekelas dengan
“Medal of Honor”, “Onimusha” , “ Prince of Persia”, “Ghost Recon”, ”Grand Theft
Auto”, dll . Jadi bila anda sudah mengerti tentang dasar dari membuat game, mungkin
anda dapat mencoba program ini.
3D Game
Studio
Dalam
3D Game Studio terdapat 3 program utama,yaitu:
-MED
(Model Editor) – Program yang berfungsi sebagai editor model bagi 3D Game
Studio
-SED (Script Editor) – Sebagai pengolah script dalam 3D Game Studio,script standar yang dipakai adalah C-Script dan Lite C.
-SED (Script Editor) – Sebagai pengolah script dalam 3D Game Studio,script standar yang dipakai adalah C-Script dan Lite C.
-WED
(Level Editor) – Sebagai pengolah level/area permainan bagi 3D Game Studio.
Itu adalah sedikit dari sekian banyaknya program yang dapat anda gunakan. Masih banyak program-program lainnya yang dapat anda gunakan untuk membuat game.
Itu adalah sedikit dari sekian banyaknya program yang dapat anda gunakan. Masih banyak program-program lainnya yang dapat anda gunakan untuk membuat game.
5. Jump Craft
Seperti aplikasi game creator
yang kami bahas di sini, Jump Craft memungkinkan kita membuat game dengan
mengeklik-tarik komponen game ke area pembuatan game. Ya, semudah itu. Selain
itu, ada pula fasilitas untuk pemrograman sederhana, sebagai ajang tambahan
untuk belajar programming.
Anda bisa mengunduh aplikasi yang
kompatibel dengan Windows XP dan Vista ini dari situs resminya, sekaligus
berinteraksi dengan pengguna lain untuk mendapatkan panduan dan tips pembuatan.
Konsep pembuatannya menerapkan prinsip “What You See Is What You Get”, sehingga
komponen dan skenario yang diterapkan di area pembuatan game akan sama dengan
output yang dihasilkannya. Pembuatan game tanpa coding (pemrograman) dapat
dilakukan dengan konsep sistem “Trigger” dan “Actions” yang mudah diset. Setiap
obyek di game ini bisa Anda gerakkan dan interaksikan dengan cara ini.
Tak perlu bingung untuk memulainya, karena ada sampel game untuk mempelajari pengelolaan aplikasi gratis ini. Lagipula, ada forum interaksi sesama pengguna yang dapat diakses secara bebas kapan saja.
Tak perlu bingung untuk memulainya, karena ada sampel game untuk mempelajari pengelolaan aplikasi gratis ini. Lagipula, ada forum interaksi sesama pengguna yang dapat diakses secara bebas kapan saja.
LANGKAH-LANGKAH
PEMBUATAN GAME
Dalam
membuat game kita harus memahami konsep dari game yang akan kita buat.Tidak
mungkin kita membuat game tanpa ada konsep ibarat membabi buta. Konsep
merupakan bagian yang paling penting, sebab disinilah anda menentukan game apa
yang anda ingin buat , R.P.G. , Adventure , Action, atau apa? Setelah pembuatan
konsep kita akan mengikuti langkah-langkah selanjutnya , tergantung dari game
yang akan dibuat , game 2D sederhana, game 2D besar, game 3d sederhana, atau
game 3d besar. Anda dapat melihat bagan konsep dibawah ini.
Untuk
tambahan, mungkin bagi anda yang tidak tahu apa arti dari “bug” akan
bertanya-tanya , apakah itu serangga? Tidak , yang dimaksud “bug” disini adalah
kesalahan yang terdapat dalam game. Dalam game yang berukuran sedang/ besar(
tidak dilihat dari segi besarnya ukuran file, tetapi dari segi cerita,gameplay,durasi,
kualitas gambar,dll) , sangat besar kemungkinan akan adanya kesalahan dalam
game. Oleh karena itu sangat disarankan untuk mengecek ulang atau kalau perlu
meminta bantuan teman atau kenalan untuk mencoba memainkan dan mencari
kesalahan yang ada.