Perancangan Sistem PERANCANGAN SISTEM

dan dimasukkan ke dalam daftar polygon dari child front. Dan sebaliknya jika hasilnya negatif maka polygon tersebut dimasukkan ke dalam daftar polygon dari child back. Setelah proses klasifikasi dan pendaftaran polygon selesai maka masing-masing child front dan back akan melakukan proses rekursif kembali ke langkah ke 5, dan menjadikan child tersebut menjadi parent bagi child dibawahnya secara terus menerus sampai memenuhi kondisi tidak menemukan splitter terbaik pada langkah ke 5.

3.3. Perancangan Sistem

Berdasarkan analisa identifikasi permasalahan yang telah dilakukan sebelumnya bahwa Framework rendering engine ini dibangun menggunakan API Direct3D dari Microsoft DirectX SDK dan diprogram dengan bahasa pemrograman C++. Sedangkan desain sistemnya menggunakan UML dan flowchart pada masing-masing fungsi framework. Garis besar desain sistem rancang bangun yang akan dibuat digambarkan seperti gambar di bawah ini: Aplikasi Berbasis 3D Static Library Tumoz3D.lib untuk Matematika Algoritma 3D Static Library TumozGeneral.lib untuk Kontrol Pergerakan, Kamera dsb Static Library TumozRenderer.lib untuk interface Sistem Rendering Dynamic Library TumozD3D.dll untuk implementasi Sistem Rendering Render Interface Buat Obyek Beri Device Load Implemen Gunakan Gunakan Gunakan Gunakan Gunakan Gambar 3.4. Gambaran Umum Rancang Bangun Sistem STIKOM SURABAYA Pada gambar diatas sistem dijelaskan menjadi beberapa tahapan sebagai berikut: 1. Pihak developer yang mengembangkan aplikasi berbasis 3D dapat menggunakan tiga library yang disediakan dari framework ini antara lain TumozRenderer.lib, Tumoz3D.lib, dan TumozGeneral.lib. 2. Aplikasi pengembangan membuat obyek dari TumozRenderer.lib sebagai library utama untuk menjalankan engine. Kemudian aplikasi tersebut memberikan permintaan device yang dibutuhkan berdasarkan API. 3. TumozRenderer.lib berfungsi sebagai interface dan class abstrak sedangkan fungsi-fungsi utama rendering engine dalam melakukan komunikasi dengan API berada didalam TumozD3D.dll. Dengan demikian ketika obyek dibuat pada aplikasi pengembangan secara otomatis TumozRenderer.lib memuat load TumozD3D.dll. 4. TumozD3D.dll melakukan implementasi pada obyek Render Device sehingga fungsi-fungsinya dapat digunakan oleh aplikasi pengembangan. Tugas dari render device tersebut antara lain insialisasi rendering, menentukan resolusi, penggunaan shader, melakukan proses-proses yang dibutuhkan pada tahapan rendering pipeline, dan sebagainya. 5. TumozRenderer.lib dan TumozD3D.dll juga berisi 2 obyek engine tambahan yaitu TumozSkinManager dan TumozVertexCacheManager. TumozSkinManager berfungsi untuk mengelola penggunaan warna, material dan tekstur berdasarkan implementasi pada API. Sedangkan TumozVertexCacheManager berfungsi sebagai manajemen verteks dan indeks buffer dalam melakukan proses rendering. STIKOM SURABAYA 6. Aplikasi pengembangan dapat menggunakan class-class didalam Tumoz3D.lib yang terpisah dari TumozRenderer.lib. Class-class tersebut merupakan perhitungan matematika dan algoritma yang diperlukan untuk mengembangkan aplikasi berbasis 3D. 7. Selain Tumoz3D.lib aplikasi pengembangan juga dapat menggunakan library TumozGeneral.lib yang berisi class dan fungsi untuk manajemen scene, kontrol pergerakan dan informasi yang dibutuhkan dalam proses rendering. 8. TumozD3D.dll juga menggunakan library Tumoz3D.lib dan TumozGeneral.lib dalam melakukan perhitungan matematika dan algoritma serta fungsi-fungsi yang diperlukan lainnya untuk memproses dan menjalankan sistem rendering engine.

3.4. Class Diagram