Node Material Editor
Babylon.js includes the Node Material Editor (NME), a visual node-based tool for creating custom materials without writing shader code:
// Load a material created in the Node Material Editor
BABYLON.NodeMaterial.ParseFromFileAsync("", "materials/custom.json", scene).then(nodeMaterial => {
sphere.material = nodeMaterial;
// Access and animate material properties
const timeBlock = nodeMaterial.getBlockByName("Time");
scene.onBeforeRenderObservable.add(() => {
timeBlock.value = performance.now() / 1000;
});
});These material capabilities provide extensive control over visual appearance, from basic colored surfaces to complex physically-based materials with realistic light interaction. In Babylon.js 8.0, the Node Material Editor also supports WGSL shader generation for WebGPU.