- Add Dual support to have dPdx, dPdu, dudx etc...
- Have texture rendered after shaderglobal is complete(Update : texture support is there after setup u&v in the shaderglobal, no need for dPdx and etc.. Texture support is done now)
- easier class introspection with boost hana and frozen. Refer to https://github.com/nicktrandafil/yenxo to get runtime support (Update : tested boost hana but no good result, cannot save much typing with a lot extra coding difficulties and other flaws, check branch with_hana)
- configurable light path record for debugging and visualization (Update : not configurable now with hard coded structure, can provide convinience for some basic debug. Add other plans on this topic later on)
- Complete closures and fill up with details of the various microfacet models
- look into path integrator to quantify the errors between ground truth
- Current development status of kazen proto and related background knowledge(OIIO, OSL).
- Design and ideas of some module of the renderer:
- Scene description and parsing;
- Kernel seperation of OSL for future integration of GPU;
- Debugging tools;
- Testing, benchmarking and documenting.
- Problems occurred in development of kazen proto and related topics that need further investigation:
- floating point and self intersection;
- cpp self introspection;
- partial derivatives and dual number.
- Discussion and quick revisit of light path transport, importance sampling, MIS etc..
- Features developed this season:
- OSL compile at runtime, add support for self defined closure.
- A walk through of enoki alike integrator practices.
- Configurable math library integration, enoki and eigen support added.
- Refractoring microfacet part and adding closure impls.
- Plans:
- Implement all the closure defined in the specification.
- Write a principled shader in OSL and add a demonstrating scene.
- Better benchmark to get a overall perspective of the performance.
- Add a formal PT integrator with volume and participating medium calculation.