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