Tampilkan postingan dengan label Pengantar Teknologi Game. Tampilkan semua postingan
Tampilkan postingan dengan label Pengantar Teknologi Game. Tampilkan semua postingan

Rabu, 11 Mei 2011

Peran karakter pada story game "Scooby Doo and the Creepy Castle Game"



Pada postingan sebelumnya,saya sudah menjelaskan bagaimana story dan cara bermain game ini.
Nah postingan kali ini,saya akan menjelaskan peran scooby doo dalam menjalankan stage-stage dalam game ini.

Peran scooby doo dalam setiap stage berbeda-beda,walaupun cara bermainnya masih sama.
Pada stage pertama scooby doo harus mencari dan membebaskan Daphne dari jebakan hantu didalam kastil (Daphne memiliki beberapa karakteristik yakni berambut panjang dan kemerahan, dan memakai ikat rambut hijau, serta memakai pakaian berwana serba ungu. Juga memakai syal berwarna kehijauan, dan kaos kaki panjang berwarna merah muda dan sepatu berwarna ungu.)


Pada stage kedua,misi scooby doo yaitu mencari dan membebaskan Velma (Karakter ini juga memiliki rambut berwarna merah terang, memakai pakaian berwarna oranye, rok berwarna merah dan sepatu serta kaos kaki dengan warna merah dan oranye.Velma juga menggunakan kacamata).Pada stage kedua,misi yang harus dicapai scooby doo lebih sulit karena jebakannya lebih banyak dan scooby harus berhati-hati.


Pada stage ketiga,misi scooby doo yaitu mencari dan membebaskan Fred (Karakter ini memakai dasi berwarna oranye, pakaian kerja berwarna putih dan biru, celana panjang berwrna biru tua dan sepatu coklat).Pada stage ketiga ini,selain lebih sulit lagi jebakan-jebakan y ang menghadang scooby,perjalanan pencarian ini lebih lama,jadi scooby harus lebih waspada pada jebakan-jebakan hantu yang membuat scooby jadi takut.


Jika scooby doo mampu menyelamatkan semua teman-temannya,maka scooby sudah berhasil menyelamatkan hari itu dan memecahkan misteri yang terdapat pada kastil yang mengerikan



View full article and comment >>>

Sabtu, 07 Mei 2011

Story games "Scooby Doo and the Creepy Castle Game"




Pada postingan kali ini,saya akan menjelaskan cara permainan dan story pada games ini.
Awal cerita dalam game ini,ada hantu yang menjebak gang scooby doo (Freddie Jones,Velma Dinkley,Daphne Blake)didalam kastil yang mengerikan.
Lalu Norville "Shaggy" Rogers Matthville alias Shaggy menyuruh Scooby doo untuk melihat ke kastil,sementara Shaggy tetap diluar untuk menjaga mobil van.Lalu scooby masuk dan memulai petualangannya \(^_^)/



Selanjutnya saya akan menjelaskan aturan permainan dalam games ini.
1.Kita punya 3 kesempatan (3 kali mencoba) untuk menemukan geng scooby
2.Kamu akan kehilangan kesempatan itu jika faktor ketakutan scooby menjadi tinggi.
Lihatlah snack scooby untuk membantu menjaga faktornya tetap rendah
3.Ketika scooby sedang berjalan,klik pada object untuk menempatkannya di inventori kita.
4.Klik pada pintu untuk membuka atau menutupnya
5.Gunakan object yang kamu temukan untuk terjaga dari hantu
6.Contohnya,kamu dapat menyegel pintu yang tertutup dengan menarik papan ke pintu

Nah,dalam perjalanan didalam kastil,scooby akan diganggu oleh hantu terus menerus.Kita harus menemukan cara-cara agar terjaga dari hantu dan scooby tidak ketakutan.Nah jika misi pertama selesai dan menemukan salah satu teman dalam gang,maka akan dilanjutkan ke misi selanjutnya dengan tempat yang berbeda untuk menemukan teman yang lain.



View full article and comment >>>

Karakter SCOOBY DOO pada games



Oke,pada postingan kali ini,saya akan membahas karakter dari sebuah game.
Game yang saya bicarakan kali ini adalah "Scooby Doo and the Creepy Castle Game".
Tentu saja,tokoh utama dalam game ini adalah scooby doo.
Game ini merupakan game online yang sangat mudah dimainkan,dapat kamu klik dan mainkan game ini disini klik untuk games scooby doo


Oke,saya mulai pembahasan karakter scooby ini..
Seperti yang kita tahu,sama halnya dengan yang ada dilayar kaca,scooby doo ini adalah seekor anjing yang penakut dan makannya sangat banyak.
Karakter ini merupakan peliharaan Norville "Shaggy" Rogers.
Karakter ini membantu dalam memecahkan masalah. Mampu berbicara, namun dengan ucapan yang sulit dimengerti. Hal itu disebabkan karena dalam bahasa apapun, Ucapan diawali dengan huruf "R", seperti "Rhaggie" untuk Shaggy, "Rrantu" untuk Hantu, dan lain-lain. Scooby-Doo Sangat menyukai snack Scooby. Hal yang membuat takut adalah hantu. Namun, dia adalah senjata yang paling ampuh untuk menangkap sang hantu, biasanya jebakan yang disediakan akan gagal, namun pasti ujungnya kembali tertangkap.

sumber:
wikipedia
View full article and comment >>>

Senin, 11 April 2011

Membuat animasi dari Ogre

Oke,postingan kali ini,saya akan memberikan listing untuk membuat project dalam ogre.
Mungkin agak pusing,karena saya pun sebenarnya masih "newbie" dalam ogre.
Untuk object,saya menggunakan object fish.mesh yang sudah disediakan (jadi saya tidak mengubah object lg).
Tapi,jika ingin membuat object sendiri dari blender,membuat skeleton,lalu mengconvertnya menjadi mesh,kamu bisa lihat dari sumber yang ini~http://crystalforest.wordpress.com karena dari sumber tersebutlah saya belajar :D.
oke saya mulai ya..

