Senin, 15 Oktober 2012

Game Engine Panda3D



Pada tugas softskil kali ini saya akan mereview sedikit tentang game engine, yang saya akan review yaitu game engine Panda3D. Panda3D adalah mesin permainan yang mencakup grafis, audio, I / O, tabrakan, dan kemampuan lain yang relevan dengan penciptaan game 3D.
Panda3D adalah open source dan, pada 28 Mei, 2008 perangkat lunak bebas di bawah revisi lisensi BSD. Rilis sebelum 28 Mei 2008 tidak dianggap Free Software karena kesalahan tertentu dalam desain lisensi Panda3D tua. Meskipun demikian, rilis ini lebih tua dari Panda3D juga dapat digunakan untuk kedua pengembangan game gratis dan komersial tanpa biaya keuangan.
Dimaksudkan Panda3D ini permainan pengembangan bahasa Python. Mesin itu sendiri ditulis dalam C + + , dan menggunakan sebuah otomatis wrapper-generator untuk mengekspos fungsi lengkap dari mesin dalam antarmuka Python. Pendekatan ini memberikan pengembang keuntungan dari pengembangan Python, seperti perkembangan pesat dan manajemen memori maju, namun tetap kinerja bahasa disusun dalam inti mesin. Misalnya, mesin yang terintegrasi dengan kolektor sampah Python, dan struktur mesin secara otomatis dikelola.
The manual dan contoh program menggunakan Python, meskipun pengembang bekerja pada menerjemahkan manual untuk C + + dan menyediakan C + + sampel program.
Seorang pengembang menggunakan Panda3D biasanya menulis kode di Python, tetapi juga memungkinkan untuk langsung mengakses mesin menggunakan C + + code.
Para pengguna Panda3D termasuk pengembang dari beberapa game komersial besar, sebuah proyek sumber terbuka beberapa, dan sejumlah program universitas yang memanfaatkan kurva belajar pendek Panda3D itu. Masyarakat kecil tapi aktif, dan pertanyaan pada forum umumnya menjawab dengan cepat.

Desain
Panda3D adalah mesin grafik adegan. Ini berarti bahwa dunia maya ini awalnya kosong Cartesian ruang menjadi yang menyisipkan permainan programmer model 3D. Panda3D tidak membedakan antara "besar" model 3D, seperti model dari penjara seluruh atau pulau, dan "kecil" model 3D, seperti model meja atau pedang. Model baik besar dan kecil yang dibuat dengan menggunakan program pemodelan standar seperti Blender , 3ds Max atau Maya , dimuat ke Panda3D, dan kemudian dimasukkan ke dalam ruang Cartesian.
Grafik adegan Panda3D mengekspos fungsi OpenGL dan DirectX dalam bentuk yang cukup literal. Misalnya, OpenGL dan DirectX keduanya memiliki kemampuan kabut. Untuk mengaktifkan kabut di Panda3D, satu hanya menyimpan parameter kabut pada node dalam grafik adegan. Parameter kabut sama persis dengan parameter panggilan setara dalam API yang mendasarinya. Dengan cara ini, Panda3D dapat dilihat sebagai pembungkus tipis sekitar API tingkat rendah. Dimana hal itu berbeda dari mereka adalah bahwa ia menyimpan adegan, sedangkan OpenGL dan DirectX tidak. Tentu saja, itu juga menyediakan tingkat yang lebih tinggi operator, seperti memuat model, melaksanakan animasi, mendeteksi tabrakan, dan sejenisnya.
 Panda3D pertama direkayasa sebelum adanya shader vertex dan pixel. Ini diperoleh dukungan untuk shader manual ditulis pada tahun 2005. Namun, pengguna telah lambat untuk meningkatkan modern yang per-pixel teknik pencahayaan dalam permainan mereka. Para pengembang berteori bahwa ini adalah karena program shader bisa sangat sulit, dan bahwa pengembang game banyak ingin mesin untuk menangani secara otomatis.
