Add improved normal2height node
Add my normal2height node to the base library. The default node works fine for very simple geometric shapes, but for real normal maps it produces very strong streaking artifacts. This improved node is based on Materialize's height from normal generator.
Probably the sampling sequence and performance can still be improved. But it's not bad. Also I haven't done any spell checking. I'll keep this as a draft until initial feedback.
| Normals | Simple | Improved | Reference |
|---|---|---|---|
| N/A | |||
I'm not really sure if it makes sense to keep the existing, simple node
I should note that the strength and base height parameters don't work exactly like in the existing node. It's just a simple value * strength + base
One issue I've found is that high sample counts (4k or more) often result in crashes with textures above 512 resolution. However this is more of an issue with MM than this node in particular. If Iterate Buffers exposed the iteration number, I could use them to spread the calculation across multiple invocations and the crash could likely be avoided.
I have a version in the works that uses an iterate buffer. That makes it more stable. And I've improved the quality further. Future Work (not in this PR): See how awesome bump does it.
From my side this PR is done