Bantuan - Carian - Ahli - Kalendar
Full Version: Kelab Bina Game: Tutorial Buat Game 2d
Tanya@Putera > Pengaturcaraan & Pembangunan > Pembangunan Permainan
Pages: 1, 2, 3
LanoX
KELAB BINA GAME


Tutorial Asas Menghasilkan Game Tembak Menembak 2D
oleh
LanoG (February 2007)


Baiklah, aku akan mulakan thread baru nie untuk menyahut seruan bagi menambahkan lagi koleksi tutorial membuat game. Oleh kerana game 2D juga adalah seronok untuk dimainkan, maka adalah elok untuk kita bermula dengan menghasilkan game 2D jugak. Bagi sesiapa yang merasakan membuat game 3D amat komplek, sekarang mari kita belajar dari asas penghasilan game 2D casual yang cukup ringkas dan senang nak difahami. Jangan bimbang kepada sesiapa yang langsung takde experience dalam programming sebab aku akan elaborate sedikit demi sedikit...

Baiklah kawan2 sekalian kita mulakan dengan artikel ringkas yang aku petik dari e-book yang aku buat pada 2006 yang lepas. Ini adalah introduction dulu.. hehehe. Nanti aku sambung.

QUOTE
SEBELUM MULA MENULIS ATURCARA

Perancangan Untuk Kejayaan! Ini adalah ayat yang sering kita dengar pada mana-mana sahaja bidang; tidak kiralah dalam perniagaan, pendidikan, ketenteraan, sukan dan sebagainya. Syarikat kenderaan pastinya akan memulakan model baru dengan membina terlebih dahulu prototaip dan konsep rekabentuk sebuah kereta sebelum melancarkan secara besar-besaran dalam pasaran. Begitu jugalah halnya dengan menulis aturcara, sama ada secara professional atau sebagai hobi, perlunya perancangan dan pengujian kod-kod yang hendak dimasukkan nanti.


Seorang pengaturcara yang tidak sabar sering kali ingin segera menyiapkan program yang dibentuk tanpa adanya perancangan atau garis panduan untuk diikuti dan akhirnya projek tersebut tinggal separuh jalan. Pengaturcara yang baik cuba untuk mengelakkan ini daripada berlaku walaupun ingin menulis kod aturcara yang ringkas!

Pada suatu masa dahulu, carta aliran (flowchart) digunakan oleh pengaturcara untuk memulakan perancangan sebagai garis panduan. Pada hari ini, kebanyakan pengaturcara menggunakan kod pseudo (pseudocode) yang meringkaskan apa sahaja yang hendak dilakukan pada sesebuah projek. Ini bergantung kepada kaedah yang paling mudah bagi pengaturcara berkenaan. Sebelum memulakan aturcara, apakah misi dan objektif anda sebenarnya. Ini boleh jadi sebagai PERNYATAAN MISI (mungkin dalam sector korporat dan jabatan kerajaan juga terdapat pernyataan misi masing-masing). Pernyataan ini boleh bermula dengan OBJEKTIVITI yang hendak dicapai dan TUGAS yang akan dilakukan sama ada secara umum atau pun memecahkannya kepada sub-sub untuk memudahkan pengurusan nanti.

Tugas-tugas dan objektif tidaklah semestinya ditulis atau dicetak dengan kemas terutama bagi projek-projek yang ringkas. Kadang kala kita boleh membentuk sikap yang teratur dan seterusnya membentuk mentaliti yang lebih teratur dalam diri kita. Jika projek yang hendak dirancang memerlukan masa yang panjang misalnya beberapa hari, minggu atau bulan adalah baik kita membuat senarai atau ‘checklist’ untuk memantau perkembangan pembangunan yang sedang dilakukan. Kata pepatah melayu ‘jika kail panjang sejengkal, lautan dalam jangan diduga’. Jika ilmu pengaturcaraan ini kita ibaratkan kail yang sejengkal ini sebenarnya boleh dipanjangkan lagi dengan mengasah skill dan menambah pengetahuan. Sepanjang mana pun kail anda tetapi tanpa perancangan, sudah pasti ikan tidak dapat ditangkap dalam lautan yang luas itu, bukan.

Sebagai hobi, pengaturcaraan adalah satu keseronokan terutama apabila menyiapkannya. Dengan adanya perancangan ke atas program ini akan dapat mengelak sebarang kegagalan dan melambatkannya. Belajarlah bagaimana menyusun kerja anda supaya proses ini menjadi lebih menyeronokkan dan bukannya menyusahkan hidup anda!
MalaYneuMaya
assalamualaikum...

cayalah LanoG...
ada gak panduan aku nk start dari mana...mmndgkn dulu aku cuma ade blajo basic c++, aku tak nampak apakah kgunaan lain slain kalkulator.. tongue.gif

jadi kalu dh jadi 2d game, seronok dia lain...btul ka? anyway, slamat memulakan tutorial n slow2 ajar org cam aku...hehe smile.gif

powerabu
yeyeeeaaaa.........ada tutorial game 2d. laugh.gif
Aku rasa ni mungkin mudah skit.

ko nak ajar buat game skali ker..!!??
Nak pakai language apa?
Aku tak kisah apa-apa pun language ni....... cool.gif

Yang penting nanti aku tau asas nak buat game 2d.......
yeeeee.....
LanoX
Walaikum salam. Thank u. Nanti aku teruskan... korang jangan bimbang, selagi tak siap game nie, selagi tu aku teruskan tutorial nie...kekeke.

PENGENALAN

Kebanyakan orang yang menjadikan pengaturcaraan sebagai hobi biasanya memiliki cita-cita untuk menghasilkan permainan mereka sendiri. Ini adalah tidak mustahil dengan bermacam-macam bahasa pengaturcaraan sebab kebanyakan bahasa pengaturcaraan banyak menyokong arahan untuk animasi grafik dan juga boleh memainkan format bunyian dan muzik. Sebagai hobi, kita tidak memiliki keupayaan dari segi masa, wang dan tenaga untuk menghasilkan permainan komersil yang dihasilkan oleh syarikat-syarikat pembangunan permainan komputer terkemuka. Ini disebabkan mereka memiliki kepakaran dan pasukan yang sepenuh masa bekerja untuk sesebuah projek. Namun ini tidak bermakna kita tidak boleh menghasilkan permainan interaktif yang menyeronokkan hasil daripada idea dan aturcara kita sendiri. Kadang kala permainan yang ringkas dan mudah boleh memberikan kepuasan kepada diri pengaturcara itu sendiri iaitu anda, malah anda boleh menjemput orang lain untuk mencuba dan mengujinya.

