Skip to content

LiteFX::Rendering::IBottomLevelAccelerationStructure::withTriangleMesh

Adds a triangle mesh to the BLAS.

Synopsis

Declared in <litefx/rendering_api.hpp>

template<typename TSelf>
TSelf&& withTriangleMesh(this 
    TSelf&& self,
    SharedPtr<IVertexBuffer const> const& vertexBuffer,
    SharedPtr<IIndexBuffer const> const& indexBuffer = nullptr,
    SharedPtr<IBuffer const> const& transformBuffer = nullptr,
    GeometryFlags flags = GeometryFlags::None);

Exceptions

NameThrown on
RuntimeExceptionThrown, if the acceleration structure already contains bounding boxes.

Return Value

A reference to the current BLAS.

Parameters

NameDescription
vertexBufferThe vertex buffer that stores the mesh vertices.
indexBufferThe index buffer that stores the mesh indices.
transformBufferA buffer that stores a row-major 3x4 transformation matrix applied to the vertices when building the BLAS.
flagsThe flags that control how the primitives in the geometry behaves during ray-tracing.