Enables quick integration of physically-based materials into rendering applications

Get Started

The NVIDIA MDL SDK is a set of tools to integrate MDL support into rendering applications. It contains components for loading, inspecting, editing of material definitions as well as compiling MDL functions to GLSL, HLSL, Native x86, PTX and LLVM-IR. With the NVIDIA MDL SDK, any physically based renderer can easily add support for MDL and join the MDL eco-system.

The NVIDIA Material Definition Language (MDL) is a programming language for defining physically based materials for rendering. A rich vocabulary of material building blocks based on bidirectional scattering distribution functions (bsdf) allows creation of a wide range of physical materials such as woods, fabrics, translucent plastics and more. The language is flexible enough to allow applications to add support for popular material models without additional changes in a renderers core shading code, examples would be the Epic’s Unreal physical material model or the material model used for in X-Rite’s SVBRDF model. MDL is defined in a way that it's abstract enough to allow renderers of various architectures to support it. A C-like language for defining texturing functions allows the implementation of custom texturing workflows, texture projections and procedural textures.

MDL Integrations

For application users

MDL is supported in many professional and consumer applications. Refer to our partner section for a list of applicaitons that natively support MDL.

For application developers

The MDL SDK API is a comprehensive C++ API for integration and customization tasks, which can be dynamically loaded and linked to visualization applications at runtime. The API allows applications to load MDL modules, analyze and understand the structure of a material so it can build a UI for material editing and render the results.

Download SDK


Adobe Dimension CC
Substance Designer
Substance Painter

Project Lavina

Solidworks Visualize


NVIDIA Iray NVIDIA Omniverse

Quixel Megascans

Siemens NX Raytrace Studio

MDL SDK in Action

We'll discuss the basics of NVIDIA's material definition language, showing how a single material can be used to define matching appearances between different renderers and rendering techniques. End users will learn how physically based ...


The NVIDIA MDL SDK provides a rich toolset to integrate MDL in a wide range of renderers, from physically based ray tracing to real-time applications. In this tutorial-like session, we'll show how MDL materials and texturing functions can be compile ...


We'll discuss how to use MDL and the MDL SDK in a real-time ray tracing renderer. Our talk is based on experience with our own renderer at NVIDIA.


We'll present how Substance Suite helps Color & Trim Designer and Visualization expert for digital material creation. We will specifically focus on material scanning pipeline including AxF format from XRite, Tac7 material scanner and MDL materia ...


Ready to Get Started with MDL?