Dalam bahagian ini, kita akan meninjau perkara-perkara yang paling utama yang harus diambil perhatian oleh seseorang pengaturcara sebelum dan semasa menghasilkan sebuah permainan interaktif. Permainan komputer memiliki berbagai-bagai kategori misalnya permainan tembak-menembak (shooting), silang platform (cross platform), perspektif orang pertama (first person shooter), strategi masa nyata (real time strategy), perspektif orang ketiga (role playing game), sukan (sport), simulasi (simulation) dan sebagainya.
LanoX
SUMBER2 UNTUK MEMBINA GAME 2D

Jika kita melihat internet sebagai sumber maklumat yang tanpa sempadan, kita boleh mencari pelbagai sumber di dalamnya. Cuma yang paling penting ialah kita gunakan 'keyword' yang bertepatan dalam engine carian. Kali ini kita lihat dulu berkenaan sumber yang diperlukan untuk membina sesebuah game yang terdiri daripada banyak perkara. Antara yang utama termasuklah:

1. Sumber Grafik Game
Sumber grafik adalah terdiri daripada yang bersangkutan dengan grafik yang digunakan pada sesebuah game seperti karektor utama, monster, latarbelakang, watak sampingan, objek2 lain dan sebagainya. Sumber grafik 2D boleh terdiri daripada bermacam-macam format biasa seperti BMP, JPG, GIF, PNG, TIFF dan sebagainya. Selain itu, kita boleh hasilkan sendiri dengan perisian penyuntingan imej seperti MS Paint, GIMP, etc.

2. Sumber Muzik dan Bunyi Game
Sumber bunyi2an seperti efek tembakan laser, bunyi letupan, bunyi perlanggaran dan sebagainya boleh juga dihasilkan sendiri dengan merakam dalam komputer anda menggunakan perisian penyuntingan bunyi. Selain itu, muzik boleh juga digunakan untuk menambah kerancakan sebuah game. Antara format biasa ialah WAV, MID, MP3 etc.

3. Sumber Pengarangan Game
(i) Bahasa Komputer yang mampu digunakan untuk menghasilkan game antaranya termasuklah Dev-C++, Deplhi, Python, BASIC dan sebagainya. Kesemuanya mempunyai kelebihan dan kekurangan masing2, namun begitu bahasa apa pilihan bergantung kepada kemahiran anda menguasai bahasa berkenaan.

(ii) Perisian Pengarangan Game merupakan sebuah perisian yang khusus untuk membina game. Biasanya, ia lebih mudah dengan GUI yang tersedia, selain dapat menjimatkan masa pembangunan sesebuah game. Antara yang terdapat di pasaran sekarang misalnya Game Maker, Game-Editor, SGDK dan sebagainya.
lipas
oh aku penah buat gune gamemaker.. tapi tak btol2 explore lagik keupayaan die.. and game yg aku buat simple gile..
tapi gamemaker ni bagus utk newbie dlm bidang ni mcm aku..
LanoX
Betul tu lipas, memang Game Maker mudah nak guna bagi yang beginner. Selain tu, ia turut menyediakan banyak tutorial untuk hasilkan macam2 genre game 2D yang biasa.

Baiklah kita teruskan.... laugh.gif

GRAFIK DALAM GAME 2D

Kali ini kita cuba hasilkan karektor yang akan digunakan dalam game kita nanti. Sama ada anda boleh cari di webisite dan gunakan karektor ready-made mahupun, anda buat sendiri. Ini bergantung kepada usaha anda dan kreativiti anda. Antara perisian penghasilan imej 2D yang baik dan direkemenkan (sebab FREE) ialah GraphicGale. Anda boleh cuba download kat website: http://www.humanbalance.net/gale/us/

Selain itu, kalau anda tak mau nak install apa2, boleh gunakan sahaja Ms Paint yang tersedia kat Window tu. Sebagai demonstrasi, saya cuba buat sebiji UFO kecik dengan MS Paint... mudah dan simple jek... cubalah sendiri.









Tidak sampai 5 minit, sebiji UFO dah disiapkan, bukan! Kalo yang ada kreativiti tu boleh cuba tambahkan lagi bentuk2 karektor anda. Jika pakai GraphicsGale tu, anda boleh buat lagi banyak objek yang kemas dan cantik. Selalulah praktis dan uji kebolehan anda tu yek.
MalaYneuMaya
assalamualaikum...

aku baru try GraphicGale (blom habis xplore lgi), stakat nih mmg bagus software nih...siap anim. avi lagih..

okeh aku nk kongsi plak program image editor yg OPEN SOURCE:(aku blum try lagi nih..)

1. GIMPshop - http://www.gimpshop.net/ - ala2 photoshop
2. PAINT.NET - http://www.eecs.wsu.edu/paint.net/

LanoX
ANIMASI DALAM GAME 2D

Kali ini kita menyentuh pula tajuk bagaimana hendak menghidupkan sesebuah watak misalnya animasi pergerakan orang berlari, kapal terbang bergerak, monster berjalan dan sebagainya. Sememangnya animasi dan game tidak dapat dipisahkan ibarat irama dan lagu... hehehehe. Tanpa animasi, game nampak kaku dan sebagai pembina game, kita perlu gunakan animasi untuk menarik orang bermain game kita. Dalam perbincangan kali ini, kita melihat satu persatu konsep asas animasi.

Animasi biasanya digambarkan sebagai objek yang seakan2 bergerak seperti kartun kat tv. Setiap pergerakan sebenarnya adalah mewakili satu frame/bingkai gambar. Gabungan frame2 ini tadi akan membentuk animasi yang kita lihat dalam game berkenaan. Tidak seperti dalam movie, kita tidak memerlukan banyak frame untuk menganimasikan watak dalam game. Biasanya untuk menganimasikan orang berjalan misalnya perlukan dalam lebih 3 frame bergantung kepada jenis pergerakan yang digunakan.

