Powered By Blogger

Senin, 25 Juni 2012

POLA DESAIN


Bab 4. Pola Desain

"Selalu merancang sesuatu dengan mempertimbangkan konteks berikutnya yang lebih besar seperti, kursi di sebuah ruangan, ruangan di sebuah rumah, sebuah rumah di sebuah lingkungan, lingkungan dalam rencana kota."

Pemrograman berorientasi obyek (OOP) merupakan sebuah kemajuan yang signifikan atas struktur coding klasik. Program yang lebih besar dapat diatasi karena penyusunan kode yang sangat meningkat hasilnya. Tapi program terus berkembang, menjadi terlalu rumit dan sulit untuk dikelola. Seperti pemrograman terstruktur sebelumnya, dengan OOP lebih cepat diatasi.

Serangkaian teknik baru telah diusulkan untuk meningkatkan lagi kompleksitas dari project dan program agar tetap terorganisir. Perlengkapan seperti Standard Template Library (STL) telah menjadi suatu lompatan besar, karena programmer sekarang dapat percaya serangkaian komponen untuk melakukan bagian dari pekerjaannya. Komponen ini adalah konteks sensitif dan dapat digunakan pada apa pun dari spreadsheet untuk permainan 3D. Dengan demikian, tim coding dapat berkonsentrasi pada bagian dari kode yang benar-benar mendefinisikan fungsionalitas aplikasi dengan menggunakan STL sebagai pembuatan blok.

Dalam beberapa tahun terakhir, serangkaian teknik baru telah muncul, yang sama dengan STL dalam arti bahwa hal itu memungkinkan Anda untuk menggunakan komponen yang telah ditetapkan. Tapi cakupan dan ambisinya jauh lebih luas. Lengkapi bagian dari program anda, jangan hanya kelas dasar, tetapi dapat digantikan dengan komponen yang telah ada, sehingga menghemat banyak jam kerja.


Pola Desain yang Ditetapkan

Desain pola (DP) adalah solusi yang terbukti dan tidak bisa dipungkiri dari permasalahan rekayasa perangkat lunak. Sebagai ilmu komputer yang telah berkembang, beberapa masalah telah menjadi klasik dan cenderung sering muncul dalam konteks yang berbeda. Seperti tahun-tahun yang lalu, solusi yang berbeda telah diajukan, dan beberapa dari mereka akhirnya sudah diterima sebagai solusi yang optimal dalam hal efisiensi, keluwesan, dan ketahanan.

DP merupakan salah satu solusi. Secara khusus, DP adalah deskripsi lengkap dari masalah dan solusi masing-masing baik dari segi desain tingkat makro dan implementasi, sehingga programmer dapat membaca pola dan memecahkan masalah dengan menggunakan solusi optimal. Jelas, banyak waktu yang dapat disimpan dengan cara ini. Tetapi lebih banyak memilih DP daripada coding yang cepat. Dengan menggunakan DP, bagian lengkap dari kode aplikasi (sering terdiri dari banyak kelas) diganti dengan pelaksanaan yang disarankan dari pola, sehingga menjadi kotak hitam yang bisa kita percaya, dan sampai  batas tertentu.

Jadi, DP adalah entitas abstraksi lebih tinggi dari kelas sederhana atau bahkan STL. Mereka adalah subsistem lengkap, kadang-kadang terdiri dari beberapa kelas siap dan tuned untuk penggunaan tertentu. Inti dari semuanya untuk memiliki mata untuk mendeteksi masalah-masalah klasik dalam kode Anda dan mampu menyelesaikannya sesuai.

DP sering disajikan dalam daftar, sehingga analis aplikasi dapat menjelajah dan mencari pola untuk melihat mana masalah yang mungkin ia hadapi. Beberapa pola penggunaan yang sangat umum, sedangkan yang lain lebih membatasi. Beberapa dari mereka bahkan dirancang untuk masalah umum tentang coding komputer game, dan ini adalah yang akan kita tekankan untuk sisa bab ini. Namun, jangan lupa bahwa Permainan ini hanya aplikasi perangkat lunak, dan kadang-kadang mereka tidak begitu berbeda dari aplikasi lain seperti spreadsheet atau program menggambar.

