Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page provides information on the Chaos Phoenix application programming interface (API).

Overview

...

The Chaos Phoenix FD API is included with the installation of Phoenix FD for Autodesk® 3ds Max®. It provides C++ API for several different purposes:

  • Loading of grid and particle data stored in AUR, VDB or F3D cache files.
  • Runtime access to the grid volume and particle shading core of a Phoenix Simulator node in 3ds Max, allowing you to read and shade this data in your own plugin.
  • Runtime access to different Phoenix nodes, allowing you to prepare them for rendering on demand, start and stop a simulation, access the parameters of different nodes, load and save presets.
  • Access to the Phoenix FD color gradients and diagram curves, allowing you to embed them in your own application.

 

Installation

...

The Phoenix FD API is normally installed in "C:\Program Files\Chaos Group\Phoenix FD\3ds Max NNNN for x64\SDK" where NNNN is the version of 3ds Max (2021, 2020, etc).

 

Structure

...

The Phoenix FD API includes the following folders:

Fancy Bullets
typecircle
  • \include – Contains the header files needed to interface with Phoenix FD API.
  • \lib – Contains the Phoenix FD API binaries for both static and dynamically linked versions of the Phoenix FD API
  • \samples – Contains example projects that use different functions of the Phoenix FD API.

 

Anchor
UsingPhoenixFDSDK
UsingPhoenixFDSDK

Using the Phoenix

...

API

...

The Phoenix FD Phoenix API is provided as a static and dynamic library. Depending on your project, you may pick the static or dynamic version of the library. Usually the dynamic version is preferred when there is a dependency to any version of V-Ray SDK, as Phoenix FD API depends on vutils_s.lib.

Using Phoenix FD API as a static library requires:

Fancy Bullets
typecircle
  • \lib\aurloader_s.lib and \lib\vutils_s.lib to be added as an additional dependency to the linker.

Using Phoenix FD API as a dynamic library requires:

Fancy Bullets
typecircle
  • AURLOADER_DYNAMIC_LIB to be added the compiler settings as a preprocessor definition.
  • \lib\aurloader.lib to be added as an additional dependency to the linker.
  • \lib\aurloader.dll to be available at run time to the executable linked to \lib\aurloader.lib.

Phoenix FD API is built with the vc14 C++ Platform Toolset for all 3ds Max versions and for both V_Ray Next and V-Ray 5, with "/MD" Runtime Library flag.


Samples

...

The Phoenix FD API comes with two code sample projects: GridView and CSVParticles.

...

See the License Agreements and Copyrights page for copyright notices.

...

Fancy Bullets
typecircle
  • Place all external libraries in GridView/external_libs.
  • Use CMake to generate project files that best suite you needs. Please take in account the C++ Platform Toolset that is used by your version of Phoenix FD API. See the Using Phoenix FD API section.
  • Set PHOENIX_SDK_DIR to Phoenix FD API, for example "C:\Program Files\Chaos Group\Phoenix FD\3ds Max NNNN for x64\SDK".
  • Generate the project files and build.

...

CSVParticles exports particle groups stored in Phoenix FD Phoenix *.aur files to *.csv recognized by Thinkbox Krakatoa (http://www.thinkboxsoftware.com/krak-csv-file-format/).

...

Fancy Bullets
typecircle
  • Place all external libraries in CSVParticles/external_libs.
  • Use CMake to generate project files that best suite you needs. Please take in account the C++ Platform Toolset that is used by your version of Phoenix FD API. See the Using Phoenix FD API section.
  • Set PHOENIX_SDK_DIR to Phoenix FD API, for example "C:\Program Files\Chaos Group\Phoenix FD\3ds Max NNNN for x64\SDK".
  • Generate the project files and build.