Amazing stuff! I really enjoyed reading it!
There are AwesomeBump that is written in QT and do not require .NET Framework and has code open.
Интересно, не понятно зачем, но круто. Я бы хотел поучаствовать в проекте
Take some time to study a nice Arnold for Maya user guide by Solid Angle. Polymesh objects can be rendered as volumes, giving you creative opportunities for rendering solid objects in varied and interesting ways. This tutorial shows how to combine a polymesh with a volume by combining their shading using the displacement attribute of a Standard Volume shader.
Please note that the polymesh should be closed and not have anything self-intersecting, otherwise, the volume may not render correctly.
- First of all, we need to convert the head mesh to a volume. Select the mesh and under its Arnold attributes, increase the Step Size to 0.1. When the Step Size is positive, it turns a polymesh into a volume and its value is used as the base step for raymarching the volume.
More information about volume Step Size can be found here.
- Assign a Standard Volume shader to the polymesh and increase the Density to around 20. This will ensure that the displacement texturing looks more defined later.
Polymesh rendered as a volume
You must add a Step Size value and assign a Standard Volume shader for the mesh to render as a volume.
The next step is to enlarge the volume by using Padding. This will be useful for when we want to displace the volume with a texture. Note that this slack applies not only to the bounding box but also to the voxels used for ray extents inside the bounding box. In this case, a small amount of 0.05 was used.
For best performance, this should be set as low as possible, while still covering the maximum the displacement amount.
Find the full tutorial here.