Our engine uses X3D nodes to express everything that is rendered in 2D or 3D inside TCastleScene.
That is why, as I announced previously, I was working on X3D specification to incorporate some modern rendering features in X3D 4.0, in particular Physically-Based Rendering.
I’m happy to announce that the result of this work is now available publicly. It is X3D 4.0 2nd working draft. Despite the “draft” specification version, it is something we actually implement in CGE right now, and thus the X3D 4.0 draft specification serves also as a documentation for CGE. In particular see:
- X3DOneSidedMaterialNode, which corresponds to CGE class TAbstractOneSidedMaterialNode. This is an ancestor for all materials, it specifies e.g. normalmap and emissive color.
- UnlitMaterial, which corresponds to CGE class TUnlitMaterialNode. As the name suggests, this is “unlit” (not affected by lights) material.
- Material, which corresponds to CGE class TMaterialNode. This is the “classic” Blinn-Phong lighting model.
- PhysicalMaterial, which corresponds to CGE class TPhysicalMaterialNode. This is the Physically-Based lighting model, fully consistent with glTF 2.0 PBR materials.