Setiap kita akan membuat project baru,dalam eclipse,kita harus selalu menkofigurasi(dapat dilihat pada post blog yang lalu)~lihat disini atau lihat saja disini
Nah,setelah kita mengkonfigurasinya,pastinya pada lembar kerja eclipse,kita harus memasukkan listing program (dengan bahasa C++).

#include "ExampleApplication.h"
#include < ogretexture.h >
#include < OgreHardwarePixelBuffer.h >
#include < OgreTextureManager.h >
#include < OgreLogManager.h >
#include < sstream >
TexturePtr ptex;
HardwarePixelBufferSharedPtr buffer;
Overlay* overlay;
static const int reactorExtent = 130; // must be 2^N + 2
uint32 clut[1024];
AnimationState *swim;
// Nano fixed point library
#define FROMFLOAT(X) ((int)((X)*((float)(1<<16))))
#define TOFLOAT(X) ((float)((X)/((float)(1<<16))))
#define MULT(X,Y) (((X)*(Y))>>16)
ColourValue HSVtoRGB( float h, float s, float v )
{
int i;
ColourValue rv(0.0f, 0.0f, 0.0f, 1.0f);
float f, p, q, t;
h = fmodf(h, 360.0f);
h /= 60.0f; // sector 0 to 5
i = (int)floor( h );
f = h - i; // factorial part of h
p = v * ( 1.0f - s );
q = v * ( 1.0f - s * f );
t = v * ( 1.0f - s * ( 1.0f - f ) );

switch( i ) {
case 0: rv.r = v; rv.g = t; rv.b = p; break;
case 1: rv.r = q; rv.g = v; rv.b = p; break;
case 2: rv.r = p; rv.g = v; rv.b = t; break;
case 3: rv.r = p; rv.g = q; rv.b = v; break;
case 4: rv.r = t; rv.g = p; rv.b = v; break;
default: rv.r = v; rv.g = p; rv.b = q; break;
}
return rv;
}
class DynTexFrameListener : public ExampleFrameListener
{
private:
static float fDefDim;
static float fDefVel;
float tim;

int *chemical[2];
int *delta[2];
size_t mSize;
int dt,hdiv0,hdiv1; // diffusion parameters
int F,k; // reaction parameters

bool rpressed;
public:
DynTexFrameListener(RenderWindow* win, Camera* cam) : ExampleFrameListener( win, cam )
{
tim = 0;
rpressed = false;
// Create colour lookup
for(unsigned int col=0; col<1024; col++)
{
ColourValue c;
c = HSVtoRGB((1.0f-col/1024.0f)*90.0f+225.0f, 0.9f, 0.75f+0.25f*(1.0f-col/1024.0f));
c.a = 1.0f - col/1024.0f;
PixelUtil::packColour(c, PF_A8R8G8B8, &clut[col]);
}
// Setup
LogManager::getSingleton().logMessage("Creating chemical containment");
mSize = reactorExtent*reactorExtent;
chemical[0] = new int [mSize];
chemical[1] = new int [mSize];
delta[0] = new int [mSize];
delta[1] = new int [mSize];

dt = FROMFLOAT(2.0f);
hdiv0 = FROMFLOAT(2.0E-5f/(2.0f*0.01f*0.01f)); // a / (2.0f*h*h); -- really diffusion rate
hdiv1 = FROMFLOAT(1.0E-5f/(2.0f*0.01f*0.01f)); // a / (2.0f*h*h); -- really diffusion rate
//k = FROMFLOAT(0.056f);
//F = FROMFLOAT(0.020f);
k = FROMFLOAT(0.0619f);
F = FROMFLOAT(0.0316f);

resetReactor();
fireUpReactor();
updateInfoParamF();
updateInfoParamK();
updateInfoParamA0();
updateInfoParamA1();

LogManager::getSingleton().logMessage("Cthulhu dawn");
}
void resetReactor()
{
LogManager::getSingleton().logMessage("Facilitating neutral start up conditions");
for(unsigned int x=0; x<<16)-U);
delta[1][idx] += UVV - MULT(F+k,V);
idx++;
}
idx += 2;
}
// Update concentrations
for(x=0; xlock(HardwareBuffer::HBL_DISCARD);
const PixelBox &pb = buffer->getCurrentLock();
unsigned int idx = reactorExtent+1;
for(unsigned int y=0; y<(reactorExtent-2); y++) {
uint32 *data = static_cast(pb.data) + y*pb.rowPitch;
int *chem = &chemical[0][idx];
for(unsigned int x=0; x<(reactorExtent-2); x++) {
data[x] = clut[(chem[x]>>6)&1023];
}
idx += reactorExtent;
}
buffer->unlock();
}
// GUI updaters
void updateInfoParamK()
{
OverlayManager::getSingleton().getOverlayElement("Example/DynTex/Param_K") \
->setCaption("[1/2]k: "+StringConverter::toString(TOFLOAT(k)));
}
void updateInfoParamF()
{
OverlayManager::getSingleton().getOverlayElement("Example/DynTex/Param_F") \
->setCaption("[3/4]F: "+StringConverter::toString(TOFLOAT(F)));
}
void updateInfoParamA0()
{
// Diffusion rate for chemical 1
OverlayManager::getSingleton().getOverlayElement("Example/DynTex/Param_A0") \
->setCaption("[5/6]Diffusion 1: "+StringConverter::toString(TOFLOAT(hdiv0)));
}
void updateInfoParamA1()
{
// Diffusion rate for chemical 2
OverlayManager::getSingleton().getOverlayElement("Example/DynTex/Param_A1") \
->setCaption("[7/8]Diffusion 2: "+StringConverter::toString(TOFLOAT(hdiv1)));
}