Sebagai contoh, berapa bingkai yang digunakan untuk menganimasikan karektor cendawan ini?


Jawapanya ialah 3 imej! Ianya adalah gabungan daripada imej-imej berikut:


Gabungan bingkai/frame daripada imej2 berkenaan telah membentuk animasi karektor cendawan melompat ke kiri berkenaan. Harus diingat bahawa pemasaan/ timing pertukaran antara imej2 berkenaan perlu juga diambil kira untuk mengelakkan penggiliran tayangan imej yang terlalu pantas dan terlalu perlahan. Diharap konsep asas animasi ini dapat difahami oleh semua kerana ianya amat penting dalam pembinaan sesebuah game nanti.

Untuk melatih diri anda tentang konsep animasi nie, aku rekomenkan beberapa software ringkas yang bagus untuk dicuba dan donload iaitu:
1. Pivot Stickfigure Maker
2. MS GIF Animator dan Coffecup GIF Animator
LanoX
ALATAN MEMBANGUNKAN GAME 2D

Ini adalah persoalan paling penting apabila seseorang cuba membina sebuah game 2D mereka yang pertama. Adakah mahu menggunakan bahasa pengaturcaraan atau mahu menggunakan software pembina game yang ada dalam pasaran. Persoalan ini harus difikirkan semasak-masaknya sebab tempoh membangunkan sesebuah game kadang2 mengambil masa yang lama dan juga kesukaran yang bakal dihadapi untuk membina game berkenaan. Mari kita perhatikan dulu perbezaan membangunkan game dengan bahasa pengaturcaraan dengan perisian pembangunan game.

KELEBIHAN BAHASA PENGATURCARAAN UNTUK BUAT GAME.
1. Bebas membuat apa sahaja jenis game.
2. Bagi yang dah ada asas, mudah digunakan dan senang difahami.
3. Banyak bahan rujukan daripada buku2 dan laman web.
4. Ramai rakan2 yang pernah belajar bahasa yang sama.

KELEMAHAN BAHASA PENGATURCARAAN UNTUK BUAT GAME.
1. Jangka masa lama untuk siapkan game.
2. Memerlukan seseorang menguasai bahasa pengaturcaraan berkenaan.
3. Bermula menulis skrip code dari awal hingga akhir.
4. Memerlukan perancangan rapi dan daya imaginasi yang tinggi.

KELEBIHAN SOFTWARE PEMBINA GAME
1. Pantas dan ramah pengguna apabila digunakan.
2. Dokumentasi dan tutorial yang mudah difahami.
3. Tidak memerlukan penulisan kod yang panjang (atau tiada langsung!)
4. Masa pembangunan game yang cepat.

KELEMAHAN SOFTWARE PEMBINA GAME
1. Terhad untuk fungsi2 yang disediakan dalam software.
2. Biasanya perlukan lesen untuk menggunakan secara komersial.
3. Perlu membiasakan diri dengan konsep dan GUI software berkenaan dahulu.
4. Kurang kawan2 yang boleh membantu dan untuk berbincang.

Mungkin setelah diteliti kelebihan dan kelemahan yang ada pada kedua-dua jenis alatan pembangunan game ini, anda boleh membuat keputusan yang mana satu pilihan hati. Sememangnya senarai diatas tidak lah begitu lengkap dan anda sendiri boleh membuat analisis terlebih dahulu sebelum membuat keputusan, alatan apa yang hendak digunakan.
zsuperxtreme
LanoG boleh ko tolong jelaskan pada member coding nak animationkan sprite... aku rasa tu yang paling penting... keep up the good work.
LanoX
QUOTE(zsuperxtreme @ Feb 6 2007, 07:36 PM) [snapback]417344[/snapback]
LanoG boleh ko tolong jelaskan pada member coding nak animationkan sprite... aku rasa tu yang paling penting... keep up the good work.


Thank u ZX. Aku sebenarnya baru buat introduction tu... belum lagi sampai bab coding nie... hehehehe. Sebab utama ialah nak bagi semua paham dulu konsep asas, baru terus masuk buat game.

SUSUNAN TUTORIAL

Oleh kerana tutorial ini akan dibahagikan kepada 2 bahagian iaitu menghasilkan game dengan bahasa pengaturcaraan (100% coding) dan satu bahagian lagi ialah dengan menggunakan alatan pembangunan game (5% coding). So aku bercadang untuk bermula dengan yang mudah dahulu iaitu menggunakan alatan pembangunan game yang freeware yang ada dalam laman web iaitu Game-Editor.

Sebab aku memilih Game-Editor ialah:
1. Game anda nanti boleh dimainkan di Windows, Linux, Pocket PC, Window Mobile, GP2X, Smartphones.
2. Antaramuka yang intuitif dan mudah dikendali seolah-olah anda menyusun game anda atas meja.
3. Konsep berasaskan peristiwa (event-driven) iaitu tindakan terhasil akibat sesuatu peristiwa sebelumnya.
4. Merekabentuk protoip dengan pantas dan mudah tanpa banyak coding (cuma klik butang je).
5. Fleksibility input dengan kebolehan menggunakan pelbagai format imej dan audio.
6. Jika anda dah mahir, boleh dapatkan lesen dan semua game anda boleh dijual (royalty-free).




Oleh itu, sesiapa yang ingin mengikuti tutorial ini, boleh muat turun trial version game-editor dahulu. Kita akan sambung kemudian nanti untuk hasilkan sebuah game yang boleh dimainkan.
MalaYneuMaya
assalamualaikum...

hehe..sbab trial jadi tpaksa la sudahkn wat tutorial guna gameeditor sblum xpired yer tak??
wink.gif
PinguSpy
aku cadangkan buat game lumba kereta,
x lah pening sangat..
MalaYneuMaya
assalamualaikum...


QUOTE
aku cadangkan buat game lumba kereta,
x lah pening sangat..


