1. This shader creates the appearance of a solid surface defined by a 3D texture within an object. Anywhere the input texture is above a threshold, it will appear solid. Use at your own risk.

2. To install drag xsiaddon over workspace.

3. Plug a 3D texture into the field input. You will probably need a texture space generator and texture space editor to control it.

4. Set the threshold slider. This works best around the middle of the range of the input texture.

5. Set the step distance for the ray marcher. If this isn't low enough, it can miss areas above the threshold. However, lower step distance will take longer.

6. Plug whatever illumination shader you want into the surface input and the clipped_surface input. They can be the same one or different

7. Only regular ray-traced shadows work. Not segmented ray-traced and not shadowmaps.

8. The shader can use multiple trace depth levels depending on how it's set up so make sure trace depth is set high enough.

9. The shader needs a 3D texture space such as from a texture space generator to evaluate the input field. It won't work with a texture support.

10. The Cull shader is a workaround because backface culling is disabled in the Solid Volume shader. It prevents artifacts and should speed up rendering even if there's only one light. It can be inserted in the light rendertrees with its output going into the Light Shader input.

11. The edge fade option tapers the field near the surface of the bounding volume. The Fade_Depth input controls how far from the surface to start the fade. The idea is to use this if you want to avoid the appearance of clipping at the surface of the bounding volume. It will work best if both the bounding volume and field produce relatively smooth curves. It's pretty slow.

12. For refractions, turn off scanline rendering and make sure refraction depth is high enough. Outside ior is set at 1.0.

13. Mix color determines how much of the color is determined by the surface versus transparency/refraction.

14. Internal density or color can be set with the "volume" color sliders or driven by a procedural texture.

15. "color_on" tells the shader to march through the volume to add up the "volume" input.

16. To get a non-solid volume, make the mix color white, attach a procedural texture to the "volume" input, and set the field to greater than threshold. Also a procedural texture can be used in the field input as usual to set boundaries for the volumetric effect.

17. "density" effects the internal density of a transparent volume and also the density of its shadowing.

18. The "offset" parameter may need to be adjusted for artifacts at edges, especially with refraction.

New Stuff(rc15):

19. Works with either procedural volumetric input or with volumetric dataset using volume_loader node.

20. If using the procedural volumetric input then normal type should be default local gradient estimate. If using volume_loader node then choose one of the volume_loader normal options. They are in order of increasing smoothing (and increasing render time). If the dataset in the volume_loader node is anisotropic, correct this using a Texture Edit node and this should be reflected in the normal calculations except for the Sobel3D option.

21. There are now two field and two threshold inputs. One pair is for a standard opaque solid volume. The other is for a transparent solid or nonsolid volume. They can be used at the same time for a solid structure inside of a transparent or nonsolid one. Otherwise just use the inputs of one and turn the other off by setting the threshold above the field input.





