Garis Besar Kerja Aplikasi

Persamaan hasil subtitusi dapat dikelompokkan menjadi A t 2 + B t + C = 0. Setelah A , B , dan C diketahui, diskriminan dan t dapat dicari. Rumus t ada pada persamaan 5.

3.2 Garis Besar Kerja Aplikasi

Dalam pembuatan aplikasi, diperlukan banyak proses. Proses- proses secara garis besar meliputi proses Ray Tracing Initialization , Bounding Volume Initialization, Copy Data to be Passed to CUDA, dan Count Color of Each Pixels . Hasil atau output dari proses-proses tersebut adalah gambar hasil render . Proses-proses besar yang ada dapat dilihat pada Gambar 3. Gambar 3. Garis Besar Aplikasi 3.2.1 Ray Tracing Initialization Pada proses ini dilakukan inisialisasi dilakukan konfigurasi ukuran screen , posisi mata dan lampu, serta mesh yang ingin dibaca. Jika mesh tidak ditemukan, maka aplikasi akan berhenti. Jika mesh ditemukan, mesh akan dibaca dan disimpan setiap face - nya. Bersamaan dengan itu, dilakukan pencarian titik berat maksimum dan minimum, yang diperlukan untuk pembuatan BVH tree . Setelah itu dilakukan pencarian arah ray ke pixel kiri bawah. Lalu dilanjutkan dengan proses penghitungan arah setiap ray . Selain itu, program akan langsung dihentikan jika mesh input tidak ada. 3.2.2 Bounding Volume Initialization Proses ini bertujuan untuk membuat BVH tree . Pertama-tama root dari BVH tree akan diisi. Setelah root terisi, maka akan dilakukan pengisian pada left dan right dari root . Proses pengisian left dan right akan berhenti jika jumlah objek dalam bounding volume kurang dari atau sama dengan nilai yang sudah diset sebelumnya. Jika jumlah objek tidak memenuhi syarat, maka dilakukan pencarian axis yang paling panjang, lalu dilakukan pengisian left dan right dari node tersebut. Khusus pada bounding volume sphere , axis digilir secara berurutan, karena pada sphere tidak terdapat axis terpanjang. 3.2.3 Copy Data to be Passed to CUDA Proses Count Color of Each Pixel s dilakukan pada GPU atau CUDA. Sehingga, perlu dilakukan penyalinan data yang diperlukan. Data yang disalin merupakan informasi dari BVH. Informasi dari BVH perlu disalin dengan sedemikian rupa sehingga nantinya GPU tidak perlu memroses secara rekursi, melainkan secara loop . 3.2.4 Count Color of Each Pixels Proses ini bertujuan untuk menentukan warna setiap pixel dan dijalankan di dalam GPU. Pada proses ini, dicari objek mana yang tampak beserta perhitungan efek-efek warna. Efek-efek warna yang dihitung meliputi efek cahaya dan efek optik. Ambient , diffuse , specular , dan shadow merupakan efek cahaya. Sedangkan refleksi dan transparansi merupakan efek optik.

4. IMPLEMENTASI