yer ke pingu? aku mmg pntg dgn keta2 nih.... tongue.gif
sukanya aku kalu dpt wat game keta...
LanoX
QUOTE(MalaYneuMaya @ Feb 7 2007, 10:58 PM) [snapback]418109[/snapback]
assalamualaikum...
yer ke pingu? aku mmg pntg dgn keta2 nih.... tongue.gif
sukanya aku kalu dpt wat game keta...


Hehehe.. korang minat nak wat game kete ke? Oleh kerana setiap genre game mempunyai teknik dan pendekatan yang berbeza2 untuk dihasilkan. Mungkin pada masa depan aku akan cuba bagi special tutorial buat game lumba kete plak. Buat masa sekarang nie aku nak kita tumpukan dulu pada asas pembinaan game berbentuk "Shoot' Em Up" sebab ianya lebih mudah. Lebih2 lagi ini adalah tutorial pertama untuk buat game casual 2D yang ringkas.

Untuk tidak menghampakan korang tentang potensi tutorial buat game lumba kete 2D, disini aku bagi korang donload game demo yang pernah aku hasilkan awal tahun 2006 lepas dengan programming language (pure 100% coding, 500 baris kod.... 7 hari nak siap!). Walaupun simple jer, namun ianya menunjukkan apa sahaja boleh dicapai dengan sedikit kreativiti. Download kat ... http://www.freewebs.com/worbles/permainan.htm ... pilih yang ada gambar F1 Just Racing.
Vibrunnica
Huhuhu... ganas rupanya En. LanoG nih... teruskan usaha anda.... aku ada teori sket pasal Sprite nih...tak tau betul ke tak...camni
Sprite= animated image(image sequence loop) yg di masukkan kat dalam game sebagai bekground (contoh je) ngan skill coding... betul ke nih...? soalan.. apa jenis file di perlukan (selalunya animated gif)...?
MalaYneuMaya
assalamualaikum...


alamak LanoG....takleh dload lar game ko tuh... server fail lak...huhuhu sad.gif

xkisah ler LanoG ko nk mula wat game aper, jnji aku dpt follow ko nyer tutorial... smile.gif
LanoX
QUOTE(Vibrunnica @ Feb 8 2007, 01:42 AM) [snapback]418205[/snapback]
Huhuhu... ganas rupanya En. LanoG nih... teruskan usaha anda.... aku ada teori sket pasal Sprite nih...tak tau betul ke tak...camni
Sprite= animated image(image sequence loop) yg di masukkan kat dalam game sebagai bekground (contoh je) ngan skill coding... betul ke nih...? soalan.. apa jenis file di perlukan (selalunya animated gif)...?


Ahaa, lebih kurang ler tu...

Sprite Secara Umum
Definisi umum bagi sprite nie ialah ianya merupakan imej atau animasi dalam 2-dimensi yang diintegrasikan pada latar yang lebih besar. Sprite boleh dihasilkan daripada CGI yang dah direndered, 3D grafik yang dinamik, Vektor Grafik, Pixel Art Grafik, Text dan sebagainya. Selalunya sprite nie orang konfuse dengan "pixel art" grafik (grafik yang dibuat dalam video game), ini disebabkan selalunya grafik ini digunakan sebagai sprite dalam game. Oleh itu, sprite dalam ertikata sebenar ialah apa sahaja imej/animasi yang boleh berintegrasi dengan latar scene. Format sprite boleh jadi apa sahaja format grafik seperti BMP, JPG, GIF, PNG etc. bergantung kepada format yang disokong oleh sesebuah engine/software/language yang menggunakannya.

Penggunaan Sprite Dalam 3D
Sekarang nie, ianya lebih banyak merujuk kepada animasi 2D separa transparent yang yang dipetakan pada satu permukaan rata (PLANE) dalam latar 3D. (Mungkin Vibrunica selalu gunakan dalam grafik 3D dia nanti...). Berbeza sikit dengan texture, permukaan yang ada sprite nie sentiasa mengadap view kamera. Imej berkenaan boleh di ubah saiz, diputarkan secara 2 dimensi dan juga boleh menindih/lapis objek lain. Kaedah ini selalu dirujuk sebagai BILLBOARDING.

Penggunaan Sprite Dalam 2D Game
Penggunaan sprite dalam game 2D memang tak dapat dinafikan lagi. Tanpa sprite, game 2d jadi bosan sebosan-bosannya... hehehe. Jika kita guna sprite dalam alatan pembangunan game seperti game-editor, cuma perlu ambil imej tersebut dan terus gunakannya. Sebaliknya, jika kita gunakan programming language pula, setiap SPRITE hendaklah memiliki MASK. Ianya adalah satu lapisan yang membantu penjanaan imej sprite pada latar scene.
MalaYneuMaya
assalamualaikum...

oo..jadi apa shj imej yg ada di skrin 2d game tuh adalah 'sprite'? cuma kategorinya adlh anim atau tidak...betul ke?

QUOTE
Berbeza sikit dengan texture, permukaan yang ada sprite nie sentiasa mengadap view kamera.


sbg contoh dlm game zx arena tuh... logo kbg tuh adalah sprite dlm scene 3d..?

LanoX
QUOTE(MalaYneuMaya @ Feb 8 2007, 09:11 AM) [snapback]418274[/snapback]
assalamualaikum...
alamak LanoG....takleh dload lar game ko tuh... server fail lak...huhuhu sad.gif

xkisah ler LanoG ko nk mula wat game aper, jnji aku dpt follow ko nyer tutorial... smile.gif


Eh.. free webhosting je aku pakai tuh... memang berat website dia.. hehehe. Okey ler, nanti kita teruskan tutorial nie, langkah demi langkah. rolleyes.gif

Maklumat selanjutnya berkenaan sprite boleh dirujuk disini, http://en.wikipedia.org/wiki/Sprite_%28computer_graphics%29
zsuperxtreme
Sedikit pembetulan.

Sprite ini tidak semestinya mengadap ke kamera. Sprite dilihat kepada gambar 2 dimensi samada plane atau beranimasi. Sprite juga tidak semestinya mempunyai latarbelakang transparent. Sprite adalah image.