Ada banyak jenis DP. Dua yang paling berguna untuk pengembang pemrograman game pola, yang menggambarkan masalah coding spesifik dan solusi standar mereka, dan pola kegunaan, yang berhubungan dengan desain interface, interaksi manusia-komputer, dan konsep terkait. Sekarang kita akan meninjau beberapa pola yang paling populer di kedua kelas, sehingga Anda dapat mengambil keuntungan dari mereka ketika coding game.


Diterjemahkan dari buku Core Techniquos and Algorithm In Game Programming


Selasa, 17 April 2012

Review Need for Speed Underground 2



Game balapan Need for Speed Underground 2 ini dirilis akhir tahun 2004, walupun agak jadul tapi gameplay nya sangat keren. Dalam game ini kita bisa merasakan sensasi kebut-kebutan di jalanan. Need for Speed Underground 2 ini juga menantang bagi para gamer untuk membenamkan diri dalam budaya tuner dan menjelajahi kota, bebas roaming luas dibagi menjadi lima lingkungan yang berbeda, dimana jika ingin melanjutkan ke lingkungan selanjutnya maka harus menyelesaikan lingkungan yang sebelumnya. Gamer akan menghadapi saingan balapan yang akan memulai pertandingan sampai bertemu dengan pemain terakhir di tempat balapan terpanas, walaupun gamer bisa memilih level dalam permainan ini dari mudah sampai sulit. Grafik dalam permainan ini memang masih banyak kekurangan disbanding dengan grafik Need for Speed yang keluaran terbaru. Tetapi didukung dengan suara dari game yang sangat asik maka bisa membawa gamer untuk masuk lebih jauh kedalam arena balap yang sesungguhnya.

Permainan ini akan menampilkan mode permainan baru, dalam kinerja dari mobil yang digunakan untuk membalap, kita bisa menyesuaikan kebutuhan mobil pada saat performance tuning. Terdapat 30 mobil berlisensi, termasuk mazda dan audy. Bisa memodifikasi mobil yang dimiliki supaya terlihat lebih menantang dari tampilan. Bagi yang penasaran untuk game ini bisa mencari dan mencoba tantangan balap yang sangat seru, dimana kita seperti berasa membalap di jalanan.. :D


Bagi yang penasaran ingin bermain, berikut spesifikasi minimum yang dibutuhkan:

· Windows 98 or better

· 993 MHz CPU

· 128 MB RAM for 98/ME (256 MB RAM for 2000/XP)

· 2 GB hard disk space

· DirectX 9.0c compatible 32 MB AGP graphics card with Transform and Lightning and one of these chipsets Radeon 7500; GeForce 2; Matrox G400; Matrox Parhelia; SIS 315

· DirectX compatible sound card


Screen Shoot






GAME ENGINE

Istilah “Game Engine” muncul pada pertengahan 1990-an, terutama dalam kaitannya dengan game 3D seperti orang pertama shooters (FPS). Begitulah popularitas id Software ’s Doom dan Quakepermainan yang, daripada bekerja dari nol, lain pengembangberlisensi bagian inti dari perangkat lunak dan grafis yang dirancang mereka sendiri, karakter, senjata, dan tingkat ”permainan isi” atau “permainan aset“. Pemisahan permainan-aturan tertentu dan data dari konsep-konsep dasar seperti tabrakan dan permainan entitas yang berarti bahwa tim bisa tumbuh dan mengkhususkan.

Game engine adalah suatu perangkat atau alat yang di gunakan dalam pembuatan game itu sendiri. Game enginemerupakan sebuah sistem perangkat lunak yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada video game konsol dan komputer pribadi. Fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin rendering ("renderer") untuk grafis 2D atau 3D, mesin fisika atau deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, memori manajemen, threading, dukungan lokalisasi, dan grafik adegan. Proses pengembangan game sering dihemat oleh di menggunakan kembali sebagian besar / mengadaptasi mesin permainan yang sama untuk membuat game yang berbeda.

Jenis-Jenis Game Engine:

a. Open source game engine:

- Blender

- Golden T Game Engine (GTGE)

- DXFramework

- Ogre

- jMonkeyEngine (jME)

- Panda3D

- Sphere

b. Commercial engines/game engine berbayar (komersial):

- Alamo

- A.L.I.V.E

- BigWorld

- DXStudio

- Dunia Engine

