Pengurangan segitiga

Keluarga lain algoritma geometris kami akan meninjau adalah metode pengurangan segitiga, yang digunakan untukmembuat jerat variabel-resolusi dari mesh basis. Meskipun beberapa game tidak pernah menggunakan pengurangan segitiga ataumenggunakannya pada tahap pemodelan, banyak orang lain merasa berguna untuk melakukan beberapa jenis pengurangan segitiga software.

Beberapa alasan populer untuk hal ini adalahl Memilih tingkat detail untuk suatu benda yang bisa sampai dekat atau jauhl Menggunakan jerat resolusi yang lebih rendah untuk menghitung bayanganl Tuning permainan untuk kemampuan perangkat keras pemain saat beban


Apapun kasus Anda, kebijakan pengurangan segitiga dapat diimplementasikan baik sebagai preprocess pada waktu buka,dengan asumsi biaya komputasi relatif tidak penting, atau sebagai proses real-time, menghitung penurunanbertautan secara real time. Jelas, algoritma akan berbeda tergantung pada pilihan Anda. Pengurangan Segitigabukanlah proses yang sederhana, dan dengan demikian mencoba untuk menghitung multiresolusi jala baik secara real time pasti akanmembutuhkan perencanaan yang matang.


Vertex Ambruk


Vertex runtuh melibatkan menghilangkan simpul dari mesh basis menggunakan kriteria coplanarity dengantetangga simpul. Hal ini membutuhkan merekonstruksi jala setelah titik telah dihapus.Pada dasarnya, kita perlu untuk mengatur data yang geometris dalam memori sehingga kita dapat melintasi struktur menggunakanbaik geometri dan topologi hubungan. Kita perlu untuk segera menentukan ujungnya terhubungke titik atau menghitung tertentu normals oleh muka untuk wajah tertentu. Inti dari algoritma untuk setiap titikadalah untuk membandingkan normals per muka bagi mereka menghadapi dhuwur asli kami milik. Jika perbedaan dalamnormals di bawah ambang batas tertentu, kami akan menghapus simpul dari struktur data, dan dengan melintasiorang-orang pinggiran yang telah benar-benar selamat, merekonstruksi mesh basis (lihat Gambar 22.9). Dengan berulangaplikasi, kita akan mencapai tingkat yang lebih rendah segitiga, dan kinerja sehingga lebih tinggi.




Gambar 22.9. Runtuhnya vertex. Kiri, mesh asli. Tepat, mesh setelah pusatvertex telah dihapus.
Sebuah pendekatan yang menarik tetapi mirip bekerja tidak pada simpul, tetapi pada ujungnya. Sebuah tepi dibagi oleh paling banyak duasegitiga. Kemudian, itu semua masalah mendeteksi orang-orang pinggiran yang segitiga tetangga memiliki indeks besarcoplanarity. Jika batas tertentu terpenuhi, kita dapat menghapus tepi dan las simpul di kedua sisitepi bersama-sama. Untuk melakukannya kita menghapus simpul di kedua ujung tepi dan membuat yang baru yang terletak dititik tengah antara dua dan pada sumbu yang dibentuk oleh mereka. Sebuah contoh dari tepi runtuhnya ditunjukkan pada 


 
Gambar 22.10. Tepi keruntuhan. Kiri, mesh asli. Tepat, mesh setelahtepi disorot telah dihapus.Jerat ProgresifSalah satu yang paling populer algoritma pengurangan segitiga real-time adalah jerat progresif, diperkenalkan olehHugues Hoppe pada tahun 1996. Algoritma yang telah kita lihat sejauh ini dirancang untuk membangun mesh resolusi rendahdari dasar, model berkualitas tinggi. Jerat Progresif pergi satu langkah lebih dan memungkinkan real-time kontinutingkat-of-detail (LOD), sehingga kita dapat meningkatkan dan menurunkan jumlah segitiga yang diperlukan dan selalu memiliki modelkompleksitas yang tepat untuk setiap saat. Semua manfaat ini datang dari preprocessing mesh sehinggabaik topologi awal dan deskripsi konstruktif disimpan. Kemudian, algoritma run-time sangat sederhana, sehinggadapat digunakan untuk game.Jerat progresif mulai dengan mesh basis, yang berkurang, satu sisi pada satu waktu, menggunakan variasi dariStrategi runtuhnya tepi diuraikan sebelumnya. Seperti telah kita lihat, mengingat mesh Mn, kita dapat menghitung jalaMn-1 dengan melakukan runtuhnya satu sisi. Ini menghilangkan satu titik dan dua wajah persis. Sekarang, perhatikan bahwakita dapat mengembalikan proses dan merekonstruksi Mn dari Mn-1 jika kita menyimpan informasi keruntuhan itu:posisi dua simpul dan konektivitas dari masing-masing. Ini berarti operasi runtuhnya adalahdibalik. Kami akan memanggil operasi invers split vertex, karena dibutuhkan satu (runtuh) vertex danmembagi menjadi dua.Kemudian, dengan urutan titik perpecahan, kita dapat mewakili jala apapun dengan caral jala berkualitas rendah sebagai M0 awall memerintahkan urutan vertex perpecahan kita perlu melakukan pindah dari M0 ke berkualitas tinggi MnIni adalah inti dari konsep progresif mesh. Kami menyimpan mesh berkualitas rendah dan metode konstruktifuntuk menghasilkan versi yang lebih berkualitas. Kemudian, pada saat runtime, kita menggunakan dua struktur untuk membangun sebuah jala yanghanya cocok untuk kebutuhan kita. Jerat biasanya bergerak lebih dekat atau lebih jauh progresif, jadi kami hanya akan perlumelakukan vertex terbelah atau menggabungkan setiap beberapa frame karena perubahan mendadak dalam resolusi tidak sering. A
Definisi Game Engine