(Sprite adalah img 2 dimensi dan tidak mempunyai sebarang kriteria).. Sprite yang beranimasi adalah dalam bentuk jujukan dalam 1 fail.

antar contoh-contoh format yang boleh dijadikan sprite

*.bmp
*.jpg
*.pcx
*.tga
*.png

Jadi bila korang draw dan save kan image tu, dalam game terus panggil itu sprite...

BEZA SPRITE DENGAN IMAGE 2D?
Tiada sebab (Sprite == Image)


LanoX
Ehehehe.... yup betul, memang tepat sekali zsuperxtreme....

Perlu diingat bahawa setiap penggunaan sprite dalam pelbagai programming language adalah berbeza-beza dari segi terms, coding dan cara ia diguna.... bermakna kita jangan ler terikat sangat pada definisi sprite tu.
Syfq
aku duk tunggu coding jerk
LOL
LanoX
BUAT GAME 2D DENGAN GAME EDITOR

BAHAGIAN 1

Game editor adalah sebuah alat pembangunan game 2D yang multi-platform. Dengan menggunakannya, anda boleh hasilkan permainan 2D dengan cara visual dan coding yang minimal. Yang paling seronok ialah anda boleh menyusun game anda seperti anda menyusun objek atas meja yang rata. Sekarang mari kita berkenalan dengan Game-editor dulu.



Jika anda dah install dan buka program ini, satu interface yang seperti diatas akan dipaparkan kat skrin. Biasakan dulu dengan menu2 yang ada dan jangan takut mencuba segala-gala yang ada kat sana. Kat tengah2 tulah anda akan buat game anda dengan menyusun segala sumber yang ada. Koordinat tengah2 (tanda '+') ialah pada lokasi (0,0).

Selain itu, anda akan di paparkan juga dengan tingkap berikut:



Abaikan jerlah benda tu.. hahahaha.

KONSEP DALAM GAME EDITOR

1. ACTOR - ialah objek yang anda gunakan (sprite, sudah tentu). Setiap Actor dipautkan pada kumpulan animasi padanya, juga boleh dipautkan dengan lain2 Actor, mengikuti laluan yang ditentukan (path), boleh jadi transparent, dan sebagainya.

2. ANIMATION - animation mewakili sekumpulan imej-imej statik yang mewakili Actor.

3. EVENT & ACTION - Event ialah sesuatu yang berlaku semasa permainan berlangsung misalnya peristiwa anda menekan butang pada keyboard, menggerakkan tetikus, perlanggaran sesama actor dan sebagainya. Action pula ialah apakah tindakan susulan (boleh jadi beberapa tindakan susulan) yang berlaku akibat Event tadi contohnya apabila actor berlanggar (Event) maka berlakunya letupan (Action).

zsuperxtreme
Alamak dah masuk game editor la... ada link nak download tak? Menarik nie.
MalaYneuMaya
assalamualaikum...


hmmm. smile.gif aku dh tgk2 sample dia.... aku rasa mmg sng nk wat game pkai prog nih
dan ianya sesuai tuk beginner nk wat game... sbab coding dia dh digantikan dgn u-friendly interface .

smntara menunggu tutorial, aku belek2 lar duluh prog tuh... biggrin.gif
LanoX
BAHAGIAN 2: BINA ACTOR

Dalam bahagian ini sebenarnya kita dah bermula untuk menghasilkan game secara langkah demi langkah dengan ilustrasi demi menyenangkan untuk kita faham bersama-sama. Baiklah, game 2D yang akan kita bina ini adalah SPACE INVADER iaitu game tembak2 mini zaman MSDOS dulu. Sebenarnya, terdapat internal tutorial yang mengajar kita buat game nie secara step by step dalam Game Editor. Disini, kita akan lebih 'deliberate' akan setiap langkah yang dibuat.

Pada MENU Game Editor anda iaitu:



Cuba klik pada butang ADD ACTOR dan panel berikut pula akan dipaparkan.



Berikan nama dengan menaip dalam tajuk Name tu. Letak le.... nama apa2 misalnya space_ship. Selepas itu, satu gambar macam pac-man macam kat bawah nie, akan muncul. Ahhhaa.. anda dah berjaya membuat sebuah Actor...



Aktor inilah yang menjadi tulang belakang game yang dihasilkan dalam Game Editor. Cuba anda klik-kanan tetikus pada actor berkenaan. Muncul pula tingkap berikut.



Cuba pilih ACTOR CONTROL... dan satu panel Actor Control akan dipaparkan seperti berikut.



Cuba pahami dan biasakan diri dulu panel menu Actor Control ini, sebab disinilah kita akan membuat kawalan ke atas Actor kita nanti. Ianya seumpama pusat kawalan yang mengawal segala maklumat dan aliran sesebuah aktor.
LanoX
Zsuperxtreme,
Aku baru je nak start nie... hehehe. So, nak link dia ialah http://game-editor.com/
Cuba install DEMO VERSION. Dengan version nie kita boleh buat game 2D nanti.

MalayNeuMaya,
Walaikumsalam. Memang betul cakap ko tu. Sebab dia punya interface memang mudah nak paham. Untuk pengetahuan korang, Game-editor dibina dengan bahasa C. Oleh itu, sapa2 yang ada basic bahasa C, lagi senang nak paham sedikit Scripting yang boleh juga digunakan dalam Game-editor nie nanti.
LanoX
BAHAGIAN 3: SETKAN RESOLUTION

Lanjutan daripada bahagian 2 tadi, kita mungkin hendak membina game dalam saiz2 yang tertentu. Oleh kerana game yang bakal dihasilkan adalah bersaiz mini, mungkin kita boleh setkan dulu resolution yang bakal digunakan. Baiklah, seterusnya, pada MENU Game Editor ini,



Pilih CONFIG dan senarai berikut dipaparkan untuk anda pilih configurasi game berkenaan.



Pilih GAME PROPERTIES, dan seterusnya panel kawalan Game Properties berikut akan ditunjukkan.



Cuba perhatikan betul2 didalam panel kawalan Game Properties berkenaan, terdapat bermacam2 perkara kita boleh setkan bagaimana rupebentuk game yang kita hasilkan nanti. Buat masa sekarang, cuba tumpukan dahulu pada GAME RESOLUTION dengan klik pada butang disebelahnya. Setelah anda klik, senarai resolusi skrin yang berikut akan dipaparkan.



