Selasa, 25 Juni 2013

INTERACTIVE SYSTEM

Pada kesempatan kali ini saya akan menjelaskan tentang konsep dari interactive entertainment dimana konsep ini akan membuat suatu hasil atau produksi yang bernilai hiburan yang dapat di rasakan oleh pengguna secara langsung. Di dalan Konsep interactive entertainment ini , biasanya terdapat kombinasi teks , gambar, suara, serta efek animasi dan video yang di buat untuk mempermudah pengguna dalam mendapatkan informasi  

Interactive programing 
  Interactive programming merupakan prosedur penulisan sisi dari suatu program saat telah aktif. ini fokus pada teks program sebagai antarmuka utama untuk sistem yang jalan, bukan hanya sesuatu aplikasi interaktif, dimana program ini dirancang dalam fase pengembangan serta untuk dipakai sesudahnya. Dalam hal ini peranan pengguna  dalam pengembangan program sangatlah penting karena pengguna sebagai konsumen yang menikmati dari produk yang di buat, biasaya sebelum pembuatan program  seorang progamer harus mengerti akan kebutuhan pasar yang di dasari atas permintaan. Bila seorang seorang programmer telah mengetahui kebutuhan konsumen , langkah selanjutnya adalah bagaimana caranya agar Komunikasi antara user dan program akan terwujud ?  yaitu dengan cara menentukan dan merancang GUI.

GUI ( Graphical User Interface )
GUI merupakan fasilitas komunikasi antara user (pengguna) dengan system/aplikasi pada computer, GUI adalah perangkat pertama untuk mengendalikan fungsi-fungsi suatu software, dan membuat pengguna mudah untuk memahami bagaimana menggunakan software tersebut. Kita dapat mengasumsikan bahwa GUI merupakan sebagai bagian dari suatu software yang pertama kali ditangkap mata (secara interface). Dimana suatu software akan kelihatan bagus, jika GUI tersebut tampak menarik. Hal ini termasuk untuk GUI sistem pengenal suara,GUI ini diperlukan agar orang awam mudah dalam mempelajari dan menggunakan sistem tersebut. Untuk lebih kenal dekat dengan GUI, anda dapat perhatikan pada komputer masing-masing yang mana telah dibalut oleh GUI. Contoh saja Sistem Operasi Windows anda atau pun Linux, memiliki tampilan yang disesuaikan dengan cara penggunaan sistem. Berikut ini salah satu sreenshoot dari Sistem Operasi Windows 7 yang juga dibangun dari komponen GUI.      

Dari pemahaman tentang GUI sebelumnya, fungsi-fungsi GUI dalam dunia teknologi dan informasi saat ini sangat beragam. Berikut beberapa fungsi dari penggunaan GUI dalam dunia Iptek khususnya komputer :
(1). Pointing device dengan perangkat berupa mouse
(2). Memiliki fungsi sebagai plug and play, yang mana memudahkan user dalam menginstall dan uninstall hardware/sofware (sinkronisasi)
(3). Membuat software-software yang menuntut aplikasi dalam komputer user yang dapat digunakan untuk kegiatan user dalam proses seperti menulis text, spreadsheet. sound, graphic dan lain-lain
(4). Untuk digunakan dalam pembuatan System Operasi sebagai User friendly dan ergonomis
(5). Pembuatan website
(6). Opensource software/hardware atau pengembang aplikasi-aplikasi skala besar lainnya.

Komponen-Komponen dari GUI

  • Containers : merupakan wadah yang berfungsi untuk menempatkan komponen-komponen lain di dalamnya.
  • Canvas.: merupakan komponen GUI yang berfungsi untuk menampilkan gambar atau untuk membuat program grafis. Dengan canvas, kita bisa menggambar berbagai bentuk seperti lingkaran, segitiga, dll.
  • User Interface (UI) components : contohnya adalah buttons, list, simple popup menus, check boxes, text fields, dan elemen lain.
  • Komponen pembentuk window : seperti frames, menu bars, windows, dan dialog boxes. 