Definisi Game Engine

Definisi Game Engine
Game Engine adalah sebuah sistem yang dirancang untuk penciptaan dan pengembangan video game. Mesin game terkemuka menyediakan kerangka kerja perangkat lunak yang digunakan pengembang untuk membuat game untuk konsol permainan video dan komputer pribadi. 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, memori manajemen, threading, dukungan lokalisasi, dan adegan grafik. Proses pengembangan game sering dihemat, sebagian besar, dengan menggunakan kembali / mengadaptasi mesin permainan yang sama untuk menciptakan permainan yang berbeda, atau untuk membuatnya lebih mudah untuk "port" permainan untuk berbagai platform.

Tipe – tipe Game Engine
Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrogramman, yaitu :
Torque
Torque adalah engine game kelas AAA yang dapat bejalan di berbagai platform seperti Linux, Windows, Mac dengan harga yang murah. Fitur-fitur yang dimiliki engine Torque adalah kode jaringan multi-player, engine perenderan untuk di dalam maupun luar ruangan, animasi skeletal, pembuatan GUI dengan cara drag and drop, world editor yang sudah terintegrasi, dan bahasa scripting yang mirip bahasa C.

3D Game Studio
3D GameStudio, sering dikenal sebagai Gamestudio atau 3DGS adalah pengembangan permainan 3D sistem komputer yang memungkinkan pengguna untuk membuat game 3D dan aplikasi
virtual reality yang lain, dan mempublikasikan mereka bebas royalti. Termasuk model / daerah editor, level editor, script editor / debugger dan dilengkapi dengan sebuah kumpulan besar textures, model dan karya seni, serta permainan sistem template yang memungkinkan penciptaan dasar shooter games atau RPGs tanpa pemrograman. Untuk permainan kompleks atau aplikasi lain yang dapat anda gunakan salah satu bahasa scripting yang terintegrasi bernama Lite-c atau eksternal pengembangan bahasa seperti Visual C + + atau Delphi.

True Vision 3D
TV3D SDK adalah multi-bahasa mesin 3D, terutama yang ditulis dalam C + + dengan dukungan untuk Visual Basic 6, Visual Basic.Net, C #, Delphi, Python, dan C + +. Dibangun di atas platform DirectX padat, Anda dapat dengan cepat dan mudah prototipe kompleks game 3D dan aplikasi dalam sampai 80% lebih sedikit waktu.

XNA ( untuk XBOX)
XNA Framework yang didasarkan pada pelaksanaan asli. NET Compact Framework 2,0 untuk Xbox 360. Termasuk yang ekstensif set class libraries, permainan khusus untuk pembangunan, untuk meningkatkan maksimum code reuse di target platform. Framework berjalan pada versi Common Language Runtime yang dioptimalkan untuk bermain game untuk menyediakan lingkungan eksekusi dikelola. Runtime yang tersedia untuk Windows XP, Windows Vista, dan Xbox 360. Sejak permainan XNA ditulis untuk runtime, mereka dapat berjalan pada platform apapun yang mendukung XNA Framework dengan sedikit atau tanpa modifikasi. Game yang berjalan di framework dapat ditulis teknis dalam bahasa NET-compliant apapun, tetapi hanya C # dan XNA Game Studio Express IDE dan semua versi Visual Studio 2005 yang secara resmi didukung.

Dan masih banyak yang lainnya, karena yang sering dipakai oleh kebanyakan orang adalah 4 jenis tipe yang diatas maka saya hanya memberikan info mengenai 4 tipe jenis engine tersebut. Sisanya kalo mau nyari jenis engine yang lain, ya silahkan cari sendiri hehe.
Beberapa contoh jenis game engine :
1. Freeware game engine/open source game engine
  • Blender
  • Golden T Game Engine (GTGE)
  • DXFramework
  • Ogre
  • Aleph One
  • Axiom Engine
  • Allegro Library
  • Box2D
  • Build Engine
  • Cube
  • Cube 2
  • DarkPlaces
  • jMonkeyEngine (jME)
  • Panda3D
  • Sphere
  •  
2. 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

Mungkin segitu aja yang bisa saya share, semoga bermanfaat bagi pembaca sekalian(semoga ada yang baca)  hehe.

sumber:
http://putrikero.wordpress.com/2010/03/17/game-engine/
http://bebek-disko.blogspot.com/
http://en.wikipedia.org/wiki/List_of_game_engines

Top