The topics in this section describe the "new" rendering API for 3ds Max, introduced in 3ds Max 2017.
A new SDK component, the Rendering API, has been introduced to make writing rendering plugins easier and less error-prone than it has been in the past. Its goals are:
Renderer
) into a suite of well-defined interfaces that simplify the design and maintenance of a renderer plugin.A renderer plugin, implemented from this API, should be much simpler to develop - but it should also be better positioned to evolve over time, as more code and behavior are added to the API.
The headers and classes described in these topics are located in these locations in the 3ds Max SDK:
The 3ds Max SDK has traditionally avoided the use of STL to avoid compatibility issues when mixing different compiler versions. But with the advent of C++11, the language has made large strides through STL directly.
The Rendering API makes extensive use of the C++11 smart pointers - unique_ptr
and shared_ptr
- to enforce a simpler design and safer code. It also uses std::vector
, where appropriate, as a replacement to MaxSDK::Array
.