Label :
 Combo Box :

List :
 Radio Button :

Text Area :
  
Text Field :
  
Berikut ini adalah contoh – contoh layout pada GUI :

Border Layout merupakan default manager untuk ContentPane. Layout ini menempatkan komponen dengan pendekatan arah mata angin. Komponen-komponen pada layout ini ditempatkan pada posisi north, south, west, center, east. 
Flow Layout
FlowLayout adalah layout yang menyusun komponen dari kiri ke kanan, selanjutnya ke baris berikutnya. Jika ukuran windows diperbesar ukuran komponen pada FlowLayout tidak berubah.
  
  
Box Layout
 Card Layout 
  
Event adalah peristiwa atau kejadian yang dibangkitkan atau distimulasi oleh pengguna terhadap GUI. Untuk mendeteksi dan menangani apa yang dilakukan oleh pengguna terhadap GUI, diperlukan suatu mekanisme yang disebut Event Handling.
macam event untuk komponen GUI  :
  • Event Source
Komponen GUI yang membuat event atau tempat terjadinya event.yaitu berupa komponen-komponen visual, seperti : button, combo box, text field.
  • Event Model
Interaksi antara user dan komponen GUI untuk mendeskripsikan bagaimana program merespon interaksi user. Bagian-bagian pentingnya yaitu event source dan event listener / Handler.
  • Event Object
Ketika sebuah event terjadi (ketika user berinteraksi dengan komponen GUI) sebuah object event diciptakan. Object berisi semua informasi yang perlu tentang event yang telah terjadi. Informasi meliputi tipe dari event yang telah terjadi, seperti ketika mouse telah di-klik. Ada beberapa class event untuk kategori yang berbeda dari user action. Sebuah event object mempunyai tipe data mengenai salah satu dari class ini. Objek yang terbentuk saat terjadi event yaitu ketika user berinteraksi dengan komponen GUI. Seperti: tekan button, ketik di text field, dll.
  • Event Listener
Objek penerima & pengolah event. Menerima dan menangani event, mengandung business logic. Contoh: menampilkan informasi penting ke user, melakukan komputasi matematis, dan lain sebagainya.
  • Event Handler         
Event Handler berupa blok method dari listener yang menentukan proses selanjutnya setelah komponen mendapatkan event. Misalkan pada event tombol simpan ditekan, event listener akan menangkap event pada Event Source tombol Simpan, kemudian Event Handler akan menyimpan data yang akan didefenisikan pada blok Event Handler. 
  

Jumat, 10 Mei 2013

Tugas SoftSkill 2


Pada kesempatan kali ini saya mendapat tugas kembali dari mata kuliah softskill "Pengantar Teknologi Gmae".

1. Apa itu “Shading” ???

- Shading adalah efek pencahayaan, bagaimana warna serta kecerahan dari permukaan bervariasi karena pencahayaan. Ada 3 teknik dalam shading yaitu

Flat (facet) : teknik ini baguas digunakan untuk objek yang data ataupun melengkung karena teknik ini bergantung pada banyaknya polygon

Gouraud : teknik ini lebih baik disbanding teknik flat karena Nilai intensitas untuk tiap polygon disesuaikan dengan poligon lain yang bersebelahan untuk mengurangi discontinuity

Phong : teknik ini model pencahayaan diterapkan pada semua titik pada permukaan Memberikan highlight yang lebih realistik dan mereduksi efek Machband.
Kemudian selanjutnya saya akan menjelaskan mengenai pemetaan ( mapping ). Dibawah ini adalah penjelasannya : 

2. Apa itu mapping ??

- Mapping merupakan proses dimana 2 model gambar di buat sebuah link ( hubungan) di antara 2 model gambar tersebut di definisikan. Model data dapat berupa sebuah atomic grafik dari suatu gambaran besar grafik dalam hal semantik dan telekomunikasi, biasanya mapping di buat sebagai perencanaan sebelum gambaran besar di buat.

Jenis – jenis mapping :

