Render dan penelusuran ray berbasis fisik

11

Saya punya banyak kebingungan dan saya perlu mengklarifikasi beberapa terminologi dan mengumpulkan pengetahuan.
Jika saya mengatakan bahwa sebuah mesin adalah pelacak sinar (jadi ia menggunakan algoritma pelacak sinar untuk membuat adegan), apakah itu secara otomatis mesin berbasis fisik? Maksud saya, ray tracing berdasarkan definisi secara fisik atau mungkin ada beberapa ray tracer yang tidak berbasis fisik? (dan, secara simetris, apakah ada beberapa pelacak non-ray yang berbasis fisik?)
Juga, apakah benar bahwa "berbasis fisik" juga berarti "menyelesaikan persamaan transportasi ringan"?

TodorokiM
sumber

Jawaban:

16

"Berbasis fisik" bukanlah istilah yang didefinisikan dengan sangat baik, sehingga sulit untuk menjawab pertanyaan ini dengan tepat.

Secara umum, "berbasis fisik" mengacu pada fakta bahwa algoritma yang dimaksud berasal dari prinsip-prinsip berbasis fisik. Itu tidak benar secara fisik (karena kita tidak mampu membelinya) dan beberapa perkiraan biasanya harus dibuat, tetapi diketahui dengan baik apa perkiraan itu dan idealnya ada beberapa intuisi tentang jenis kesalahan yang diajukannya.

Ini berbeda dengan model ad hoc, yang biasanya dibuat oleh seorang seniman yang mengamati efek dalam kehidupan nyata dan mencoba untuk menulis shader atau sejenisnya yang entah bagaimana meniru tampilan itu. Biasanya model ad hoc lebih sederhana dan lebih murah dan cenderung menjadi solusi pertama yang muncul untuk masalah yang diberikan, tetapi mereka tidak menawarkan wawasan khusus tentang apa yang sebenarnya terjadi. Praktis juga tidak mungkin untuk mengatakan seberapa akurat model seperti itu mampu mereproduksi efek yang coba disimulasikan.

Dalam konteks rendering, "renderer berbasis fisik" karena itu akan menjadi sesuatu yang membuat gambar menggunakan prinsip-prinsip berbasis fisik, yang merupakan klasifikasi yang sangat kabur. Pelacak sinar tidak secara inheren berbasis fisik, dan pelacak sinar awal sebenarnya menggunakan model ad hoc untuk penerangan dan sejenisnya. Dari pengalaman pribadi saya, "rendering berbasis fisik" digunakan untuk merujuk pada penyelesaian persamaan rendering. Namun, tampaknya dalam beberapa tahun terakhir, banyak mesin game mengklaim istilah ini juga berarti "kami melakukan konservasi energi" atau "kami tidak lagi menggunakan phong".

Jadi sungguh, tidak ada klasifikasi keras apa arti "rendering berbasis fisik", dan menggunakan ray tracing dengan sendirinya tidak membuat renderer berbasis fisik. Dalam render offline, istilah ini masih banyak digunakan untuk merujuk pada renderers yang memecahkan persamaan rendering, sedangkan dalam rendering real-time, ini lebih cenderung merujuk pada penggunaan model mikrofacet atau sejenisnya. Tetapi mungkin saja arti dari istilah ini akan berubah selama bertahun-tahun.

Benedikt Bitterli
sumber
3
Seperti yang ditunjukkan oleh @BenediktBitterli "Rendering Berbasis Fisik" tidak benar-benar ya atau tidak. Dalam rendering, kita harus selalu menyeimbangkan realisme dengan biaya komputasi. Beberapa pemberi render hanya akan memiliki beberapa fitur 'Berbasis Fisik', misalnya, Microfacet BRDFs dan target render HDR. Sedangkan yang lain mungkin memiliki banyak, misalnya, BSDF lengkap, target render spektrum penuh, penelusuran cahaya, lampu area, dll.
RichieSams
2

Tidak, cukup:

  • Render berbasis fisik tidak memerlukan raytracing. Seseorang dapat menggunakan cara lain. *

  • Raytracing dapat digunakan untuk melakukan efek selain rendering berbasis fisik.

Raytracing seringkali paling mudah diterapkan dan dipikirkan. Oleh karena itu banyak digunakan untuk rendering berbasis fisik. Tetapi untuk alasan yang sama banyak render yang tidak realistis menggunakan trik raytracing untuk mendapatkan apa yang mereka butuhkan.

* Secara pribadi saya telah bermain-main dengan FEM yang tidak terstruktur untuk rendering gambar

joojaa
sumber