How to use this SDK

The SpeedTree SDK is the run-time component of a powerful real-time vegetation system. It is written in C++ and designed to be integrated into a real-time engine on multiple platforms.

Artists use the standalone SpeedTree Modeler application to design and edit vegetation content, exporting their results to the .stsdk (SpeedTree SDK) file format. The SpeedTree SDK can be used to read .stsdk files and provide vertex buffer data to feed into an external renderer. At its highest level, it can be used to manage the rendering of forests composed of millions of trees, complex wind effects, smooth level of detail, lighting and shadows, and undergrowth/grass. Because the SDK is organized into several libraries, you are in control of the level of integration, using as much or as little as you need.

This compartmentalization of the SDK has sprung out of feedback from hundreds of development teams around the world, each with a unique need and perspective for how the SDK might best help them.

What are the integration options?

1. Export meshes from the SpeedTree Modeler, bypassing the SDK entirely.

2. Read the geometry using the Core Library.

3. Use the Forest Library to manage at a forest level.

4. Use the Render Interface and Platform Specific Renderer libraries to render the entire forest.

Hybrid approaches

Combinations of the approaches above are also possible. One approach we see somewhat often is leveraging just the wind system, where per-vertex wind data from the Modeler is retained and fed to the wind vertex shader functions provided in the reference application. More information on this approach can be found in the Wind section on the shader overview page.