- Euphoria

- GameStudio

- Jade Engine

- Jedi

- Medusa

- RPG Maker VX

- RPG Maker XP

- RPG Maker 2003

- RPG Maker 95

- Vision Engine



Perbandingan Game Engine C4 Engine dengan Ogre

Perbandingan Game Engine C4 Engine dengan OGREPerbandingan Game Engine C4 Engine dengan OGREPerbandingan Game Engine C4 Engine dengan OGREPerbandingan Game Engine C4 Engine dengan OGREPPer

Sebelum dibandingkan alangkah lebih baiknya saya berikan gambaran singkat dari kedua game engine tersebut.

C4 Engine

Telah mendukung banyak sistem operasi. Game engine ini sudah memiliki paket lengkap untuk pembuatan suatu game dengan dilengkapi oleh teknologi musik dan suara 3D, komunikasi jaringan, perangkat input, memori dan manajemen sumber daya, dan masih banyak lagi.


OGRE

Singkatan dari Object-Oriented Graphics Rendering Engine yang merupakan game engine fleksibel yang berbasis scene ditulis dengan bahasa C++ didesain agar lebih mudah dipakai oleh para developer untuk memproduksi game dan demo yang menggunakan hardware 3D. Library kelas menggambarkan semua rincian dari penggunaan sistem library seperti Direct3D dan OpenGL yang menyediakan sebuah antarmuka berbasis pada objek dunia dan kelas intuitif lainnya.


Perbandingan

C4 Engine

OGRE

Penulis

Terathon Software (Eric Lengyel)

Steve Streeting

API Grafik

OpenGL

OpenGL, DirectX

Bahasa Pemrograman

C/C++

C/C++

Sistem Operasi

Windows, MacOS, PS3

Windows, Linux, MacOS

Status

Produktif / stabil

Produktif / stabil

Dokumentasi

Ada

Ada

Source Code

Ada

Ada

Harga

Berbayar

Gratis

Mesh yang Didukung

3D Studio MAX, Maya, XSI, Blender, dan paket lainnya.

Milkshape3D, 3D Studio Max, Maya, Blender dan Wings3D.

Kelebihan

- Sudah mendukung suara, physics, jaringan dan lain sebagainya.

- Bagus dalam rendering. Bisa dilihat dari demo yang ada terlihat tampak hebat.

- Memiliki kecepatan yang baik saat proses render.

- Banyak tool yang dapat dipakai dalam scene.

- Mudah dipakai karena antarmukanya mudah dikenali.

- Punya komunitas yang besar.

- Gratis karena open source.

- Dapat memilih render yang diinginkan, OpenGL atau DirectX.

- Kemungkinan kinerja OGRE dalam scene culling lebih baik.

- Dapat di-render dengan baik meskipun dengan kartu grafis bawaan Intel.

- Punya komunitas yang besar.

Kekurangan

- Butuh biaya untuk menggunakannya.

- Butuh kartu grafis dengan spesifikasi tinggi agar dapat didukung penuh.

- Hanya sebuah rendering engine jika tidak dilengkapi dengan tool jaringan, suara dan lain sebagainya.





Sumber:

http://bulletin-it.blogspot.com/2012/03/pengenalan-game-engine.html

http://febriady.wordpress.com/2010/05/15/game-engine/

http://ilhamsk.com/perbandingan-game-engine/

Senin, 12 Maret 2012

Game Computer

Mungkin kita sudah tidak asing lagi dengan istilah game. Mulai dari anak-anak hingga dewasa pasti sering mendengar istilah game ini. Sekarang apa artinya game ini???

Dalam kamus bahasa Indonesia “Game” diartikan sebagai permainan. Permainan adalah kegiatan yang kompleks yang didalamnya terdapat peraturan, play dan budaya. Sebuah permainan adalah sebuah sistem dimana pemain terlibat dalam konflik buatan, disini pemain berinteraksi dengan sistem dan konflik dalam permainan merupakan rekayasa atau buatan, dalam permainan terdapat peraturan yang bertujuan untuk membatasi perilaku pemain dan menentukan permainan yang telah dibuat sedemikian rupa agar permainan itu menarik untuk dimainkan. tulisan kali ini akan membahas sedikit mengenai permainan komputer.

