Transparency / 3ds Max
Here we show how to enable transparency for Standard, Physical and glTF-compliant PBR materials in 3ds Max.
For usage example, check out the following demo from the Asset Store: Transparency.
- Blended vs Masked
- Additive Compositing (aka Additive Blending)
- Order-Independent Transparency (OIT)
- Transparency for Physical Materials
- Transparency for Standard Materials
- Transparency for glTF-compliant PBR Materials
Blended vs Masked
Being a real-time 3D engine, Verge3D offers two main methods to handle transparent objects: alpha blending and alpha clipping (usually with an image mask). Blending enables combining a translucent foreground color with a background color, using the foreground color's alpha as blending factor. Clipping, on the other hand, simply discards all pixels with alpha less than some predefined threshold (always equal to 0.5 in Verge3D for 3ds Max).
Blending enables for smooth transitions, generally looks nicer but computationally more expensive than clipping. It may also produce z-sorting artifacts when polygons appear to be rendered in wrong order. Clipping works best for visualizing numerous small objects (such as grass or tree leaves). It also produces hard edges without any transitions which may be aliased.
Use Alpha Mode dropdown in material settings to choose between blending and masking.
There is also variation of the Mask mode called Coverage. It uses MSAA rendering to improve the quality of alpha clipping.
Additive Compositing (aka Additive Blending)
Verge3D also offers a special method for rendering transparent surfaces called additive compositing. By blending in additive manner and excluding polygons from pixel depth comparison you can get rid of transparency artifacts.
To enable this mode select Add in the Alpha Mode dropdown and uncheck the Depth Write option in material settings to enable this mode. In addition, you'll need to increase the Rendering Order value in object settings to make your transparent object rendered above all.
Order-Independent Transparency (OIT)
Verge3D allows the use of an approximate order-independent transparency technique, which do not require rendering geometry in sorted order, so it solves most transparency issues without any of the above considerations.
OIT can be enabled though the Verge3D Settings panel.
- OIT is only compatible with WebGL 2, otherwise it has no effect.
- OIT is ignored by Reflection Cubemap Light Probes and Reflection Plane Light Probes.
- May not work well with high opacity objects.
- Should not be used together with MSAA (multisample anti-aliasing) in scenes with 2 or more opaque objects. Instead you can use FXAA (fast approximate anti-aliasing) which is fully compatible with OIT.
Transparency for Physical Materials
Transparency of physical materials can be tweaked using the material setting of the same name.
- Transparency — transparency amount, color and roughness. The color and roughness parameters supported only for refraction-based transparency (thin-walled off).
- Thin-walled — use generic (thin-walled on) or refraction-based (thin-walled off) transparency.
- Alpha Mode — material transparency mode.
- Depth Write — disable for additive transparency composing (see above).
By default in 3ds Max, the Thin-walled parameter is unchecked, which disables the most typical transparency rendering you expected to see in your interactive app. Always keep an eye on this setting when you're dealing with the transparent physical materials.
Any combination of maps and images can be used to influence the transparency via the Transparency Map input.
Transparency for Standard Materials
Transparency in standard materials can be tweaked using Opacity in material settings.
The Opacity input of standard materials can be used to create interesting dependencies for better realism.
An image with transparency information in its alpha channel can be used as input. A separate alpha image can also be used instead.
Use the Alpha Mode dropdown to choose between transparency modes.
Transparency for glTF-compliant PBR Materials
In order to enable transparency for such materials, one should use a separate alpha map connected with the Transparency Map input of the physical material.
Use the Alpha Mode dropdown to choose between the supported transparency modes: Auto, Opaque, Blend, or Mask.
Feel free to ask on the forums!