Proses rendering memainkan peran penting dalam siklus pengembangan grafis komputer . Kami tidak akan masuk terlalu dalam di sini, tetapi tidak ada diskusi tentang pipa CG akan lengkap tanpa setidaknya menyebutkan alat dan metode untuk rendering gambar 3D.
Seperti Mengembangkan Film
Rendering adalah aspek teknis yang paling kompleks dari produksi 3D, tetapi sebenarnya dapat dipahami dengan mudah dalam konteks analogi: Banyak seperti fotografer film harus mengembangkan dan mencetak foto-fotonya sebelum dapat ditampilkan, profesional grafik komputer dibebani sejenis kebutuhan.
Ketika seorang seniman bekerja pada adegan 3D , model yang dia manipulasi sebenarnya merupakan representasi matematis dari titik dan permukaan (lebih spesifik, simpul dan poligon) dalam ruang tiga dimensi.
Istilah rendering mengacu pada perhitungan yang dilakukan oleh mesin render paket perangkat lunak 3D untuk menerjemahkan adegan dari pendekatan matematika ke gambar 2D yang diselesaikan. Selama proses tersebut, informasi spasial, tekstur, dan pencahayaan seluruh adegan digabungkan untuk menentukan nilai warna setiap piksel dalam gambar yang diratakan.
Dua Jenis Rendering
Ada dua jenis rendering utama, perbedaan utama mereka adalah kecepatan di mana gambar dihitung dan diselesaikan.
- Real-Time Rendering: Real-Time Rendering digunakan paling menonjol dalam game dan grafik interaktif, di mana gambar harus dihitung dari informasi 3D dengan kecepatan yang sangat cepat.
- Interaktivitas: Karena tidak mungkin untuk memprediksi dengan tepat bagaimana seorang pemain akan berinteraksi dengan lingkungan permainan, gambar harus dirender secara "real-time" ketika aksi tersebut terungkap.
- Kecepatan Matters: Agar gerakan muncul cairan, minimal 18 - 20 frame per detik harus diberikan ke layar. Apa pun yang kurang dari ini dan tindakan akan muncul berombak.
- Metode: Render real-time ditingkatkan secara drastis oleh perangkat keras grafis khusus (GPU), dan dengan mengkompilasi sebanyak mungkin informasi. Banyak informasi pencahayaan lingkungan permainan yang telah dihitung sebelumnya dan "dipanggang" langsung ke file tekstur lingkungan untuk meningkatkan kecepatan render.
- Offline atau Pra-Rendering: Render offline digunakan dalam situasi di mana kecepatan kurang dari masalah, dengan perhitungan biasanya dilakukan menggunakan CPU multi-core daripada perangkat keras grafis khusus.
- Prediktabilitas: Perenderan offline paling sering dilihat dalam animasi dan efek bekerja di mana kompleksitas visual dan fotorealisme dipegang dengan standar yang jauh lebih tinggi. Karena tidak ada ketidakpastian seperti apa yang akan muncul di setiap frame, studio besar telah dikenal untuk mendedikasikan hingga 90 jam waktu render ke frame individu.
- Photorealism: Karena rendering offline terjadi dalam kerangka waktu terbuka, tingkat fotorealisme yang lebih tinggi dapat dicapai dibandingkan dengan rendering real-time. Karakter, lingkungan, dan tekstur dan lampu terkaitnya biasanya diperbolehkan jumlah poligon yang lebih tinggi, dan file tekstur resolusi 4k (atau lebih tinggi).
Teknik Rendering
Ada tiga teknik komputasi utama yang digunakan untuk sebagian besar rendering. Masing-masing memiliki kelebihan dan kekurangannya sendiri, menjadikan ketiga opsi yang layak dalam situasi tertentu.
- Scanline (atau rasterization): Scanline rendering digunakan ketika kecepatan adalah suatu kebutuhan, yang membuatnya menjadi teknik pilihan untuk render real-time dan grafik interaktif. Alih-alih membuat gambar pixel-by-pixel, perender scanline menghitung pada poligon berdasarkan poligon. Teknik scanline yang digunakan dalam hubungannya dengan pencahayaan precomputed (panggang) dapat mencapai kecepatan 60 frame per detik atau lebih baik pada kartu grafis high-end.
- Raytracing: Dalam raytracing, untuk setiap pixel dalam adegan, satu (atau lebih) sinar cahaya ditelusuri dari kamera ke objek 3D terdekat. Sinar cahaya kemudian diteruskan melalui sejumlah "pantulan", yang dapat mencakup refleksi atau pembiasan tergantung pada materi dalam adegan 3D. Warna setiap piksel dihitung berdasarkan algoritme pada interaksi sinar cahaya dengan objek di jalurnya yang dilacak. Raytracing mampu fotorealisme lebih besar daripada scanline tetapi secara eksponensial lebih lambat.
- Radiositas: Tidak seperti raytracing, radiositas dihitung independen dari kamera, dan berorientasi permukaan daripada pixel demi pixel. Fungsi utama radiositas adalah untuk lebih akurat mensimulasikan warna permukaan dengan memperhitungkan iluminasi tidak langsung (memantulkan cahaya menyebar). Radiositas biasanya ditandai dengan bayangan lembut dan perdarahan warna, di mana cahaya dari benda-benda berwarna cerah "mengalir" ke permukaan terdekat.
- Dalam prakteknya, radiositas dan raytracing sering digunakan dalam hubungannya dengan satu sama lain, menggunakan keuntungan dari masing-masing sistem untuk mencapai tingkat fotorealisme yang mengesankan.
Perangkat Lunak Rendering
Meskipun rendering mengandalkan perhitungan yang sangat canggih, perangkat lunak saat ini menyediakan parameter yang mudah dipahami sehingga membuatnya tidak perlu berurusan dengan matematika yang mendasarinya. Mesin render disertakan dengan setiap perangkat lunak 3D utama, dan sebagian besar termasuk paket material dan pencahayaan yang memungkinkan untuk mencapai tingkat fotorealisme yang menakjubkan.
Dua mesin render yang paling umum:
- Mental Ray - Dikemas dengan Autodesk Maya. Mental Ray sangat serbaguna, relatif cepat, dan mungkin penyaji yang paling kompeten untuk gambar karakter yang membutuhkan hamburan bawah permukaan. Sinar mental menggunakan kombinasi raytracing dan "iluminasi global" (radiositas).
- V-Ray - Anda biasanya melihat V-Ray yang digunakan bersama dengan 3DS Max — bersama-sama pasangan ini benar-benar tak tertandingi untuk visualisasi arsitektur dan perenderan lingkungan. Keunggulan utama VRay atas pesaingnya adalah perangkat pencahayaan dan pustaka bahan ekstensif untuk arch-viz.
Rendering adalah subjek teknis, tetapi bisa sangat menarik ketika Anda benar-benar mulai melihat lebih dalam pada beberapa teknik umum.