TzuChieh / Photon-v2

A program that takes photographs of a virtual world.
https://tzuchieh.github.io/Photon-v2-site/engine_docs/v2.0.0-beta/Photon/html/index.html
MIT License
81 stars 5 forks source link

Templatize microfacet surface optics #63

Closed TzuChieh closed 6 days ago

TzuChieh commented 3 years ago

For example, microfacet surface optics are not meant to change at render time, the fresnel and microfacet data should be passed as template arguments and stored by value rather than smart pointers; other optics may have similar problem.

TzuChieh commented 1 week ago

On hold: runtime polymorphism is more readable and flexible in terms of implementation, we can always templatize later if there is actual need (e.g. performance)