Terdapat banyak senarai resolusi yang boleh anda pilih. Buat masa sekarang, untuk game kita ini, cuba pilih saiz 240 x 320 iaitu saiz Smartphone.... (mana tahu lepas nie boleh transfer ke Smartphone pulak, kan... hehehe). Jika anda pilih saiz tersebut bermakna, 240 adalah lebar dan 320 adalah panjang skrin yang akan digunakan.

Berikutnya, saiz segiempat bewarna putih kat tengah2 tu akan mengecil dan anda boleh gerakkan ia disekitar skrin suntingan Game editor berkenaan. Cuba anda gerakkan kotak segiempat berkenaan dan letakkan bersama Actor yang dah kita buat tadi seperti berikut.

LanoX
... sambungan.

MENGUJI RESOLUTION

Untuk menguji resolusi yang kita dah setkan tadi, cuba anda tengok pada Menu Game Editor.



Cuba klik pada GAME MODE. Ini akan membuatkan game tersebut dijalankan (walaupun belum siap...) untuk tujuan ujian. Paparan berikut akan dihasilkan dengan sebuah tetingkap saiz yang kita dah setkan awal tadi.



Kelihatan bagaimana gambar pac-man (iaitu Actor) yang kita dah buat awal2 tadi. Cuba perhatikan saiz tetingkap berkenaan sememang kecik (...dan sesuai untuk Smartphone) untuk game mini yang bakal kita buat nanti.

Untuk keluar daripada Game Mode, anda boleh tekan kekunci ESC kat keyboard atau boleh klik tanda X kat penjuru atas kanan tetingkap berkenaan (macam biasa ler.. takyah nak ajar dah benda nie.. hehehe).

So far macam mana kawan2 semua, kalo tak jelas dan tak paham bagitau arrr...
LanoX
BAHAGIAN 4: MEMASUKKAN IMEJ

Sekarang kita gantikan pulak imej pac-man tu kepada satu imej yang akan digunakan dalam game kita ini. Oleh kerana di dalam folder Game Editor sendiri terdapat fail2 yang sesuai untuk dijadikan karektor dalam game, maka kita boleh gunakannya dalam tutorial ini.

Klik-kanan tetikus dan pilih ACTOR CONTROL untuk paparkan panel actor control seperti berikut.



Di dalam panel ini, terdapat ruangan ANIMATION. Di dalam kategori ini, cuba klik pada butang ADD ANIMATION. Panel berikutnya akan dipaparkan.



Pada panel ini pula, cuba anda klik pada butang-kanan sebelah nama FILE untuk mencari fail grafik yang akan digunakan sebagai imej aktor berkenaan. Setelah anda klik, maka tetingkap membuka file berikut akan dipaparkan untuk anda memilih fail yang bersesuaian.



Untuk tutorial ini, kita akan pilih fail bitmap spaceShip.bmp dan bolehlah anda klik butang open. Selanjutnya, kembali kepada panel Add Animation dan imej kapal angkasa ringkas ditayangkan pada kotak segiempat sebelah kanan sekali seperti berikut.



Klik butang OK dan sekarang kita telah pun mempunyai imej untuk Actor kita.




Diharap langkah2 mudah ini (siap dengan ilustrasi sekali) dapat menerangkan konsep asas dalam Game Editor. Oleh kerana sekarang (waktu aku tulis tutorial nie...) sudah pukul 3 pagi, maka kita berhenti setakat ini dulu. Nanti kita sambung dilain masa.... wacko.gif
MalaYneuMaya
assalamualaikum...

tambah sket... tongue.gif

actor yg kita tau adlh 'pelakon'. so dlm game editor nih segala imej 2d adlh pelakon/actor xkirala bukit, kapal,tanah,bom,peluru...apa saja.

add actor - cara ini tuk 'memasukkn segala imej (2d) kedlm game' tuh...samada anim atau tidak..

musti ramai tertanya2 "kenapa gambo PACMAN? aku nk masukkn imej kapal aku..."

okelah , PACMAN tu cuma MEWAKILI actor - bukan bermakna kita tepaksa guna imej PACMAN tuh tuk game kita... smile.gif
so bila kita tgk gambo PACMAN tu kita taula yg itu adalah 'actor yg masih kosong/default' so korang gantikan gambo PACMAN ngan imej korang guna cara LanoG...

*LanoG - pi basuh muka.. haha biggrin.gif
LanoX
Yup... memang tepat sekali kata2 MalayNeuMaya. Sama-samalah kita belajar tool ini untuk buat game. Banyak function lain kita bleh gunakan.., anda tak akan sangka banyak company2 pembuat game menggunakan tool yang sama. Walaupun kaedah pembinaan game dalam Game Editor seolah-olah ianya adalah berasaskan objek, namun sebenarnya ia adalah berstruktur.

ps./ pening sikit arini, tido lewat. MalayNeu.... kalo ko nak sambung ke, tambahkan ke info dalam nie... dialu-alukan..ehhehehe smile.gif
zsuperxtreme
Dalam game maker nie ada programming tak?
LanoX
QUOTE(zsuperxtreme @ Feb 12 2007, 03:55 PM) [snapback]420743[/snapback]
Dalam game maker nie ada programming tak?


Jawapan: Ada.

Scripting dalam Game-editor adalah dalam language C. So, sapa2 yang dah mahir dalam language C, ada kelebihan.... Bagi pengguna advance, scripting amat penting untuk memberikan lebih kebebasan dalam mengawal "actor" dan "event" yang kita gunakan. Dalam tool ini ada terdapat Script Editor... nanti kita akan mengulas lebih lanjut berkenaan bagaimana nak buat scripting yang simple..
zsuperxtreme
Actually boleh bagi sample mcm mana nak combine C Script dengan entity?
LanoX
QUOTE(zsuperxtreme @ Feb 12 2007, 04:58 PM) [snapback]420797[/snapback]
Actually boleh bagi sample mcm mana nak combine C Script dengan entity?


Jawapan: BOLEH.