bool frameStarted( const FrameEvent& evt )
{
using namespace OIS;
if( ExampleFrameListener::frameStarted( evt ) == false )
return false;

if( mKeyboard->isKeyDown( KC_1 ) ) {
k -= FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamK();
}
if( mKeyboard->isKeyDown( KC_2 ) ) {
k += FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamK();
}
if( mKeyboard->isKeyDown( KC_3 ) ) {
F -= FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamF();
}
if( mKeyboard->isKeyDown( KC_4 ) ) {
F += FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamF();
}
if( mKeyboard->isKeyDown( KC_5 ) ) {
hdiv0 -= FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamA0();
}
if( mKeyboard->isKeyDown( KC_6 ) ) {
hdiv0 += FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamA0();
}
if( mKeyboard->isKeyDown( KC_7 ) ) {
hdiv1 -= FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamA1();
}
if( mKeyboard->isKeyDown( KC_8 ) ) {
hdiv1 += FROMFLOAT(0.005f*evt.timeSinceLastFrame);
updateInfoParamA1();
}

if( mKeyboard->isKeyDown( KC_0 ) && !rpressed ) {
// Reset 0
resetReactor();
fireUpReactor();
rpressed = true;
} else {
rpressed = false;
}
for(int x=0; x<10; x++)
runStep();
buildTexture();
swim->addTime(evt.timeSinceLastFrame);

return true;
}

virtual ~DynTexFrameListener(void)
{
delete [] chemical[0];
delete [] chemical[1];
delete [] delta[0];
delete [] delta[1];
}
};

float DynTexFrameListener::fDefDim = 25.0f;
float DynTexFrameListener::fDefVel = 50.0f;

class DynTexApplication : public ExampleApplication
{
public:
DynTexApplication() {}

protected:


virtual void createFrameListener(void)
{
mFrameListener= new DynTexFrameListener(mWindow, mCamera);
mFrameListener->showDebugOverlay(true);
mRoot->addFrameListener(mFrameListener);
}


virtual void createViewports(void)
{
// Create one viewport, entire window
Viewport* vp = mWindow->addViewport(mCamera);
vp->setBackgroundColour(ColourValue(0,0,0));

// Alter the camera aspect ratio to match the viewport
mCamera->setAspectRatio(
Real(vp->getActualWidth()) / Real(vp->getActualHeight()));
}

// Just override the mandatory create scene method
void createScene(void)
{
// Create dynamic texture
ptex = TextureManager::getSingleton().createManual(
"DynaTex","General", TEX_TYPE_2D, reactorExtent-2, reactorExtent-2, 0, PF_A8R8G8B8,
TU_DYNAMIC_WRITE_ONLY);
buffer = ptex->getBuffer(0, 0);

// Set ambient light
mSceneMgr->setAmbientLight(ColourValue(0.6, 0.6, 0.6));
mSceneMgr->setSkyBox(true, "Examples/SpaceSkyBox", 50 );

//mRoot->getRenderSystem()->clearFrameBuffer(FBT_COLOUR, ColourValue(255,255,255,0));

// Create a light
Light* l = mSceneMgr->createLight("MainLight");
l->setDiffuseColour(0.75, 0.75, 0.80);
l->setSpecularColour(0.9, 0.9, 1);
l->setPosition(-100,80,50);
mSceneMgr->getRootSceneNode()->attachObject(l);


Entity *planeEnt = mSceneMgr->createEntity("TexPlane1", Ogre::SceneManager::PT_PLANE);
// Give the plane a texture
planeEnt->setMaterialName("Examples/DynaTest");

SceneNode* node = mSceneMgr->getRootSceneNode()->createChildSceneNode(Vector3(-100,-40,-100));
node->attachObject(planeEnt);
node->setScale(3.0f, 3.0f, 3.0f);

// Create objects
SceneNode *blaNode = mSceneMgr->getRootSceneNode()->createChildSceneNode(Vector3(-200,0,50));
Entity *ent2 = mSceneMgr->createEntity( "knot", "knot.mesh" );
ent2->setMaterialName("Examples/DynaTest4");
blaNode->attachObject( ent2 );

blaNode = mSceneMgr->getRootSceneNode()->createChildSceneNode(Vector3(200,-90,50));
ent2 = mSceneMgr->createEntity( "knot2", "knot.mesh" );
ent2->setMaterialName("Examples/DynaTest2");
blaNode->attachObject( ent2 );
blaNode = mSceneMgr->getRootSceneNode()->createChildSceneNode(Vector3(-110,200,50));

// Cloaked fish
ent2 = mSceneMgr->createEntity( "knot3", "fish.mesh" );
ent2->setMaterialName("Examples/DynaTest3");
swim = ent2->getAnimationState("swim");
swim->setEnabled(true);
blaNode->attachObject( ent2 );
blaNode->setScale(50.0f, 50.0f, 50.0f);


//TextureManager::getSingleton().getByName("RustySteel.jpg");


std::stringstream d;
d << "HardwarePixelBuffer " << buffer->getWidth() << " " << buffer->getHeight() << " " << buffer->getDepth();
LogManager::getSingleton().logMessage(d.str());

buffer->lock(HardwareBuffer::HBL_NORMAL);
const PixelBox &pb = buffer->getCurrentLock();
d.str("");
d << "PixelBox " << pb.getWidth() << " " << pb.getHeight() << " " << pb.getDepth() << " " << pb.rowPitch << " " << pb.slicePitch << " " << pb.data << " " << PixelUtil::getFormatName(pb.format);
LogManager::getSingleton().logMessage(d.str());
buffer->unlock();

// show GUI
overlay = OverlayManager::getSingleton().getByName("Example/DynTexOverlay");
overlay->show();
}

void destroyScene(void)
{
// Free resource pointers before shutdown
ptex.setNull();
buffer.setNull();
}

};

#ifdef __cplusplus
extern "C" {
#endif

#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
#define WIN32_LEAN_AND_MEAN
#include "windows.h"

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
#else
int main(int argc, char *argv[])
#endif
{
// Create application object
DynTexApplication app;

try {
app.go();
} catch( Ogre::Exception& e ) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
std::cerr << "An exception has occured: " <<
e.getFullDescription().c_str() << std::endl;
#endif
}

return 0;
}

#ifdef __cplusplus
}
#endif


Jadi,pada listing diatas,akan menghasilkan output berbentuk texture.
Nah,jika kita memencet angka 7 atau 8 dan 4 atau 5 akan memberikan efek perubahan texture.
Hasilnya menjadi seperti ini:









View full article and comment >>>

Sabtu, 02 April 2011

OGRE game engine



Oke..sekarang saya akan membahas ttg ogre game engine.
Ogre,hmm ogre disini bukan monster rawa hijau yang ada di film SHREK.hehee
Jadi,apa sih ogre itu??
OGRE (Object-Oriented Graphics Rendering Engine) adalah engine yang object oriented & flexible 3D rendering pada game engine yang ditulis dalam bahasa C++ serta didesain untuk mampu men-developer dengan intuitif & 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 object yang lebih tinggi.




Informasi Umum

OGRE hanyalah rendering engine. Seperti pada engine lainnya, hanya saja OGRE pada umumnya hanya sebagai graphic rendering. Dengan kata lain fitur OGRE hanya khusus menangani vector & matrix classes, memory handling, dan lain-lain. Ini bukanlah salah satu dari semua solusi dalam istilah game development / simulasi, OGRE tidak menyediakan audio / physics support.

Pada umumnya ini bisa dikatakan sebagai kelemahan utama dari OGRE, tetapi itu setara setelah melihat kemampuan grafis ada engine ini. Kemempuan utama 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 mensuport OIS, SDL, dan 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 dalam ogre

Fitur-Fitur yang terdapat pada OGRE yaitu:
* Desain yang berobject oriented dengan menggunakan plug-in 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 & Direct3D. Bisa merender konten yang sama di beda platform tanpa harus mempunyai content creator. Dapat diakses pada platform Linux, Mac OS X, 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 & manual.
* Engine animasi yang mensuport penuh untuk multiple hardware.
* OGRE mempunyai comositing manager dengan bahasa script dan full screen postprocessing untuk efek seperti HDR, blooming, satruation, brightness, blurring, & noise.
* Libraries mempunyai fitur memory debugging & loading resource dari archive-nya.
* Tersedia konten tools untuk 3D modeler, seperti 3D Studio Max, Maya, Blender, LightWare, Milkshape, Sketchup, dsb.

Installasi Ogre dalam Windows
Ogre atau object-oriented Graphics Rendering Engine adalah open source rendering engine grafik yang ditulis dan dimaintain oleh tim inti kecil. Ogre merupakan suatu aplikasi 3D yang bersifat open source. Berikut ini adalah file-file yg dibutuhkan untuk membuat aplikasi 3D dengan library OGRE3D (Object Oriented Graphics Rendering Engine) antara lain :

* Eclipse-CPP ganymede sebagai IDE C++

* MinGW toolbox sebagai GCC opensource compiler

* MYSYS sebagai GNU Terminal environment

* OGRE3D SDK sebagai rendering engine di OGRE SDK for Code::Blocks + MinGW C++ Toolbox , perlu diperhatikan bahwa kita menggunakan MinGW sebagai c++ compilernya


1.Pertama install MinGW Toolbox dan setelah itu lakukan setting environment variable, misalkan anda menginstalnya di D:\mingw, maka dalam environment variable kita set path dengan nilai D:\mingw\bin


2.untuk mengecheck apakah MinGW sudah terinstall dengan benar, ketik gcc –v pada command prompt

3.kemudian install MYSYS, jalankan setup MYSYS-1.0.10, kemudian setting path seperti yang dilakukan untuk menginstall MinGW seperti gambar dibawah berikut


4.untuk mengechecknya ketikan uname –a dicommand prompt

5.selanjutnya install OGRE, kemudian setting variable seperti MinGW dan MYSYS diatas, tetapi kita membuat variabel system baru yang bernama OGRE_HOME


6.Lalu extractlah file eclipse hasil download dan jalankan file eclipse.exe dalam folder eclipse

7.Setelah itu kita buat project baru dengan menekan alt+shift+n lalu pilihlah C++ Project, perhatikan gambar berikut :


8.Lalu selanjutnya kita akan membuat sebuah project aplikasi 3D yang memanfaatkan OGRE.
9.pilih empty project dengan toolchains MinGW

10.lalu klik project pada bagian project explorer lalu tekan alt+enter

11.Arahkan kebagian C/C++ Build --> Settings, Klik Manage Configurations lalu klik baris Release dan tekan Set Active dan klik OK.

12.Masuk ke bagian GCC C++ Compiler pada Tool Settings, selanjutnya ikutilah petunjuk table berikut ini untuk bagian-bagian properties pada pilihan Debug dan Release. Pastikan yang aktif adalah Release.


13.Masih pada bagian Tool Setting, masuk ke bagian MinGW C++ Linker ikutilah petunjuk table berikut ini untuk bagian-bagian properties pada pilihan Debug dan Release. Pastikan yang aktif adalah Release.


14.Masuk kebagian sourcecode, masukkan contoh sourcecode

15.Build project tersebut(dari sourcode yang kamu masukkan), dan masuk kedalam direkori OgreSDK\bin\release lalu buka file resource.cfg

16.Ganti bagian ../../../ dengan fullpath lokasi OgreSDK

17.Savelah file tersebut, lalu copy semua isi direktori OgreSDK\bin\release kedalam workspace project anda khusunya direkori nama_workspace\nama_project\Release

18.Masuk ke direktori nama_workspace\nama_project\Release, jalankan file executablenya biasanya nama_project.exe maka akan muncul dialog seperti ini,
>

19.Disini kita mengkonfigurasi output yang ditampilkan, tekan OK, maka hasilnya akan tampak


Installasi Ogre dalam Ubuntu
Sebenarnya di Ubuntu Repository sudah ada Ogre3D, namun hanya terbatas pada library (pada /usr/lib/OGRE) dan development headernya (pada folder /usr/include/OGRE). Mereka disimpan pada package libogre6 dan libogre-dev. Dan juga, yang berguna, adalah dokumentasi ogre yang disimpan pada package ogre-doc

Tapi, Ubuntu tidak menyertakan Samples yang memudahkan kamu untuk mempelajari, dan terkesan, pada Ogre. Namun, menginstall Ogre dari Source pun tidak mudah. Ada beberapa hal yang perlu dicermati :

1. Ada library yg harus kamu download, yaitu Freeimage, OIS, dan Cg_toolkit. Kamu harus mendownload sourcesnya, dan melakukan kompilasi. Siap-siap ya dengan membaca file2 spt README, INSTALL dan sebagainya. Bagi kamu yang pemula, kamu hanya tinggal menjalankan ./configure, make dan make install. Itu aja kok, mudah. Tapi untuk jelasnya silahkan baca masing-masing petunjuk instalasi. Oh ya, kalau saat instalasi OIS,kamu disuruh menginstall beberapa paket yang dibutuhkan, install saja. Misalnya nanti kamu akan disuruh menginstall Automake dan sebagainya. Bisa kan menginstall mereka dengan sudo apt-get install ? Pastikan dulu nama packagenya dengan mencari dengan apt-search ya.
Download source ogre disini--> source ogre

buat lebih jelas klik disini aja--> cara install


2.Untuk menjalankan Demo ini(yang diatas), kamu harus berada di folder Samples/Common/bin dan menjalankan semua file binary hasil perintah make dari situ. Contoh untuk menjalankan demo Robot ini, perintahnya adalah ../../Robot/src/Robot, tentu dari direktori /Samples/Common/bin.

Langkah utuk instalasi Ogre 3D di Ubuntu Gutsy (setidak2nya Gutsy sudah menyediakan paket libfreeimage, jadi kamu tidak perlu download dari sourcenya).
Paket yang yg belum ada di Gutsy (klik aja untuk download-->) : OIS dan Cg Toolkit.

Instalasi OIS
Install dulu dependency :

sudo apt-get install autoconf automake1.9 libtool libxaw6-dev build-essential

membutuhkan 63.3 MB

Kemudian mulai build

make clean # bersihkan folder objek hasil kompilasi sebelumnya
./bootstrap
./configure --disable-ogre # karena ogre yg akan memanggil ois
make
sudo make install
Instalasi Cg Toolkiet
extract Cg_toolkit, dan kopi ke /usr semuanya :
cd Cg
sudo cp usr/* /usr -R

Instalasi Ogre
Install dulu dependency :
sudo apt-get install libzzip-dev libxxf86vm-dev \
libxrandr-dev libxrandr-dev libfreeimage-dev \
libcegui-mk2-dev libfreetype6-dev libdevil-dev \
libgtk2.0-dev libcppunit-dev libglut3-dev

jalankan terlebih dahulu :
aclocal

Kemudian mulai build :
./bootstrap
./configure
make
sudo make install

sumber:
- sumber1
- sumber2
- sumber3
- sumber4

View full article and comment >>>

Sabtu, 26 Maret 2011

GAME ENGINE



Game Engine...hmm..postingan kali ini masih berkutat seputar game lagi..

Oke,siap ya...
Game engine,secara harfiah ya dlm arti Indonesia adalah mesin permainan.
Kita sering main game,tapi kita ga tau kan cara pembuatannya dan penggeraknya gimana..
Nah maka dari itu,kita bahas tentang game engine :)

Apa sih game engine itu??
Game engine adalah program yang menjadi penggerak suatu program game. 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.


Kenapa sih kita membutuhkan game engine??
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 dahulu dibuat engine-nya. Setelah engine diselesaikan, programmer hanya perlu menambahkan progam utama, memakai resources (objek 3D, musik, efek suara) yang baru dan, jika benar-benar dibutuhkan , sedikit memodifikasi engine sesuai kebutuhan spesifik dari game yang bersangkutan.

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

1. Roll-your-own game engine
Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine-nya sendiri. Mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Di sisi lain, mereka kadang menggunakan library komersil atau yang open source. Terkadang mereka juga membuat semuanya mulai dari nol. Biasanya game engine tipe ini lebih disukai karena selain kemungkinan besar diberikan secara gratis, juga memperbolehkan mereka (para developer) lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Tower Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine-nya, hanya untuk ditulis ulang semuanya dalam beberapa hari sebelum penggunaannya karena adanya bug kecil yang sangat mengganggu.

2. Mostly-ready game engines
Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer/programer. Semuanya termasuk contoh GUI, physiscs, libraries model, texture dan lain-lain. Banyak dari mereka yang sudah benar-benar matang, sehingga dapat langsung digunakan untuk scripting sejak hari pertama. Game engine semacam ini memiliki beberapa batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar-benar terbuka lebar. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game.

3. Point-and-click engines
Engine ini merupakan engine yang sangat dibatasi, tapi dibuat dengan sangat user friendly. Anda bahkan bisa mulai membuat game sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan coding, kamu sudah bisa merilis game point-and-click yang kamu banget. Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya.

Contoh Aplikasi Game Engine:
Game engine gratis
1. OGRE
2. Irrlicht
3. Panda3D. Contoh game-nya : Pirates of the Caribbean Online.
4. Crystal Space
5. jME
6. Blender Game Engine
7. Reality Factory
8. The Nebula Device 2
9. RealmForge
10. OpenSceneGraph

Game engine berbayar
1. C4 Engine
2. Torque Game Engine
3. 3DGameStudio
4. TV3D SDK 6.5
5. Leadwerks Engine 2
6. Unity. Contoh game-nya : Tiger Woods PGA Tour Online.
7. DX Studio
8. NeoAxis Engine
9. Visual3D.NET Game Engine
10. Esenthel Engine
Beberapa mesin permainan hanya menyediakan waktu-nyata (real-time), bukan kemampuan render 3D dari beragam fungsi yang diperlukan oleh permainan. Mesin ini mengandalkan permainan pengembang untuk melaksanakan seluruh fungsi ini atau merakit dari komponen middleware permainan lainnya. Mesin jenis ini umumnya disebut sebagai “mesin grafis,” “mesin rendering,” atau “mesin 3D” bukannya yang lebih mencakup istilah “mesin permainan.” Namun, terminologi ini tidak konsisten digunakan sebagai banyak fitur lengkap mesin game 3D disebut hanya sebagai “mesin 3D.” Beberapa contoh dari mesin grafis adalah: RealmForge, Truevision3D, ogre, Crystal Space, Genesis3D, Irrlicht dan JMonkey Engine. Permainan modern atau mesin grafis umumnya memberikan adegan grafik, yang merupakan berorientasi objek representasi dari dunia permainan 3D yang sering menyederhanakan desain permainan dan dapat digunakan untuk rendering lebih efisien dari dunia maya yang luas.


sumber:
http://bocahit.blogspot.com
http://www.creativebrain.web.id
http://febriady.wordpress.com
View full article and comment >>>

Kamis, 03 Maret 2011

STUDI KASUS pada game CANAAN

Nah,lanjutan dari post sebelumnya,agar lebih mengerti,kita lihat studi kaskus pada game canaan.
Coba kamu lihat game canaan disini --> http://www.canaan.web.id/
Nah,saya jelaskan satu persatu ya...
Silahkan menikmati

~~CANAAN~~
Canaan Online? Apa itu?
Sebuah MMORPG dengan platform flash web based game yang FTP alias Free To Play, hanya berbayar pada shop tertentu saja.

TUGAS ARTIST



KARAKTER
Dalam Canaan Online, tersedia 4 character untuk dimainkan yaitu Warrior, Mage, Ranger dan Priest. Karakteristik keempat karakter ini secara singkat ialah sebagai berikut :
- Warrior : Tanker, tipe karakter yang mempunyai defense tinggi namun hit damage tidak terlalu besar
- Mage : Nuker maupun Buff/Debuffer, tipe karakter yang mempunyai hit damage yang sangat tinggi namun lemah dalam defense
- Ranger : Hitter , tipe karakter yang mempunyai hit critical dan akurasi yang tinggi, namun biasa saja di segala hal. Sangat dominan dalam PvP, namun hati-hati dengan Mage
- Priest : Healer maupun Buff/Debuffer, tipe karakter yang sangat diidam-idamkan dalam satu tim/party, karena hanya Priest yang dapat heal dan memberikan magic support (buff/debuff). Sama seperti Mage, Priest lemah dalam pertahanan

Setiap karakter nantinya dapat memilih talent masing-masing,
- Warrior : Mars (Fokus pada serangan), Guard (Fokus pada pertahanan)
Disarankan mengambil talent Guard untuk kepentingan sebuah tim
- Mage : Ace (Balance antara serangan dan Buff/Debuff), Fire (Fokus pada serangan)
Disarankan untuk mengambil Fire agar menjadi Nuker yang dapat diandalkan
- Ranger : Freedom (Fokus pada pertahanan), Rage (Fokus pada serangan)
Keduanya mempunyai kelebihan masing-masing. Dengan freedom, ranger akan sangat sulit dihit, sedangkan dengan rage, ranger akan sangat mudah untuk melakukan hit pada lawan
- Priest : Darkness (Fokus pada buff/debuff), Holy Monster (Fokus pada heal)
Disarankan untuk mengambil Holy Monster agar menjadi Healer yang dapat diandalkan

Tidak hanya karakter (tokoh) orang dari game ini saja,tetapi juga ada Pet atau monster.
Inilah yang menjadi tugas dari ARTIST
Klik aja disini--> class canaan

TUGAS DESIGNER

- GAMEPLAY
Canaan Online juga berfokus pada pembangunan statistik karakter untuk mengalahkan monster, player lain juga guild lain. Battle Systemnya menggunakan system Turn-Based, semakin tinggi tingkat dexterity karakter ataupun monster, maka akan semakin cepatlah mereka mendapatkan turn.


- PET SYSTEM
Tidak seperti dalam game MMORPG lain, dalam Canaan Online, kita dapat memelihara banyak Pet, dan bisa dimainkan sekaligus 3 Pet untuk menemani kita bertarung.
Ada 4 mode yang dipakai untuk memainkan Pet ini,
- Attack : Pada mode ini, Pet ikut bertarung bersama karakter kita dalam menghadapi musuh
- Defense : Pada mode ini, Pet akan menambah sejumlah HP pada karakter tergantung pada HP Pet dan juga level happiness Pet
- Posses : Pada mode ini, Pet akan menambah sejumlah statistik yang mereka punyai, ke dalam statistik karakter dan tergantung pada level happiness mereka
- Rest : Pada mode ini, Pet tidak akan mendapatkan experience dan tidak melakukan apa-apa

Ketika naik level, statistik Pet akan bertambah dengan sendirinya sesuai dengan growth level yang mereka miliki. Setiap Pet juga memiliki tingkat kepintaran masing-masing seperti Regular, Smart, Genius dan lain-lain

Nah,untuk membuat jalur cerita (alur) dan tampilan inilah yang menjadi tugas designer.
Klik aja disini--> fitur canaan

TUGAS PROGRAMMER
Programmer,pastinya yang membuat codingan dari game ini dan bertanggung jawab penuh sampai game ini dapat dijalankan.
Semua hasil yang dikerjakan artist,designer dan composer akan berujung ditangan programmer.Pastinya,programmer menggunakan software dan bahasa pemrograman.

TUGAS COMPOSER
Kualitas suara, Canaan online hanya menyuguhkan 2 jenis track music yaitu saat exploring map dan saat memasuki batlle arena. Belum ada tambahan music, mungkin ke depannya akan bertambah. Sound effect biasa saja, hanya terdapat sound effect pada saat battle, akan terdengar suara-suara magic ataupun pukulan-pukulan.

Nah,cuplikan game ini bisa dilihat disini:


sumber:
valentinus-rk.blogspot.com
canaan.web.id
View full article and comment >>>

Minggu, 27 Februari 2011

KETERKAITAN para profesi dalam pembuatan game




Oke melanjutkan tulisan yang kemarin,sekarang kita bahas tentang keterkaitan para profesi yang ada dibalik layar dalam pembuatan game.

Ditulisan ini,saya akan menjelaskan tahap-tahap membuat game beserta keterkaitan semua profesi,karena setiap tahap pasti ada keterhubungan dari masing-masing profesi.Dan kita perlu ingat,profesi dalam pembuat game merupakan satu kesatuan yang tak dapat dipecahkan.



Tahap-tahap pembuatan game beserta keterkaitan semua profesi:
1. Tentukan Genre Game

"Pertama pikirkan jenis game yang ingin Anda bikin, apakah berjenis, RPG(Role Playing Game) seperti harvest moon, FPS(First Person Shooter) seperti Counter Strike, SPS(Second Person Shooter) seperti 25 To Life, Arcade seperti Riden, Fighting seperti Street Fighter, Racing seperti Need For Speed, atau RTS(Real Time Strategy) seperti Age Of Empire. Disarankan pilihlah jenis game yang sesuai dengan kemampuan yang anda miliki ,mudah dan cepat dalam pembuatannya."

Nah tugas ini merupakan bagian dari Producer.Karena producer bertugas untuk mengarahkan game menjadi seperti apa yang diinginkan

2. Tentukan Tool yang ingin digunakan

"Ini bagian yang terpenting, dengan apakah Anda ingin membuat game tersebut, biasanya game dibuat dengan bahasa pemograman, jika Anda adalah seorang programer maka Anda bisa membuat game dengan bahasa pemograman yang Anda kuasai, tetapi jika Anda adalah orang yang belum begitu menguasai atau sama sekali tidak mengetahui tentang dunia pemograman maka jangan berkecil hati dan jangan menganggap bahwa membuat game dizaman sekarang masih susah, banyak sekali software yang khusus dibuat untuk membuat game dengan genre tertentu, ada software yang menggunakan bahasa pemograman dalam pembuatan game atau sama sekali tidak membutuhkan pemograman dalam pembuatannya, sehingga Anda hanya perlu menggunakan mouse untuk mengatur jalannya game, karakter jagoan, musuh dan beberapa komponen game lainnya, software untuk membuat game sangat membantu Anda dalam membuat sebuah game."

Ok,seperti yang telah kita baca diatas,tugas ini merupakan tugas dari programmer.Karena programmer inilah sang “game maker”,jadi programmerlah yang harus menentukan bagian ini.

3. Tentukan gameplay game

"Gameplay adalah sistem jalannya game tersebut, mulai dari menu, area permainan, save, load, game over, story line, misiion sukses, mission failed, cara bermain dan sistem lainnya harus Anda tentukan, misal dalam sistem save Anda hanya akan membuat pemain bisa mensave permainan jika jagoannya sudah menuju kesebuah lokasi, kemudian ketika meload karakter jagoan akan kembali ketempat area save, atau ketika dalam menu pemain hanya akan mendapat pilihan menu play game, load game, credit dan quit, atau Anda ingin membuat game yang bercerita tentang seorang mahasiswa yang terlibat dalam perang antar geng jalanan dan mencoba untuk keluar dari permasalahan tersebut. Semua sistem yang digunakan dalam game disebut dengan gameplay. Sebisa mungkin buatlah gameplay game Anda enak untuk dimainkan dan tidak menyulitkan pemain sehingga pemain akan nyaman ketika memainkan game Anda."

Selanjutnya bagian ini merupakan jatah untuk Game Designer,Cinematic dan Script And Text Editor.Karena Game designer bertugas untuk mendesign dari game tersebut, apakah game tersebut akan memiliki alur, tipe, dan tampilan yang seperti apa.Cinematic akan membuat game yang dibuat lebih menarik dalam segi alur, tampilan, maupun konsep-konsep lainnya.Dan sang “maestro” (Script And Text Editor) bertugas untuk membuat scenario dari game yang diinginkan. Skrip-skrip tersebut yang nantinya akan dibaca oleh sang game artist.

4. Tentukan grafis yang ingin digunakan

"Jenis grafis secara sederhana dapat dibagi menjadi tiga jenis yaitu jenis kartun, semi realis, atau realis. Pilih jenis grafis yang sesuai dengan kebutuhan game Anda dan sesuai dengan kemampuan Anda, kemudian pilih software apa yang ingin Anda gunakan dalam membuat gambarnya, pilihlah yang Anda anggap paling mudah digunakan"

Nah,tugas ini merupakan bagian untuk Artist.Karena artist harus membuat hero padaa game beserta grafisnya.

5. Tentukan suara yang ingin digunakan

"Tanpa suara akan membuat game Anda kehilangan nilainya, karena itulah pilih suara yang ingin digunakan dalam permainan. Pilihan suara bisa Anda bagi-bagi menjadi beberapa bagian seperti bagian main menu, save menu, load menu, shoot, dead, mission sukses, mission failed, loading dan bagian-bagian lainnya, pemilihan suara yang digunakan harus seirama dengan bagiannya, misal untuk bagian mission failed tidak cocok jika menggunakan musik yang bersemangat, haruslah musik yang mengandung kesedihan untuk didengar sehingga akan membuat pemain makin sedih ketika jagoannya kalah. Kemudian pilih software yang ingin Anda gunakan untuk membuat atau mengedit suara yang akan digunakan dalam game"

Pada bagian ini,merupakan tugas untuk Music Editor (Composer).Seperti yang telah kita baca diatas, pada bagian inilah yang membuat suasana game menjadi real, karena dengan penggunaan dan penempatan suara yang pas dapat membuat game menjadi jauh lebih menarik.

6. Lakukan perencanaan waktu

"Dengan perencanaan waktu akan membuat Anda makin bebas melakukan hal lainnya karena perasaan Anda tidak lagi terganggu dengan game yang belum selesai dibuat, kemudian ketika waktu pembuatan game sudah tiba Anda akan membuat game sesuai dengan urutan waktu yang sudah Anda tentukan sehingga Anda tidak bingung bagian game mana yang belum selesai dikerjakan dan yang sudah selesai dikerjakan. Perencanaan waktu pembuatan sangat baik untuk dilakukan"

Tugas ini merupakan tugas untuk Team Lead.Karena Team Lead bertugas untuk memimpin tim dalam pembuatan game agar tetap kompak dan sesuai dengan konsep yang sudah direncanakan.

7. Proses pembuatan

"Yang terakhir lakukan pembuatan game karena semua komponen yang Anda perlukan sudah disiapkan dari awal, lakukan proses pembuatan berdasarkan waktu yang sudah ditentukan, tidak ada salahnya Anda meminta pertolongan orang lain sehingga akan mempercepat proses pembuatan game Anda."

Tentunya bagian ini dikerjakan secara bersama-sama,seluruh profesi,bekerja dalam satu kesatuan.

8. Lakukan publishing

"Ketika Anda sudah selesai membuat sebuah game, publish game Anda menjadi setup jika game Anda harus diinstal terlebih dahulu sebelum dimainkan atau publish menjadi exe jika game Anda bisa langsung dimainkan tanpa harus menginstalnya terlebih dahulu, metode mempublish tergantung dengan tool yang Anda gunakan untuk membuat game"

Secara hirarki profesi pembuat game seperti ini:
Maka,tentulah,seperti yang kita liat.terdapat keterhubungan disemuanya.Tak dapat dipisahkan dan merupakan satu kesatuan

Sumber:
- bahaskomputer.blogspot.com
- google.com








View full article and comment >>>

Senin, 14 Februari 2011

Game dan Dibalik Layar Pembuatannya




Siapa sih yang sekarang ga tau game??
Pasti semua orang tau game dan pernah memainkannya.
Ga yang muda,yang tua,pasti pernah dan mayoritas pernah kecanduan game (termasuk saya.haha :D)

GAME itu apa ya?
Game adalah sebuah aktivitas rekreasi dengan tujuan bersenang-senang, mengisi waktu luang, atau berolahraga ringan. Permainan biasanya dilakukan sendiri atau bersama-sama.
Dari definisi diatas berarti game itu membuat kita senang,bersemangat,menghilangkan rasa bosan,jenuh,bisa mengisi waktu ketika kita sedang ga ada kerjaan ataupun sedang menunggu.Game berfungsi sebagai olahraga ringan,karena pada game2 yang bergenre strategi,otak kita akan sedikit dirangsang untuk memecahkan teka-teki ataupun cara-cara agar kita bisa memenangkan game tersebut.Setidaknya tidak hanya otak yang berolahraga,tapi jari2 kita juga ikut berolahraga :D




Tapi tau ga sih,dalam game yang kita mainin itu,ternyata melibatkan orang yang sangat banyak.
Yup,itulah yang disebut team and development game.
Team tersebut bekerja dibalik layar mengerjakan profesi masing2 sesuai bidangnya.
Karena,membuat game itu bukanlah hal yang mudah.Butuh kreatifitas tinggi dan membuatnya dengan menarik.
Setelah team sudah terbentuk menjadi team yang solid,Setelah itu baru memulai proyek sebenarnya.
Berikut penjelasan profesi2 dalam team pembuatan game:
- Game Designer
Orang-orang yang bekerja pada bidang ini bertugas untuk mendesign dari game tersebut, apakah game tersebut akan memiliki alur, tipe, dan tampilan yang seperti apa. Biasanya mereka mendesign game tersebut secara berkelompok.
- Producer
Pada divisi ini, mempunyai tugas untuk mengarahkan game menjadi seperti apa yang diinginkan sebelumnya sesuai dengan hasil yang sudah disetujui oleh pihak-pihak yang terlibat dalam pembuatan game.
- Team Lead
Pada bagian ini, bertugas untuk memimpin tim dalam pembuatan game agar tetap kompak dan sesuai dengan konsep yang sudah direncanakan.
- Programmer
Pada bagian inilah sang “game maker” akan bekerja secara kompak untuk membuat sebuah game yang diinginkan. Mereka akan bekerja keras untuk mendapatkan game seperti yang diinginkan sebelumnya, namun saying Game Programmer di Indonesia masih sedikit sekali.
- Script And Text Editor
Pada bagian inilah sang “maestro” bertugas untuk membuat scenario dari game yang diinginkan. Skrip-skrip tersebut yang nantinya akan dibaca oleh sang game artist.
- Cinematic
Pada bagian cinematic ini, orang-orang pada bidang tersebut akan membuat game yang dibuat lebih menarik dalam segi alur, tampilan, maupun konsep-konsep lainnya.
- Artist
Artis pada pembuatan game ini tidak jauh beda dengan artis pada umunya. Artis pada game ini biasanya akan menjadi model dari hero yang ia perankan maupaun mengisi suara dari hero yang ia perankan.
- Music Editor (Composer)
Pada bagian inilah yang membuat suasana game menjadi real, karena dengan penggunaan dan penempatan suara yang pas dapat membuat game menjadi jauh lebih menarik.

Kalo menurut saya sih,dalam team ini harus solid.Harus mampu berkolaborasi dan semangat dalam mengerjakannya.Maka dari itu diperlukan konsep yang menarik,sehingga anggota team termotivasi untuk menyelesaikannya.

Saat ini game yang lagi saya minati adalah viwawa.Hehe :D

Sumber:
- styaaje.wordpress.com






View full article and comment >>>