Setelah mengetahui definisi dari permainan, sekarang apa sih definisi dari permainan Komputer? Permainan komputer adalah permainan video yang dimainkan pada komputer pribadi, bisa juga dimainkan dengan menggunakan mesin dengan koin. Permainan komputer telah berevolusi dari sistem grafis sederhana sampai menjadi kompleks dan mutakhir. Permainan komputer dibuat dengan beberapa tingkat kesulitan (level) sehingga si pemain tidak bosan dengan kondisi dalam permainan, dan setiap level memiliki tingkat kesulitan yang berbeda-beda dan pastinya lebih banyak tantangan dalam permainan komputer yang ada pada saat ini.


Terdapat 5 alat yang dapat dikategorikan sebagai komputer, yaitu :

o Expensive dedicated machine, mesin yang dioperasikan dengan koin untuk memainkankannya.

o Inexpensive dedicated machine, disebut juga dengan hand held machine. Alat game watch termasuk dalam katagori ini.

o Multiprogram home, mesin seperti Atari,Nintendo termasuk dalam kelompok komputer ini.

o Personal computer

o Mainframe computer

Computer game berbeda dengan jenis game yang lain karena tidak ada pergerakan secara fisik atau interaksi langsung dengan object kecuali lewat perantaraan komputer. Software yang dibuat harus dapat menangkap reaksi yang cepat dari interaksi yang dihasilkan dengan pemain. Karena itu software untuk computer games harus bersifat real time. Kompleksitas game adalah bergantung dari kemampuan merepresentasikan aturan dan lingkungan game dalam program yang dibuat.


Maka definisi yang umum untuk computer game adalah :

"Game Computer adalah sebuah program software dimana satu atau lebih pemain berusaha untuk membuat keputusan lewat kontrol terhadap object dan resource guna memenuhi satu tujuan tertentu"


Sumber:

http://id.wikipedia.org/wiki/Permainan_komputer

http://cgrg.wordpress.com/2008/03/12/definisi-computer-game/

Minggu, 08 Januari 2012

ORGANISASI FILE

Organisasi File adalah suatu teknik atau cara yang digunakan untuk menyatakan dan menyimpan record-record dalam sebuah file.

Ada 4 teknik dasar organisasi file, yaitu :

1. Organisasi File Sequential

Merupakan cara yang paling dasar untuk mengorganisasikan kumpulan record-record dalam sebuah berkas. Dalam organisasi berkas sequential, pada waktu record ini dibuat, record-record direkam secara berurutan. Contoh : Lagu yang ada dikaset.

2. Organisasi File Relative

· Suatu berkas yang mengidentifikasikan record dengan key yang diperlukan.

· Record tidak perlu tersortir secara fisik menurut nilai key.

· Organisasi berkas relatif paling sering digunakan dalam proses interaktif.

· Tidak perlu mengakses record secara berurutan (consecutive).

· Sebaiknya disimpan dalam Direct Access Storage Device (DASD) seperti magnetic disk/drum.

· Contoh : Lagu yang ada pada CD (Compact Disk)


3. Indexed Sequential

Merupakan salah satu cara yang efektif untuk mengorganisasi kumpulan record-record yang membutuhkan akses record secara sequential maupun secara individu berdasarkan nilai key. Contoh : Mencari arti kata dalam kamus.

4. Multi – Key

Merupakan organisasi yang dapat mempunyai sebuah file yang di akses dengan banyak cara. Contoh : Sistem perbankan yang memiliki banyak pemakai.

Secara umum keempat teknik dasar tersebut berbeda dalam cara pengaksesannya, yaitu :

1. Direct Access;

Adalah suatu cara pengaksesan record yang langsung, tanpa mengakses seluruh record yang ada. Contoh : Magnetic Disk.

2. Sequential Access;

Adalah suatu cara pengaksesan record, yang didahului pengaksesan record-record di depannya. Contoh : Magnetic Tape.

Faktor-faktor yang mempengaruhi dalam proses pemilihan organisasi file :

· Karakteristik dari media penyimpanan yang digunakan

· Volume dan frekuensi dari transaksi yang diproses

· Respontime yang diperlukan

Cara memilih organisasi file tidak terlepas dari 2 aspek utama, yaitu :

1. Menurut Model penggunaannya ada 2 cara :