Dalam sambungan tutorial berikutnya ini, akan diterangkan berkenaan penggunaan script bagi membentuk "Event-driven" yang nak kita berikan kepada sesebuah entiti. Tunggu...... (aku nak prepare dulu screenshot2..... hehehehe, diharap bersabar!). laugh.gif
zsuperxtreme
Hehe.. pendek je jawapan ko kan.. kekeke

soalan lagi...

Bolehkah kita buat online-game (MO) menggunakan game editor? Kalau boleh adakah encik lanog akan tolong ajarkan.. hehe


EDIT: Silap produk la....
LanoX
QUOTE(zsuperxtreme @ Feb 12 2007, 05:23 PM) [snapback]420825[/snapback]
Hehe.. pendek je jawapan ko kan.. kekeke

soalan lagi...

Bolehkah kita buat online-game (MO) menggunakan game editor? Kalau boleh adakah encik lanog akan tolong ajarkan.. hehe
EDIT: Silap produk la....


Jawapan: TIDAK BOLEH.

Game-editor versi sedia ada tidak mempunyai function untuk membuat game secara online dan juga tidak memiliki keupayaan untuk membuat game secara multi-player. Namun begitu, pada version berikutnya, pereka Game-editor berjanji untuk menambahkan feature multi-player ini.
LanoX
BAHAGIAN 5: SETKAN KAWALAN

Dalam bahagian ini, kita akan cuba memberikan kawalan ke atas kapal angkasa (space_ship) kita tadi supaya boleh bergerak ke kiri dan ke kanan. Biasanya kita akan gunakan kekunci anak panah (arrow) pada keyboard untuk mengawal pergerakan karektor utama. Baiklah, sekarang kita sambung tutorial ini.

Seperti biasa, klik-kanan mouse pada imej kapal angkasa berkenaan dan pilih panel ACTOR CONTROL.



Dalam panel di atas, kita akan perhatikan satu lagi fungsi iaitu EVENT. Ianya adalah untuk mensetkan peristiwa yang berlaku dan apakah tindakan susulan yang ingin kita hasilkan akibat peristiwa berkenaan. Cuba anda klik pada butang ADD dalam kategori Event. Senarai berikut akan dipaparkan...



Perhatikan terdapat berbagai-bagai event (peristiwa) yang kita boleh masukkan. Oleh kerana peristiwa yang ingin kita setkan ialah apabila menekan butang anakpanah Kanan (right-arrow key) dan Kiri (left-arrow key), maka kita pilih KEY DOWN. Klik pada Key Down dalam senarai tersebut.

Selanjutnya panel Key Down Event akan dipaparkan seperti berikut...



Perhatikan ruangan kosong sebelah Keys: tersebut. Cuba anda tekan kekunci anak-panah ke kanan. Hasilnya, perkataan 'right' akan ditayangkan. Ini adalah tempat dimana kita setkan arahan apabila kekunci ditekan. Untuk kali ini, kita setkan kekunci anakpanah ke kanan dahulu.

Selanjutnya, pada panel yang sama... cuba anda klik pada butang Add Action. Ini bertujuan untuk mengarahkan tindakan susulan apabila kita menekan kekunci anak panah kanan pada keyboard tadi. Senarai berikut akan dipaparkan...



Ini merupakan senarai Action iaitu tindakbalas apabila sesuatu Event diaktifkan. Dalam kes ini, kita mahukan kapal angkasa tersebut bergerak ke kanan apabila kita menekan kekunci anakpanah kanan. Oleh itu, kita perlu menggunakan Script Editor untuk berbuat demikian. Pada senarai, pilih Script Editor....



Disinilah kita akan menulis sedikit script C... jangan risau kepada yang tidak memahami bahasa pengaturcaraan. Ianya sangat mudah untuk dilaksanakan.
LanoX
.... sambungan.

Di dalam Script Editor berkenaan, kita akan menulis sedikit code. Oleh kerana Action yang hendak kita buat ialah menggerakkan kapal angkasa ke kanan.. akibat menekan kekunci anakpanah kanan, maka code yang boleh menggerakkan Actor berkenaan ke kanan adalah seperti berikut:

CODE
x = x + 4;


Perhatikan code di atas. Makna X ialah kedudukan asal melintang (x-axis) dan X + 4 bermakna setiap kali kita menekan kekunci anakpanah kanan, maka Actor akan bergerak sebanyak 4 pixel ke kanan. Anda boleh ubahsuai berapa banyak piksel yang hendak digerakkan setiap kali menekan kekunci anakpanah kanan.

Setelah anda menaip code ringkas ini, pada Script Editor berkenaan... cuba klik pada butang Add di bahagian bawah sekali. Selanjutnya pilihan berikut dipaparkan...



Pilih Immediate Action sebab kita mahukan tindakan ini segera dilaksanakan tanpa berlengah.
Sekarang kita akan hasilkan pula pergerakan ke kiri apabila kita menekan kekunci anakpanah ke kiri.

Ulangi langkah yang sama seperti tadi... bermula dengan panel Actor Control:

Klik pada Events: Add --> pilih Key Down --> Tekan kekunci anakpanah Kiri --> klik Add Action --> pilih Script Editor

Selanjutnya tulis code pergerakan melintang (x-axis) ke kiri iaitu:

CODE
x = x - 4;


Selepas itu jangan lupa untuk klik Add pada panel Script Editor dan pilih Immediate Action seperti tadi.



Jika ke kanan kita menambah tanda '+'... maka kalau bergerak ke kiri adalah sebaliknya, minus iaitu tanda '-'

Selanjutnya... mungkin kita ingin menguji kawalan yang dah disetkan tadi. Anda boleh klik butang Game Mode pada menu utama Game-editor.



Cuba gerakkan kapal angkasa anda ini ke kiri dan kanan menggunakan kekunci anakpanah kiri dan kanan pada keyboard anda. Sudah pasti ianya boleh digerakkan dengan mudah.....

