ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
VtkUtils::VtkMultiTextureRenderer Class Reference

Multi-texture renderer - Efficient and robust multi-texture mesh rendering support. More...

#include <VtkMultiTextureRenderer.h>

Classes

struct  Impl
 
struct  PBRMaterial
 Generic PBR material structure (supports multi-texture) More...
 

Public Member Functions

 VtkMultiTextureRenderer ()
 
 ~VtkMultiTextureRenderer ()
 
bool ApplyPBRMaterial (vtkSmartPointer< vtkActor > actor, const PBRMaterial &material, vtkSmartPointer< vtkPolyData > polydata, vtkRenderer *renderer=nullptr)
 Apply PBR material to actor (Filament style) More...
 

Detailed Description

Multi-texture renderer - Efficient and robust multi-texture mesh rendering support.

Features:

  • Support PBR material rendering with multiple textures
  • Automatic texture caching and management
  • Support VTK 9.0+ PBR rendering pipeline
  • Thread-safe texture loading

Definition at line 37 of file VtkMultiTextureRenderer.h.

Constructor & Destructor Documentation

◆ VtkMultiTextureRenderer()

VtkUtils::VtkMultiTextureRenderer::VtkMultiTextureRenderer ( )

Definition at line 91 of file VtkMultiTextureRenderer.cpp.

◆ ~VtkMultiTextureRenderer()

VtkUtils::VtkMultiTextureRenderer::~VtkMultiTextureRenderer ( )

Definition at line 100 of file VtkMultiTextureRenderer.cpp.

Member Function Documentation

◆ ApplyPBRMaterial()

bool VtkUtils::VtkMultiTextureRenderer::ApplyPBRMaterial ( vtkSmartPointer< vtkActor >  actor,
const PBRMaterial material,
vtkSmartPointer< vtkPolyData >  polydata,
vtkRenderer *  renderer = nullptr 
)

Apply PBR material to actor (Filament style)

Parameters
actorVTK actor object
materialPBR material structure
polydataPolygon data (for texture coordinates)
rendererVTK renderer (for IBL configuration)
Returns
Returns true on success

Definition at line 228 of file VtkMultiTextureRenderer.cpp.

References VtkUtils::VtkMultiTextureRenderer::PBRMaterial::ao, CVLog::Error(), VtkUtils::VtkMultiTextureRenderer::PBRMaterial::metallic, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::opacity, CVLog::Print(), CVLog::PrintDebug(), CVLog::PrintVerbose(), result, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::roughness, and CVLog::Warning().


The documentation for this class was generated from the following files: