Pages

Minggu, 28 Maret 2010

Animasi Sederhana dalam Delphi

Untuk membuat animasi sederhana di delphi, kita membutuhkan satu komponen utama yaitu timer. Fungsi dari timer itu sendiri adalah untuk memanipulasi waktu. Oke kita mulai membuat animasi. Kita siapkan satu timer, dan satu label. Perhatikan gambar dibawah ini !



Selanjutnya kita masuk kedalam coding, double click pada timer dan masukkan coding seperti dibawah ini



Sebelum kita menjalankan program jangan lupa kita mendeklarasikan variabel yang di dalam blok var dan deklarasikan juga didalam form tersebut. Berikut cara pendeklarasiannya



Kemudian running program yang telah dibuat dengan menekan tombol F9. maka animasi akan bergerak dari kiri ke kanan dan berkedip dengan warna random



Setelah beberapa detik maka akan berubah seperti gambar dibawah ini. Dan supaya animasi tersebut kedip nya tambah cepat maka pada properties timernya kita ganti interval nya sesuai dengan yang kita ingin kan. Defaultnya yaitu 1000 ms (1detik)





Mudah bukan membuat animasi dalam delphi ?? oke selamat mencoba !!semoga tips ini bermanfaat bagi kita semua. Sampai bertemu di tips selanjutnya

Rabu, 03 Maret 2010

Teknologi Game pada MMORPG

Pada pembahasan kali ini saya akan menjelaskan teknologi yang di gunakan dalam game berjenis MMORPG (Massive Multi-pleyer Online Role-Playing Game) sebagai referensi tugas matakuliah Softskill Pengantar Teknologi Game.

Pertama kali kita harus tahu apa itu MMORPG. Massively Multiplayer Online Role-Playing Game (MMORPG) adalah suatu jenis permainan yang berbasis dari konsep permainan Role Playing Game (RPG) yang bisa kita mainkan di berbagai tempat dan berbagai waktu oleh bayak pemain. Game MMORPG secara umum berlandaskan perjalanan kehidupan dari sebuah karakter yang dimainkan oleh player atau pemain. Pemain MMORPG dari suatu tempat harus bisa melihat dunia yang sama dengan dunia yang dilihat dari sudut pandang pemain lain.

Game bertipe massivemulti player membawa fenomena baru dalam dunia game saat ini, kadang untuk memainkan game ini dibutuhkan server dalam jumlah yang besar yang nantinya mampu menangani pertukaran data yang terjadi, karena pada game ini memiliki skala jaringan pada Internet.
Dapat kita bayangkan kita betah berjam-jam untuk memainkan game ini. Ini dikarenakan game ini memiliki beberapa karakter, skenario, dan dapat berinteraksi antar pemain satu dengan yang lainnya.

Pada game ini biasanya menggunakan beberapa software pendukung seperti untuk membuat animasi seperti C/C++, flash, renpy, ruby dan masih banyak yg lainnya.

Dibawah ini akan di tampilkan bagaimana bagan untuk membuat sebuah game :


1. Yang harus kita lakukan pertama kali adalah membuat sebuah konsep dasar dari game yang akan kita buat. Bisa berupa pemikiran-pemikiran yang nantinya akan kita tuangkan kedalam sebuah media.

2. Kita tentukan jalan cerita didalam game yang akan kita buat, biasanya game MMORPG mengambil jalan cerita dari sebuah perjalanan hidup sang karakter tersebut.

3. Kemudian kita tentukan karakter yang akan kita tampilkan nantinya didalam game ini. Karakter ini kita dapat membuat interface nya dengan menggunakan software-software khusus animasi atau 3D seperti 3D-Max, 3D Studio, RenPy dan masih banyak yang lain.

4. Selanjutnya kita tentukan latar yang kita gunakan pada game ini. Misalkan game ini bercerita tentang peperangan abad pertengahan Eropa dan sebagainya.

5. Setelah kita selesai membuat alur diatas, pastinya kita memerlukan background music pada game ini. Tidak akan menarik sebuah game tanpa adanya musik yang menjadi ciri khas game tersebut. Kita pilih musik yang sesuai dengan latar game tersebut.

