SetVertexBufferTransformation

Sets the transformation for a Vertex Buffer.
The transformation will always be calculated in 64 bit, even if the vertex element size is 32 bit.
This function can be called just before updating the vertex buffer.

Syntax

//
//   Strong typing definition
//
void            SetVertexBufferTransformation(
                        OwlModel                model,
                        const double            * matrix
                    );


//
//   Weak typing definition
//
void    __declspec(dllexport) __stdcall SetVertexBufferTransformation(
                                                int64_t                 model,
                                                const double            * matrix
                                            );
    

Property model

Size: 64 bit / 8 byte (value)
The handle to the model. The model handle is static during its existance. Several models can be opened simultaniously within one session. Different models are always independent, threads are allowed to be running on different models simultaniously.

Property matrix

Size: 32 bit / 4 byte (reference)
The matrix is expected to be filled with a 12 element double value allocated by the host (i.e. 96 bytes / 12 doubles). The matrix values are defined column by column as is common for DirectX, OpenGL and VULKAN, i.e. _11, _12, _13, _21, ... _42, _43.