Class TumozD3D Class TumozD3DSkinManager Class TumozD3DVCManager

disebut skin kulit dari obyek tiga dimensi. Bentuk struktur dari kelas TumozSkinManager adalah sebagai berikut: Gambar 3.9. Class TumozSkinManager Seperti pada gambar 3.9. operasi-operasi yang tersedia pada kelas TumozSkinManager antara lain menambah dan mengganti skin atau tekstur dari obyek tiga dimensi, mengubah warna material, membandingkan warna material, dan sebagainya.

3.4.5. Class TumozD3D

Kelas TumozD3D merupakan kelas implementasi paling penting dan paling utama yang merupakan turunan dari interface TumozRenderDevice. Fungsi dari kelas ini adalah mengelola perangkat rendering dengan menggunakan STIKOM SURABAYA referensi dari API Direct3D. Kelas TumozD3D mengelola hampir seluruh proses penting yang ada di dalam Framework Tumoz Rendering Engine. Dan struktur dari kelas TumozD3D digambarkan oleh gambar di bawah ini: Gambar 3.10. Class TumozD3D Atribut dari kelas TumozD3D terdiri dari pointer dari obyek-obyek API Direct3D yang berhubungan dengan perangkat rendering seperti Direct3D9, Direct3DDevice9 , D3DXFont, dan lain-lain. Selain itu atribut-atribut pada kelas TumozD3D juga berisi status atau kondisi dari jalannya sistem rendering. STIKOM SURABAYA Sedangkan operasi-operasi yang ada di dalam kelas TumozD3D sama dengan operasi-operasi virtual yang ada di dalam interface TumozRenderDevice dengan tambahan fungsi-fungsi bantuan helper function untuk proses internal contohnya fungsi OneTimeInit, Go, Log, dan sebagainya.

3.4.6. Class TumozD3DSkinManager

Kelas TumozD3DSkinManager adalah kelas implementasi dari interface TumozSkinManager yang menggunakan API Direct3D. Fungsi dari kelas TumozD3DSkinManager sama dengan interface TumozSkinManager yang telah dijelaskan sebelumnya disertai dengan atribut dan operasi tambahan untuk penerapan internal sistem. Untuk lebih jelasnya dapat dilihat pada gambar 3.11. Gambar 3.11. Class TumozD3DSkinManager STIKOM SURABAYA

3.4.7. Class TumozD3DVCManager

Seperti kelas TumozD3D dan TumozD3DSkinManager bahwa TumozD3DVCManager juga merupakan kelas implementasi API Direct3D dari interface TumozVertexCacheManager. Struktur kelasya adalah sebagai berikut: Gambar 3.12. Class TumozD3DVCManager STIKOM SURABAYA Konsep manajemen verteks pada API Direct3D menggunakan sistem Flexible Vertex Format FVF sehingga bebas untuk menentukan sendiri secara fleksibel format dari verteks yang sesuai dengan kebutuhan. Akan tetapi pada kelas TumozD3DVCManager hanya menyediakan 6 pilihan pada atribut format verteks yaitu: 1. Position Untransformed Vertex PS adalah format verteks yang hanya berisi data posisi saja tanpa adanya transformasi. 2. Unstransformed and Unlit Vertex UU yaitu merupakan format verteks yang berisi data posisi, vektor normal, dan koordinat tekstur. Biasanya digunakan untuk menggambarkan benda tanpa disertai efek pancahayaan. 3. Unstransformed and Lit Vertex UL yaitu merupakan format verteks yang paling umum dipakai yang berisi data posisi, warna material diffuse, dan koordinat tekstur. Benda yang digambar menggunakan format verteks ini dapat dipengaruhi oleh efek pencahayaan. 4. Character Animation CA adalah format verteks yang berisi data posisi, vektor normal, dan koordinat tekstur. Biasanya digunakan untuk menggambarkan animasi karakter. 5. Three Texture Coordinat 3T adalah format verteks yang berisi data posisi, vektor normal, dan 3 koordinat tekstur. Biasanya digunakan untuk efek-efek spesial atau khusus seperti detail map, heightmap dan lain-lain. 6. Tangent Vector TV adalah format verteks yang berisi data posisi, vektor normal, koordinat tekstur, dan vektor tangen. Biasanya juga digunakan untuk spesial efek seperti bump mapping, dan sebagainya. STIKOM SURABAYA Fungsi dari kelas TumozD3DVCManager ini sama dengan interface TumozVertexCacheManager yaitu untuk mengelola verteks. Akan tetapi untuk mengelola verteks secara individual kelas ini dibantu oleh kelas khusus helper class yaitu kelas TumozD3DVCache yang akan dijelaskan di bawah ini.

3.4.8. Class TumozD3DVCache