6. Selanjutnya kita gambar model-model yang bersangkutan. Seperti karakter, objek benda mati dan lain sebagainya dengan menggunakan software pengolah gambar.

7. Kemudian kita tentukan irama gerakan yang akan kita gunakan, maksudnya seperti cara berjalan atau berlari karakter, gerakan-gerakan khusus pada karakter. Seperti tertawa, menangis bahkan marah.

8. Setelah ke 7 tahap selesai kita buat, maka masuklah ke dalam proses inti dari sebuah pembuatan game. Yaitu pembuatan programnya untuk dapat menjalankan game ini. Program yang di gunakan dapat berupa software pemrograman biasa ataupun yang khusus untuk pembuatan game. Seperti C/C++, Ruby, Phyton, Java dan lain-lain.

9. Setelah program selesai dibuat, maka masuklah kepada tahap testing atau percobaan game. Ini dimaksudkan untuk mengetahui apakah game yang dibuat sudah benar-benar sempurna atau masih terdapat bug-bug di bagian tertentu.

10. Setelah dicoba ternyata game berhasil dibuat dan tidak ada bug lagi, maka akhir hasilnya berupa game itu sendiri, dan siap untuk dimainkan.

Contoh dari game MMORPG




Pandora Saga Online merupakan sebuah MMPORPG fantasi 3D yang dikisahkan berada dalam dunia mistik pada abad pertengahan Eropa. Game ini diterbitkan oleh GonzoRosso dari negara Malaysia. Dengan menggunakan grafik 3D yang sangat halus yang dapat memanjakan para gamers dalam memainkan game ini.

Didalam game ini tidak menggunakan save, load and quit. Semua kegiatan di dalam game ini akan otomatis langsung tersimpan di dalam server yang memiliki kapasitas sangat besar. Jadi player tidak perlu save atau load apabila ingin memainkan atau keluar dari game ini. Yang perlu diperhatikan player harus Log Out apabila ingin keluar dari game ini. Agar sistem dalam server dapat bekerja dengan baik. Apabila player langsung menekan Alt + F4, hal ini akan memberatkan sistem pada server yang nantinya bisa berdampak pada kerusakan sistem.

Pada game MMORPG ini menggunakan RPG Maker (R.M.) sebagai software pembuat game ini.

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.

Sekian penjelasan teknologi game pada MMORPG, semoga bermanfaat untuk semua...

Minggu, 10 Januari 2010

Hajat Desa Kampung Maleber Kuningan - Jawa Barat


Di sebuah desa dikabupaten Kuningan Jawa Barat, tepatnya Dusun 1 Cinangka dekat Pasar Maleber terdapat sebuah tradisi yang sudah ada sejak lama dan sampai sekarang masih terus berlanjut. Tradisi tersebut sering dikenal dengan “Hajat Desa”. Hajat Desa ini merupakan kegiatan rutin yang dilakukan oleh masyarakat sekitar pada tanggal 1-2 Syawal untuk memperingati Hari Raya Idul Fitri. Hajat Desa ini intinya merupakan sebuah acara Khitanan Massal anak-anak di desa tersebut. Uniknya pada khitanan ini adalah setiap peserta khitan harus menggunakan kostum yang bertemakan tentang kebudayaan sekitar. Dan akan diarak mengelilingi desa dengan menggunakan delman atau istilah lain dengan Ngencar. Ngencar sendiri merupakan kegiatan mengarak anak sunat keliling desa dengan menggunakan delman atau andong.

Malam sebelum diadakannya acara ini yaitu dimulai dengan khataman Al-Qur’an oleh para peserta khitan yang dimulai dari ba’da isya sampai dengan selesai. Di tempat lain, tepatnya di balai desa atau didekat masjid diadakan Kosidahan yang bertujuan sebagai rasa syukur kita kepada Allah SWT. Dan di pinggir jalan terdapat para pedagang kaki lima yang berjualan dari Pasar Maleber hingga ke alun-alun desa.

Selain kosidahan juga terdapat pertunjukan drama oleh pemuda-pemuda sekitar desa. Yang pada saat itu mengangkat tema tentang “Kekayaan Alam Indonesia. Acara pada malam tersebut berakhir pada pukul 24.00. Kemudian dilanjutkan dengan acara inti pada esok harinya.