- Wide map
Pembuatan mapping dengan jangkauan view yang luas.
- Short map
Pembuatan map dengan pandangan view yang kurang luas tapi masih bisa di bilang sempit, tergantung dengan objek yang akan di buat, semakin banyak objek yang di buat maka proses mapping akan semakin lama.
- Medium map
Pembuatan mapping dengan memikirkan antara keditail an suatu objek tapi kurang memperhatikan penempatan objeknya 

Rancangan Game sederhana dengan menggunakan Flash Player ("Pemburu Harta") :

Sedikit mengenai game :
a. Membuat game side scrolling yang ber-genre action game dan dapat dimainkan melalui PC.
b. Merancang gameplay yang menarik dan menghibur. Selain itu juga
merancang tingkat kesulitan dalam game yang dapat memberikan tantangan
bagi user.
c. Merancang game side scrolling yang mengandung unsur sejarah dan budaya
Indonesia, dan membuat sebuah alur cerita yang menarik dan menghibur bagi
user.
d. Game dirancang untuk dimainkan dengan menggunakan kontrol mouse dan
keyboard.

Story Game :
Kelompok :
- Hasan
- Rendy Bastian

Sumber :

http://myrahma.blogspot.com/2010/02/grafik-komputer-realisme.html

http://vytha18.blogspot.com/2011/02/grafkom-smstr-5.html

Scan Conversion

TUGAS SOFTSKILL I

Scan Conversion
Scan Conversion merupakan metoda untuk memetakan titik ke dalam suatu pixel. Scan Conversion dapat dilakukan terhadap Line (garis), polygon, ataupun garis lengkung (kurva).

Tugas
1. Sebutkan algoritma untuk menggambar garis!

 Konversi Scan Garis (line): 
  • Algoritma DDA, adalah suatu algoritma (pendekatan) pengkonversian suatu himpunan pixel–pixel menjadi suatu garis yang didasari atas perhitungan delta(x) dan delta(y);
  • Algoritma Bresenham merupakan suatu algoritma (pendekatan) yang dikreasikan oleh Bresenham yang tidak kalah akurat dan efisien dengan algoritma primitif lainnya (seperti DDA), bagian pengkonversian (scan–konversi) garis akan melakukan kalkulasi untuk penambahan nilai–nilai integer (yang dibutuhkan untuk membentuk garis) yang disesuaikan dengan tipe grafik yang dipakai oleh layar komputer.
  • Algoritma midpoint merupakan algoritma pembuatan garis dan kurva dengan dasar operasi bilangan integer yang menonjolkan ciri kecepatan. Sehingga algoritma ini dapat dipakai sebagai algoritma pembuatan grafik yang menuntut kecepatan sebagai hal yang diutamakan.

2. Berikan satu (1) algoritma untuk menggambar garis!

Contoh prosedur algoritma DDA dengan menggunakan bahasa C :