Untuk memperbaiki situasi ini, para pengembang Panda3D baru-baru ini diberikan Panda3D kemampuan untuk mensintesis shader otomatis. Sintesis ini terjadi jika pemodel 3D menandai model untuk per-pixel pencahayaan, atau jika pemodel menerapkan peta normal, peta, gloss diri iluminasi peta, atau kemampuan lain yang melebihi kemampuan dari pipa fixed-fungsi. Tujuan dari sintesis ini adalah untuk membuat model sebagai modeler dimaksud, tanpa intervensi dari programmer.

Non-Graphical Kemampuan
            Panda3D menyediakan kemampuan selain render 3D. Kepala di antara ini adalah : 
- Kinerja alat analisis. 
- Eksplorasi grafik alat adegan. 
- Debugging alat. 
- Sebuah seni pipa ekspor / impor lengkap. 
- 3D Audio, baik menggunakan FMOD , OpenAL atau Sistem Suara Miles . 
- Deteksi tabrakan. - Fisika sistem, dan integrasi penuh untuk Mesin Dynamics Terbuka , eksperimental PhysX dan integrasi Bullet.
- Keyboard dan dukungan Mouse.
- Dukungan untuk I / O device.
- Negara yang terbatas mesin.
- GUI, integrasi libRocket.
- Jaringan.
- Kecerdasan buatan.

Sejarah
The Disney studio VR adalah cabang dari Disney yang diciptakan untuk membangun atraksi 3D untuk taman hiburan Disney. Mereka membangun daya tarik yang disebut "Magic Carpet Aladin," dan mesin yang mereka buat untuk itu akhirnya menjadi Panda3D. Mesin dalam bentuk yang sekarang sedikit beruang kemiripan kepada tahun-tahun awal. Seiring waktu, Panda3D digunakan untuk naik VR tambahan di taman hiburan Disney, dan akhirnya digunakan dalam penciptaan Toontown online , game online diatur dalam dunia kartun, dan kemudian untuk kedua MMORPG , Pirates of the Caribbean online.
Pada tahun 2002, mesin dirilis sebagai open source. Menurut penulis, ini adalah agar mereka "bisa lebih mudah bekerja dengan universitas pada proyek-proyek penelitian Virtual Reality."  Namun, butuh beberapa waktu untuk Panda3D untuk lepas landas sebagai proyek open-source. Dari artikel:
Sistem ini, meskipun cukup digunakan oleh tim yang mengembangkan itu, tidak cukup "open source siap." Ada beberapa pengguna yang tertarik, tetapi membangun dan memasang sistem itu sangat kompleks, dan ada sedikit di jalan dokumentasi atau kode sampel, sehingga tidak ada komunitas sumber terbuka yang signifikan segera.
Namun, terbuka-sumber dari mesin diperbolehkan Carnegie Mellon Pusat Teknologi Hiburan untuk bergabung dalam pengembangan mesin. Sementara Disney insinyur terus melakukan sebagian besar pembangunan, tim Carnegie Mellon-membangun peran untuk dirinya sendiri polishing mesin untuk konsumsi publik, menulis dokumentasi, dan menambahkan beberapa fitur high-end seperti shader.
Nama Panda3D yang pernah akronim: "Agnostic platform jaringan Arsitektur Tampilan." Namun, karena frase yang telah kehilangan sebagian besar maknanya, kata "Panda3D" jarang dianggap sebagai akronim lagi.

Software Lisensi
Pada tahun 2002, ketika mesin itu open source, tujuan dari pengembang adalah untuk menciptakan sebuah Free Software lisensi. Namun, lisensi memiliki beberapa kekurangan yang membuatnya non-Free: bisa dibilang diperlukan mengirimkan perubahan Panda. Project @ Disney.com, dan secara eksplisit melarang ekspor perangkat lunak untuk berbagai bangsa terhadap mana Amerika Serikat memiliki embargo perdagangan.
Pada Rabu Mei 28, 2008, batang pembangunan Panda3D beralih ke lisensi BSD. Namun, rilis lama masih menggunakan lisensi lama.
Panda3D membuat penggunaan beberapa perpustakaan pihak ketiga yang izinnya juga tidak Free Software , termasuk FMOD , Nvidia Cg , DirectX , dan MFC. Sebagian besar dari modul ini dapat dengan mudah dikeluarkan dari instalasi, namun.

Referensi disini

Tidak ada komentar:

Posting Komentar