Keesokan harinya pada hari ke-2 setelah lebaran yaitu akan diadakan acara Ngencar yang tadi telah dijelaskan diatas. Sebelum itu para peserta khitan akan didandani layaknya seorang wayang orang, ustadz, pahlawan kemerdekaan dan lain-lain sebelum diarak mengelilingi desa. Dan uniknya disini peserta khitan akan diarak dengan diiringi pawai dari kreativitas pemuda desa. Seperti traktor dari kardus, tank dari triplek dan lain lain. Dan pengunjung sekitar juga dapat menikmati arak-arakan ini hanya dengan menyewa delman dengan harga relatif antara Rp 100.000,- sampai Rp 150.000,- atau tergantung negosiasi pengunjung dan kusir. Namun anda harus memesan delman tersebut jauh-jauh hari, karena biasanya delman tersebut disewa oleh para pengunjung pada 1 bulan sebelum acara diadakan. Atau anda tidak akan dapat menyewa delman tersebut.

Keesokan harinya pada hari ke-3 setelah lebaran yaitu akan diadakan acara inti berupa Khitanan Massal. Semua peserta khitan akan dikhitan secara massal disuatu tempat. Seperti inilah Kegiatan Kemasyarakatan atau Kebudayaan masyarakat sekitar yang disebut dengan Hajat Desa dan hingga kini masih berlangsung.


Gambar diatas merupakan kegiatan pada malam sebelum acara inti diadakan. Yaitu kosidahan ibu-ibu pengajian pada alun-alun desa


Gambar diatas merupakan kreativitas pemuda-pemuda desa berupa replika kendaraan untuk mengarak peserta khitan mengelilingi desa


Gambar diatas memperlihatkan para pengunjung yang ikut mengarak peserta khitan dengan menaiki delman yang telah disewa sebelumnya


Gambar diatas adalah gambar rombongan para peserta khitan yang sedang diarak mengelilingi desa dengan menggunakan delman

Demikian sekilas tentang Kebudayaan masyarakat Desa Maleber yang tiap tahunnya diadakan. Artikel ini ditujukan untuk tugas kuliah yaitu Soft skill. Terima Kasih telah menyempatkan waktunya untuk membaca artikel ini.

Rabu, 06 Januari 2010

MUSE - Undisclosed Desires

I know you've suffered
But I don't want you to hide
It's cold and loveless
I won't let you be denied

Soothing
I'll make you feel pure
Trust me
You can be sure

I want to reconcile the violence in your heart
I want to recognise your beauty's not just a mask
I want to exorcise the demons from your past
I want to satisfy the undisclosed desires in your heart

You trick your lovers
That you're wicked and divine
You may be a sinner
But your innocence is mine

Please me
Show me how it's done
Tease me
You are the one

I want to reconcile the violence in your heart
I want to recognise your beauty's not just a mask
I want to exorcise the demons from your past
I want to satisfy the undisclosed desires in your heart

Please me
Show me how it's done
Trust me
You are the one

I want to reconcile the violence in your heart
I want to recognise your beauty's not just a mask
I want to exorcise the demons from your past
I want to satisfy the undisclosed desires in your heart

Contoh Rotasi 3D dengan Pelles C

#include
#include
#include
#include
#include

void mulaiOpenGL(void);