Void Line (int xa, ya, xb, yb,xpix, ypix;
Float x, y)
{
int step, k;
float dx = xb – xa, dy = yb-ya, x_increment, y_increment;
x = xa;
y = ya;
if (abs(dx)>abs(dy)) step=abs(dx;
else step = abs(dy);
setPixel(x, y);
for (k=0; k < step; k++)
{
x+=x_increment;
y+=y_increment;
setPixel (round(x),round(y));
}
};


3. Yang harus diperhatikan dalam menggambar garis:
  •  Ketebalan garis (thickness) dan
  •  Bentuk tepi garis (ends): Butt, Round, dan Square.
Berikan contoh gambar garis dengan bentuk tepi Butt, Round, dan Square!

Berdasarkan tebalnya ada dua macam yaitu garis tebal dan garis tipis dengan perbandingan 1 : 0.5. Pada umumnya tebal untuk garis tebal adalah 0.5 mm atau 0.7 mm. Dengan jarak minimum antara garis sejajar ( termasuk garis arsiran ), tidak boleh kurang dari tiga kali tebal garis yang paling tebal.

       Type round












Tipe garis round merupakan tipe garis yang mebentuk sebuah lingkaran

          Type square















Tipe garis square merupakan tipe garis yang membentuk sebuah persegi.

4. Penggabungan garis (Joining): Ugly, Bevel, Round, Miter.
    Berikan contoh gambar penggabungan dua garis dengan tipe Ugly, Bevel, Round, dan Miter.
  • Ugly Join : Penggabungan dua buah garis yang memilik sudut lebih kedalam.
  • Bevel : Penggabungan dua buah garis yang memiliki sudut lebih menonjol.
  • Round : Penggabungan dua buah garis yang memiliki sudut lebih melingkar. 
  • Miter : Penggabungan dua buah garis yang memiliki sudut lancip.



Transformations

Transformation adalah suatu metoda untuk mengubah lokasi titik. Operasi-Operasi Primitive pada Transformations terbagi menjadi:
  • Scale
  • Rotate
  • Shear
  • Flip
  • Translate
Tugas

5. Berikan contoh:
    a. Satu gambar objek.












b.Pengertian Scale,Rotate,Shear,Flip,Translate,dan Rotasi
Hasil transformasi objek tersebut yang ditransformasikan dengan Scale, Rotate, Shear, Flip, Translate, dan Rotasi

- Scale adalah skala pengali sama untuk semua komponen










- Rotate/Rotasi
Rotasi terhadap titik (0,0) sebanyak 450










- Shear
shear terhadap sumbu y













- Flip
Flip terhadap sumbu x
 


















-Translate
(tx,ty) disebut vector Translasi









6. Apakah perbedaan antara Linear Transformation dan Non-Linear Transformation?
Model linier menunjukkan hubungan antara dua variabel mengikuti garis lurus. Sedangkan non linier mengikuti garis yang tidak lurus, misalnya kuadratik (garisnya melengkung ke atas lalu turun ke bawah).  Dalam transformasi linear, metoda pengubahan lokasi titik dilakukan secara teratur, dan membentuk semacam pattern. Misalnya dalam grafik 2 dimensi, transformasi linear melakukan penambahan atau pengurangan garis lurus secara teratur. Contoh transformasi linear :






Sedangkan transformasi non linear adalah metoda pengubahan lokasi titik yang tidak dilakukan secara teratur. Dalam grafik, pengurangan atau penambahan garis yang dilakukan tidak akan membentuk sebuah pattern yang teratur. Contoh transformasi non linear :

7. Berikan contoh Linear Transformation dan Non-Linear Transformation dari Operasi-Operasi Primitive transformation!Linear Transformation



 















Non Linear Transformation












8. Apakah perbedaan antara Geometric Transformation dan Color Space Transformation?Perbedaannya adalah, dalam transformasi geometric perubahan titik lebih memfokuskan pada bentuk dari objek yang berubah tersebut. Sedangkan Color space transformation lebih menitik beratkan pada perubahan warna dari titik-titik pixel tersebut.


9. Apakah yang dimaksud dengan Koordinat Homogen (Homogeneous Coordiantes)?Transformasi Koordinat, yang diubah system koordinatnya sehingga objek mengalami transformasi dikarenakan perubahan system koordinat tersebut.


PROYEKSI
Proyeksi merupakan salah satu jenis transformasi, yaitu transformasi koordinat. Proyeksi pada bidang
datar (planar) dilakukan melalui sinar proyeksi yang muncul dari titik pusat proyeksi melewati setiap titik
dari benda dan memotong bidang proyeksi (projection plane) untuk mendapatkan benda hasil proyeksi.
Proyeksi Planar (Planar Geometric Projections) dibedakan menjadi:
1.    Proyeksi Paralel.
Berdasarkan hubungan antara arah proyeksi dengan vektor normal dari bidang proyeksi, proyeksi paralel dibedakan menjadi:
1.  Orthographic à Proyeksi orthographic ada yang disebut proyeksi axonometric. Proyeksi Axonometric dibedakan menjadi proyeksi:

  • isometric
  • dimetric
  • trimetric.
2. Oblique.

2.    Proyeksi Perspektif.
Perbedaan antara proyeksi parallel & perspektif adalah: pada proyeksi parallel jarak antara titik
pusat proyeksi ke bidang proyeksi tidak terhingga, sementara para proyeksi perspektif jarak antara
titik pusat proyeksi ke bidang proyeksi bersifat infinite (tertentu).

Tugas

10.    Berikan penjelasan mengenai Proyeksi Orthographic?
Proyeksi Orthographic diperoleh apabila sinar proyeksi tegak lurus dengan bidang proyeksi.
Proyeksiorthographic sering digunakan untuk menghasilkan tampak depan, tampak belakang,
tampak samping dan tampak atas dari sebuah benda atau disebut sebagai Multiview
orthographic. Tampak atas, tampak belakang dan tampak dari samping sebuah benda sering
disebut sebagai elevation. Sedangkan tampak dari atas disebut sebagai plan view.

Transformasi untuk proyeksi multiview orthographic dapat diperoleh dengan rumus:
Proyeksi terhadap bidang x-z:qx = px,qy =pz
Proyeksi terhadap bidang y-z:qx = px,qy =pz
Proyeksi terhadap bidang x-y:qx = px,qy =py

-
 - Proyeksi orthographic yang menampakan lebih dari satu permukaan benda disebut sebagai proyeksi axonometric

 - proyeksi axonometric dilakukan dengan mengatur agar bidang proyeksi berpotongan dengan ketiga
 - sumbu koordinat (principal axes) pada sudut yang sama maka kita akan memperoleh proyeksi isometric
-- proyeksi dimetric yaitu proyeksi yang diperoleh dengan mengatur agar bidang proyeksi berpotongan dengan dua sumbu utama pada sudut yang sama
-- proyeksi trimetric diperoleh apabila ketiga sumbu utama berpotongan dengan bidang proyeksi pada sudut yang berbeda



11. Berikan penjelasan mengenai Proyeksi Perspective?

Proyeksi perspektif memberikan sudut pandang yang lebih realistis dibandingkan proyeksi orthographic.
Proyeksi perspektif pada kenyataannya jarak benda terhadap kita akan mempengaruhi bagaimana
benda tersebut terlihat. Benda yang terlihat jauh akan kelihatan kecil sedangkan benda yang dekat akan
terlihat lebih besar. Efek ini disebut sebagai shortening. Padaperspektif semua garis menghilang pada
satu atau lebih titik yang sama atau disebut titik hilang (vanishing point).

Secara umum garis perspektif bisa diartikan penggambaran ruang 3 dimensi dam bidang gambar 2
dimensi dimana garis dalam gambar menjelaskan keberadaan jauh dekat , besar kecil sebuah benda
sebagai object dalam sebuah penggambaran.

Macam-macam proyeksi perspektif Dalam gambar teknik, yaitu :
  • Perspektif Satu Titik Hilang (one point perspective)
Sistem perespektif ini digunakan untuk menggambar obyek (benda) yang terletak relatif dekat dengan
mata. Karena letak obyek yang cukup dekat, akibatnya mata memiliki sudut pandang yang sempit,
sehingga garis-garis batas benda akan menuju satu titik lenyap saja, kecuali bila sejajar dengan horizon
dan tegak lurus terhadapnya. Gambar yang demikian sering disebut dengan paralel perspective sebab
banyak menggunakan garis-garis bantu yang sejajar horizon dan vertikal.








  • Perspektif Dua Titik Hilang (two point perspective)
Sistem gambar ini digunakan untuk menggambarkan benda-benda yang letaknya relatif jauh dan letaknya tidak sejajar (serong) terhadap mata pengamat. Karena posisi pengamat jauh dengan obyek maka sudut pandang mata melebar, akibatnya garis-garis batas benda akan menuju titik lenyap sebelah kiri dan kanan. Gambar ini banyak digunakan untuk desain eksterior.





  • Perspektif Tiga Titik Hilang (three point perspective) Gambar perspektif ini muncul akibat benda/obyek yang diamati jauh di bawah atau ke atas horizon. Oleh karenanya sudut pandang mata melebar ke segala arah. Perspektif ini banyak digunakan untuk menggambar arsitektur bangunan yang serba tinggi.
12.    Berikan contoh gambar dua proyeksi tersebut!
Proyeksi orthographic
Proyeksi Perspektif

13. Buatlah tabel perbandingan diantara dua proyeksi tersebut!

Perbandingan dari proyeksi  Orthographic dan perspektive adalah kalau Orthographic sinar proyeksi tegak lurus dengan bidang proyeksi dan perspektive sudut pandang yang lebih realistis dibandingkan proyeksi orthographic. Proyeksi perspektif pada kenyataannya jarak benda terhadap kita akan mempengaruhi bagaimana benda tersebut terlihat. Benda yang terlihat jauh akan kelihatan kecil sedangkan benda yang dekat akan terlihat lebih besar

Referensi :
http://cewexniez.blogspot.com/2013/04/pengantar-teori-game_12.html
http://mirmayf.staff.gunadarma.ac.id/Downloads/files/18155/konversi-scan.pdf
http://dc390.4shared.com/doc/VCBHNziw/preview.html
http://3ka01-kurma.blogspot.com/2010/10/algoritma-membuat-garis-dengan-cara-dda.html
http://xa.yimg.com/kq/groups/23340420/1672766938/name/Pertemuan13.pdf
http://belangtelon.blogspot.com/2011/01/3-macam-proyeksi-perspektif.html
http://sadchalis15.wordpress.com/2012/01/10/proyeksi-grafika-komputer/






Minggu, 02 Desember 2012

ERD (Entity Relationship Diagram) PT. Furniture

Pada tulisan saya kali ini akan membahas mengenai ERD (Entity Relationship Diagram) dari perusahan PT. Furniture. Saya akan menjelaskan ringkasannya saja, karena sebelumnya materi ini telah di bahas di kelas 3IA07 dengan bimbingan dosen Sistem Basis Data yaitu Ibu Riza. Tulisan ini juga merupakan lanjutan tugas yang diberikan oleh beliau. Sebelum masuk pada pokok bahasan, saya ingin memberitahu anggota kelompok saya yang telah berpastisipasi dalam pembuatannya :
- Ledy Sri Rejeki
- Ayu Fitriyanti
- Rina Ravela Susantika
- Hasanul Cholid
- Rizanuary Fauzi

Pada ERD PT. Furniture ini memiliki 5 Entity :





Dari kelima Entity di atas masing-masing memiliki atribut dengan 1 atribut sebagai primary key.















Dengan Kelima Entity tersebut di atas beserta atributnya dihubungkan dengan Relationship sehingga terbentuk sebuah diagram (ERD) dari perusahaan PT. Furniture.
Berikut gambar yang lebih jelasnya :



Dengan Mennggunakan ERD memudahkan kita dalam membangun sebuah sistem yang terintegrasi dan terstruktur, dengan demikian kita dapat membuat database yang baik. Demikian penjelasan singkat dari saya mengenai ERD PT. Furniture, Semoga bermanfaat.

Minggu, 07 Oktober 2012

Pengalaman Mengembangkan Sistem Informasi: Program Kalkulator Sederhana


Saya akan menceritakan pengalaman Mengembangkan Sistem Informasi dalam bentuk program Kalkulator Sederhana. Kalkulator sendiri sudah sering kita jumpai dimana-mana. Entah dalam bentuk fisik atau dalam bentuk aplikasi komputer dan handphone.

Kalkulator sederhana ini memiliki fungsi yang sederhana, terdiri dari beberapa operasi dalam matematika seperti Penjumlahan, Pengurangan, Perkalian, dan Pengurangan. Karena ini pengalaman pertama saya membuat program kalkulator jadi saya hanya mampu membuat untuk 4 operasi ini saja. Program yang saya buat ini, menggunakan bahasa pemrograman Java. Karena program ini dapat memberikan informasi, maka program ini memiliki karakteristik dari Sistem Informasi.

Berikut adalah Karakteristiknya :

  • Komponen 

Komponen atau elemen - elemen yang ada dalam program ini adalah kelas, method, dan input yang nantinya akan di jalankan dengan rumus penjumlahan, pengurangan, perkalian, dan pembagian yang kita masukkan ke dalam program yang kita buat.

  • Batasan

Karena program ini sifatnya sederhana, maka kalkulator ini hanya bisa memproses Penjumlahan, Pengurangan, Perkalian, dan Pembagian.  

  • Lingkungan

Karena kalkulator adalah alat hitung yang bisa dipakai oleh semua orang, maka siapapun yang kesulitan dalam menghitung dalam waktu cepat, bisa menggunakan program ini.

  • Keterkaitan 

Sintaks - sintaks yang ada dalam program ini saling terkait satu dengan lainnya, karenanya bisa menghasilkan penghitungan.

  • Input

Input dari program ini juga sederhana, anda hanya perlu memasukkan angka dan operator hitungnya untuk selanjutnya diproses hingga mengeluarkan hasil perhitungan yang anda kehendaki.

  • Proses

Dalam program ini, pemrosesannya terletak pada penghitungan yang dilakukan oleh program ini (pada bagian rumus).

  • Output

Hasil dari pemrosesannya berupa angka yang telah dihitung oleh program.

  • Tujuan

Tujuan dari program yang saya buat ini adalah agar mempermudah siapapun dalam menghitung cepat.

Demikian pengalaman saya dalam usaha mengembangkan sistem informasi. 

Selasa, 02 Oktober 2012

Review : Game Engine


Game engine (bahasa Indonesia: mesin permainan) adalah sebuah sistem software yang dirancang untuk pembuatan dan pengembangan suatu video game. Ada banyak sekali game engine yang dirancang untuk bekerja pada beberapa konsol video game dan sistem operasi desktop seperti Microsoft Windows, Linux dan Mac OS X. Fungsi utama yang secara khusus disediakan oleh game engine meliputi mesin render (renderer) untuk grafik 2D atau 3D, mesin fisika, deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen momori, threading, dukungan lokalisasi dan layar grafik. Proses pembuatan game seringkali dihemat oleh sebagian besar developer dengan menggunakan kembali game engine yang sama untuk membuat game yang berbeda.

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 Game Engine
Banyak sekali game engine yang ada sekarang ini mulai dari yang gratis sampai yang berbayar. Berikut contoh 10 game engine yang bagus berdasarkan banyaknya review yang ada pada situs DevMaster.net tersebut.

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

Sedikit tambahan nih perbandingan Blender Game Engine dengan DXStudio :


VS.


Blender Game Engine

Blender merupakan open source 3D modelling, rendering, game 3D animasi, simulasi pengembangan sistem. Blender terus ditingkatkan dengan fitur baru dan didukung oleh komunitas yang aktif. Blender adalah grafis 3D aplikasi yang dapat digunakan untuk pemodelan, texturing rendering, edting dan membuat aplikasi 3D interaktif, termasuk permainan video, film animasi atau efek visual. Blender tersedia untuk sejumlah sistem operasi termasuk Linux, Mac OS X, dan Microsoft Windows.
Kelebihan yang dimiliki Blender adalah dapat membuat game tanpa menggunakan program
tambahan lainnya, Karena Blender sudah memiliki “Engine Game” sendiri dan menggunakan “Python” sebagai bahasa pemograman yang lebih mudah ketimbang menggunakan C++,C, dll.
Blender menggunakan “OpenGL” sebagai render grafiknya yang dapat digunakan pada berbagai macam “OS” seperti Windows, Linux dan Mac OS X. Sekarang ini Blender merencanakan sudah mengeluarkan versi yang terbarunya, yaitu Versi 2.63a yang lebih ditujukan untuk pembuat game. Karena Versi ini memiliki fitur-fitur baru yang dirancang untuk membuat tampilan game yang lebih realistis dari pada versi sebelumnya.
Blender 2.63a memiliki fitur baru seperti :

  • Video Texture
  • Real-time GLSL Material
  • Game Logic
  • Bullet SoftBody
  • Python Editor
  • Multilayer Textures
  • Physics
  • Composite Adalah tempat menambahkan efek visual.
  • Render Baking dan Normal Mapping dan masih banyak yang lainnya.

Untuk membuat game di Blender anda tidak perlu jago pemograman, jika anda hanya ingin membuat game sederhana anda cukup mempelajari tool-tool yang disediakan oleh blender tanpa harus menggunakan “script” sedikitpun.

Perbandingan dengan Software 3D lainnya :
Blender memiliki kedalaman dan keluasan fitur dibandingkan dengan komersial, eksklusif. Sebuah perbandingan cukup komprehensip antara software 3D yang tersedia dapat dilihat pada perbandingan grafik. Blender cenderung kurang up to date.
Installer blender lebih kecil dibandingkan dengan penuh fungsi perangkat lunak grafis 3D. Misalnya Blender installer dari 2.63a membangun untuk Windows 32 bit adalah 27 MB , 36 MB membutuhkan setelah instalasi, dan membangun lite membutuhkan 2,2 MB, sedangkan perangkat lunak seperti AutoCAD membutuhkan sekitar 2 GB . Dengan demikian, Blender dapat dengan mudah download (meskipun beberapa buku panduan  telah mnyediakan Blender CD).

DXStudio

DX Studio adalah sebuah lingkungan pengembangan terintegrasi yang lengkap untuk membuat grafis 3D yang interaktif. Sistem ini terdiri dari baik mesin 3D real-time dan suite dari alat editing. Mesin memungkinkan JavaScript mengendalikan semuanya dari perubahan latar belakang untuk jerat mengedit secara real-time. Anda juga dapat komando dan kontrol dokumen dari luar pemain menggunakan ActiveX / COM interface. Menggunakan DX Studio Anda dapat membangun aplikasi lengkap interaktif real-time, simulasi atau permainan, untuk menggunakan Pengukur atau untuk embedding di lain Microsoft Office / aplikasi Visual Studio. Mesin pemutaran di kedua EXE dan DLL ActiveX bentuk dapat didistribusikan lebih lanjut tanpa royalti.

  • Fitur DXStudio :

Sistem ini meliputi baik 2D dan 3D editor tata letak, dan memungkinkan kontrol JavaScript adegan, objek dan media secara real-time. Dokumen juga dapat dikendalikan dari luar pemain menggunakan ActiveX / antarmuka COM atau TCP / IP port. Mesin belakang DX menggunakan DirectX 9.0c Studio
Menggunakan teknologi ActiveX pengguna dapat membangun sendiri C + +, C # atau aplikasi VB.Net dan drop DX Studio Player sebagai komponen. Sebuah dokumen interaktif yang lengkap dapat dikompilasi menjadi EXE didistribusikan tunggal.
Untuk pengguna tingkat lanjut plug-in yang tersedia SDK, dengan beberapa DirectX / C + + atau pengetahuan HLSL, pengguna dapat kode efek mereka.


  • Lisensi DXStudio :

DX Studio tersedia dalam edisi standar baik dan profesional. Perbedaan dalam perizinan antara dan non-komersial pengguna komersial juga dibuat. Kendali source code ke pemutar juga tersedia di bawah Lisensi Perusahaan.

Perbandingan DXStudio dengan Blender Game Engine :

DXStudio :
Author : Worldweaver Ltd.
Graphics API : DirectX
Operating Systems : Windows
Programming Language : C/C++, C#, Visual Basic 6, VB.NET

Blender :
Author : Blender Foundation
Graphics API : OpenGL
Operating Systems : Windows, Linux, MacOS, Solaris, FreeBSD, Irix
Programming Language : C/C++, Python