1. Batch; Suatu proses yang dilakukan secara group atau kelompok.

2. Interactive; Suatu proses yang dilakukan secara satu persatu, yaitu record demi record.

2. Menurut model OPERASI FILE ada 4 cara :

1. Creation;

> Membuat struktur file lebih dahulu, menentukan banyak record baru, kemudian record-record dimuat ke dalam file tersebut.

> Membuat file dengan cara merekam record demi record.

2. Update;

Untuk menjaga agar file tetap up to date.

Contoh: Insert / Add, Modification, Deletion.

3. Retrieval;

Pengaksesan sebuah file dengan tujuan untuk mendapatkan informasi.

Inquiry: Volume data rendah, model proses interactive.

Report Generation: Volume data tinggi, model proses batch.


File Retrieval terbagi 2, yaitu :

1. Comprehensive Retrieval,

Mendapatkan informasi dari semua record dalam sebuah file.

Contoh : * Display all

* List nama, alamat

2. Selective Retrieval,

Mendapatkan informasi dari record-record tertentu berdasarkan persyaratan tertentu.

Contoh : * List for gaji = 100000

* List nama, npm, for angkatan = 93


4. Maintenance;

Perubahan yang dibuat terhadap file dengan tujuan memperbaiki penampilan program dalam mengakses file tersebut.

> Restructuring

Perubahan struktur file.

Misalnya :

Panjang field diubah, penambahan field baru, panjang record dirubah.

> Reorganization

Perubahan organisasi file dari organisasi yang satu, menjadi organisasi file yang lain.

Misalnya :

* Dari organisasi file sequential menjadi indeks sequential.

* Dari direct menjadi sequential.

Rabu, 04 Januari 2012

JENIS FILE (Berdasarkan Fungsinya)

1. MASTER FILE

Master File adalah file yang berisi data yang relatif tetap.

Master file (berkas induk) berisi objek-objek yang harus ada di sebuah unit kerja (enterprise). Misalkan, di sebuah perguruan tinggi, objek-objek yang harus ada seperti (1) mahasiswa, (2) dosen, (3) mata kuliah, (4) biaya kuliah, (5) ruang kelas, dan sebagainya.

Objek-objek tersebut harus disimpan datanya di dalam file computer, dan akan masuk ke dalam katagori master file.

Contoh lain :

Organisasi sebuah pabrik : * Payroll Master File

* Customer Master File

* Personnel Master File

* Inventory Master File

Ada 2 jenis Master File :

1. Reference Master File

File yang berisi record yang tak berubah / jarang berubah.

Contoh :

Berkas pelanggan yang berisi field nomor rekening, nama dan alamat.

2. Dynamic Master File;

File yang berisi record yang terus menerus berubah dalam kurun waktu tertentu atau berdasarkan suatu peristiwa transaksi.

Contoh :

· Berkas stock barang

· Berkas pemesanan tempat duduk

2. TRANSACTION FILE

Transaction file adalah berkas transaksi yang harus disimpan di dalam media penyimpanan eksternal komputer. Transaction file terjadi akibat adanya hubungan (relasi) antarmaster file

Bisa juga di definisikan Transaction File Adalah file yang berisi record-recod yang akan memperbaharui / meng-update record-record yang ada pada master file.

Meng-update dapat berupa :

Penambahan record, penghapusan dan perbaikan record.

3. REPORT FILE

Report File Adalah:

* Berisi data yang bentuknya telah disesuaikan untuk kepentingan user

* Data yang akan ditampilkan pada monitor

* Data yang akan dicetak

* Dihasilkan oleh:

- Report writer

- Application program

4. WORK FILE

Work File adalah:

* File sementara

* File kerja

* Berisi sesuatu yang tidak permanen

* Isinya hanya dipakai sesaat saja

* Untuk memindahkan data dari satu program ke program yang lain

5. PROGRAM FILE

Program File adalah file yang berisi instruksi-instruksi yang akan dijalankan oleh komputer. Instruksi-instruksi itu utamanya ditulis dengan bahasa pemograman (programming language), misalkan C++, Cobol, Pascal, Fortran, dan sebagainya.

6. TEXT FILE

* Text File berisi : ALPHANUMERIC & GRAPHIC DATA

* Berasal dari program text editor

* Hanya dapat diproses oleh program text editor