Software::Grafik
Nvidia öffnet Material Definition Language SDK
Nvidia hat das Material Definition Language SDK, ein Entwicklerkit zur Definition von Materialien, aus denen realistische Objektoberflächen gebildet werden, unter eine freie Lizenz gestellt.
Mirko Lindner
Das
Material Definition Language SDK ist eine Software von Nvidia, die es für Linux und Windows gibt. Die darin enthaltenen Werkzeuge ermöglichen es, Unterstützung für die Material Definition Language (MDL) von Nvidia in Anwendungen einzubauen. Das SDK enthält Komponenten zum Laden, Untersuchen und Editieren von Materialdefinitionen und kann MDL-Funktionen in GLSL, PTX und LLVM-IR kompilieren.
Die Material Definition Language (MDL) ist eine Kreation von Nvidia, mit der man Materialeigenschaften für das Rendering beschreiben kann. Sie stellt eine große Menge an Eigenschaften bereit, mit denen sich Materialien beschreiben lassen. Sie beruht letztlich auf bidirektionalen Lichtstreuungs-Funktionen und kann damit Holz, Gewebe, durchscheinende Kunststoffe und vieles mehr beschreiben. Die Sprache ist laut Nvidia flexibel genug, dass Anwendungen Unterstützung für populäre Materialmodelle ohne weitere Änderung im Shading-Code des Renderers anbieten können. Beispiele sind das Unreal-Modell für physische Materialien oder das Materialmodell von SVBRDF. MDL ist so weit abstrahiert, dass es von Renderern verschiedener Architekturen unterstützt werden kann. Es handelt sich um eine wohldefinierte Programmiersprache mit C-ähnlicher Syntax, in der Funktionen zur Definition und Erzeugung von Texturen geschrieben werden können.
Die Programmierschnittstelle des MDL SDK ist eine umfangreiche C++-Schnittstelle und wird als dynamische Bibliothek genutzt. Anwendungen können zusätzliche MDL-Module laden und mit den verfügbaren Informationen grafische Oberflächen erstellen, um Materialien zu editieren und die Definitionen zu rendern. Anwendungen, die MDL nutzen, sind Iray, von Nvidia, Chaos Group Vray, Adobe Dimension und ESI IC.IDO. Der Download des SDKs ist von der SDK-Webseite möglich. Die freie Version des SDK steht ab sofort unter der BSD-Dreiklausel-Lizenz.