int main(void)
{
//
// mRunning = TRUE, aplikasi masih berjalan
// mRunning = FALSE, ??? :p
GLuint mRunning = GL_TRUE;

//
// inisialisasi GLFW
if( glfwInit() == GL_FALSE )
{
MessageBox( NULL, "ERROR :: gagal menginisialisasi GLFW", "Error!", MB_OK);
return(0);
}
//
// buat sebuah window yang akan digunakan untuk menggambar.
if( glfwOpenWindow( 640, 480, 0, 0, 0, 0, 24, 0, GLFW_WINDOW ) == GL_FALSE )
{
MessageBox( NULL, "ERROR :: gagal membuat window", "Error!", MB_OK );
glfwTerminate();
return(0);
}
//
// Set judul yang ada di window dan Swap interval.
glfwSetWindowTitle( "Praktikum Grafik Komputer LabTI" );
glfwSwapInterval( 1 );
//
// mulai OpenGL (melakukan setting awal OpenGL)
mulaiOpenGL();
//
// mulai looping utama program

float putar=1.0f;

while( mRunning )
{
//
// bersihkan layar dan depth buffer
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glLoadIdentity();

glTranslatef(0.0f,0.0f,-20.0f);
glRotatef(putar,1.0f,1.0f,0.0f);
//
// lakukan penggambaran di sini
//------------------------------------------------------------------------------------
glBegin(GL_QUADS);
//Kubus
glColor3ub(250,200,150);
//depan
glVertex3f(-3.0f,3.0f,3.0f);
glVertex3f(3.0f,3.0f,3.0f);
glVertex3f(3.0f,-3.0f,3.0f);
glVertex3f(-3.0f,-3.0f,3.0f);

//belakang
glVertex3f(-3.0f,3.0f,-3.0f);
glVertex3f(3.0f,3.0f,-3.0f);
glVertex3f(3.0f,-3.0f,-3.0f);
glVertex3f(-3.0f,-3.0f,-3.0f);

glColor3ub(200,100,120);
//kiri
glVertex3f(-3.0f,3.0f,3.0f);
glVertex3f(-3.0f,-3.0f,3.0f);
glVertex3f(-3.0f,-3.0f,-3.0f);
glVertex3f(-3.0f,3.0f,-3.0f);

//kanan
glVertex3f(3.0f,3.0f,3.0f);
glVertex3f(3.0f,-3.0f,3.0f);
glVertex3f(3.0f,-3.0f,-3.0f);
glVertex3f(3.0f,3.0f,-3.0f);

glColor3ub(150,180,120);
//atas
glVertex3f(-3.0f,3.0f,3.0f);
glVertex3f(3.0f,3.0f,3.0f);
glVertex3f(3.0f,3.0f,-3.0f);
glVertex3f(-3.0f,3.0f,-3.0f);

//bawah
glVertex3f(-3.0f,-3.0f,3.0f);
glVertex3f(3.0f,-3.0f,3.0f);
glVertex3f(3.0f,-3.0f,-3.0f);
glVertex3f(-3.0f,-3.0f,-3.0f);
glEnd();

if(glfwGetKey(GLFW_KEY_ENTER)) putar-=0.5f;
if(putar>360.0f)putar=0.0f;


//------------------------------------------------------------------------------------
//
// tampilkan ke layar (swap double buffer)
glfwSwapBuffers();

//
// check input , apakah tombol esc ditekan atau tombol "close" diclick
mRunning = !glfwGetKey( GLFW_KEY_ESC ) && glfwGetWindowParam( GLFW_OPENED );
}

glfwTerminate();
return(0);
}

void mulaiOpenGL(void)
{
//
// Set viewport ke resolusi 640x480 viewport bisa diibaratkan
// layar monitor anda
glViewport( 0, 0, 640, 480 );
//
// Set mode OpenGL ke mode pryeksi (Projection) dan set proyeksi
// menggunakan proyeksi perspective, dengan sudut pandang (Field Of
// View) 60 derajat
glMatrixMode( GL_PROJECTION );
glLoadIdentity();
gluPerspective( 60.0f, 640.0f/480.0f, 0.1f, 1000.0f );

glMatrixMode( GL_MODELVIEW );
glLoadIdentity();
//
// Set mode gradasi warna halus (Smooth)
glShadeModel( GL_SMOOTH );
//
// warna yang digunakan untuk membersihkan layar
glClearColor( 0.0f, 0.0f, 0.0f, 0.0f );
//
// nilai untuk membersihkan depth buffer.
glClearDepth( 1.0f );
//
// Depth test digunakan untuk menghindari polygon yang
// tumpang tindih.
glEnable( GL_DEPTH_TEST );
glDepthFunc( GL_LEQUAL );
//
// beritahu OpenGL untuk menggunakan perhitungan perspective
// yang terbaik (perhitungan ini tidak bisa selalu 100% akurat)
glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST );
}


NB : pada saat running program tekan ENTER untuk melihat perubahan rotasi nya