So far bagaimana kawan2 semua, kalau ada kemuskilan bolehlah bertanya atau pun mungkin ada nak tambah info ke.. memang banyak lagi kita perlu explore tool nie. Oleh kerana orang rumah aku asyik jeling2 jer aku layan komputer nie, ada baiknya aku berhenti setakat ini dulu sebelum apa2 yang tidak diingini berlaku pada aku... hehehehe. Kita akan sambung lagi lain kali... laugh.gif
b1naryc0de
Aku baru download dan test buat tutorial yang LanoG ajar.. Best gak Game Editor nie..

Aku tambah sikit tutorial edit script untuk movement space ship tu eh LanoG..

Kalo ikut tutorial LanoG skrin game adalah 240 x 320 dan paksi (0,0) terletak kat tengah2 skrin game..

Jadi ini bermakna x = 0 adalah ditengah2 skrin.. Jarak dari tengah ke sisi kiri dan kanan skrin = 120.. (240 bahagi 2)..

Dan katalah saiz actor = 20 x 20 (dalam game editor yang aku download takde fail spaceship tue..)

Kedudukan paksi-x 0 untuk actor adalah ditengah2 actor.. Jadi jarak paksi-x 0 ke sisi paling tepi aktor = 10..

Untuk elakkan spaceship tu keluar dari skrin boleh buat kat script event untuk actor tue macam nie:

CODE
//untuk gerakan ke kanan:
if (x < 110) //120-10
{
  x = x + 4;
}
else
{
  x = x;
}

//untuk gerakan ke kiri:
if (x > -110)
{
  x = x - 4;
}
else
{
  x = x;
}


Hehe tu salah satu cara.. Mungkin ada cara lain yang bakal di ajar LanoG..

Soalan:
Macamana nak set posisi awal actor?
zsuperxtreme
Soalan
1. Kalau takde template multiplayer dalam game editor, boleh ke kita buat api *.DLL (C++), utk diimport ke dalam C Script?

2. Bolehkah kita buat game hanya menggunakan programmng C Script kat game editor, tanpa menggunakan interface?
LanoX
B1naryc0de,
Hahahah... bagus2, memang amat berguna info tambahan nie. Inilah kelebihan apabila dah tahu bahasa C, kan. Sebenarnya ada lagi teknik lain untuk mensetkan tindakan sama seperti dalam code yang ditulis beliau. Nanti akan diterangkan jugak step-by-step...

QUOTE
Soalan:
Macamana nak set posisi awal actor?
Jawapan: MUDAH SAJA.

Nak setkan posisi awal sesebuah actor bergantung kepada bagaimana kita mahu actor disetkan. Misalnya kita cuma pakai drag & drop je untuk setkan kedudukan awal kapal angkasa dalam tutorial nie. Kita juga boleh setkan posisi awal sesebuah actor sama ada ia berpaut pada parent actor atau sebaliknya, sama ada visible atau sebalik dan sebagainya. Dalam tutorial ini nanti, kita akan melihat bagaimana setkan posisi awal actor yang berbeza-beza mengikut keadaan.

QUOTE
Soalan
1. Kalau takde template multiplayer dalam game editor, boleh ke kita buat api *.DLL (C++), utk diimport ke dalam C Script?

2. Bolehkah kita buat game hanya menggunakan programmng C Script kat game editor, tanpa menggunakan interface?

Jawapan 1: TIDAK BOLEH

Game-editor tidak mempunyai feature untuk menggunakan Dynamic Link Library (DLL). Oleh itu, kita tidak dapat menggunakannya buat masa sekarang. Pada masa hadapan, fungsi ini mungkin akan ditambah.

Jawapan 2: TIDAK BOLEH

Sebenarnya kod dalam "script editor" adalah salah satu daripada Action yang diaktifkan apabila berlaku Event. Lagipun, ianya tidak menyokong semua syntak dalam C kerana ada syntax C-script yang tidak wujud dalam Script Editor. Ianya lebih kepada fungsi sokongan supaya kita boleh pelbagaikan Action dengan scripting. Oleh itu, kita tidak boleh menggunakan seluruh keyword script C kerana ada hadnya.... smile.gif
zsuperxtreme
Oh byk gak kelemahan game editor nie ye....

Soalan
1. Kalau kita guna core programming mcm VB & C++, kita still boleh buat game mcm dlm game editor, malah lebih baik dari itu, mcm kita boleh buat multiplayer, kita boleh buat mcm2 jenis script. Tapi kenapa tuan LanoG (hehe) pilih utk guna game editor yg byk kelemahan?
LanoX
QUOTE(zsuperxtreme @ Feb 13 2007, 02:52 PM) [snapback]421433[/snapback]
Soalan
1. Kalau kita guna core programming mcm VB & C++, kita still boleh buat game mcm dlm game editor, malah lebih baik dari itu, mcm kita boleh buat multiplayer, kita boleh buat mcm2 jenis script. Tapi kenapa tuan LanoG (hehe) pilih utk guna game editor yg byk kelemahan?


Jawapan: Sila Rujuk Post #10

smile.gif Pemilihan Game Editor untuk tutorial ini bukan kerana kelemahannya, tetapi lebih kepada kelebihannya. Disini kita tidak bercadang untuk mendedahkan asas scripting yang sangat complex (tidak sesuai untuk beginner...). Bagi mereka yang sudah mahir dalam core programming, digalakkan boleh beralih terus untuk mendalami core programming berkenaan. Tujuan utama tutorial ini ialah mendedahkan konsep asas untuk menarik minat sesiapa sahaja yang ingin membina game ringkas mereka dengan seronok.

Kita perlu paham bahawa tidak semua orang adalah hard-core programmer... sedikit sebanyak, dengan adanya tool ini dapat memudahkan mereka membuat game ringkas yang pertama. Malahan bagi sesiapa yang belum pernah buat game, akhirnya akan mampu membina game yang lengkap akhirnya. Inilah objektif utama tutorial ini......
gulhalim
waa nampak cam menarik je,aku pun nak try ikutla bila ada masa terluang.
zsuperxtreme
Betul jugak kata lan, kalau tiba2 je kena pakai DirectDraw, mau pengsan tengok code dia.. hehe.
MalaYneuMaya
assalamualaikum...

hmm.. smile.gif teringat lak aku game DemonStar...
suka tul aku main game tuh...

err...C ngan C++ xjauh beza kan?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.