ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::visualization::rendering Namespace Reference

Classes

class  Camera
 
class  CameraInteractorLogic
 
class  CameraSphereInteractorLogic
 
class  CloudViewerScene
 
class  ColorGradingParams
 Manages. More...
 
class  FilamentCamera
 
class  EngineInstance
 
class  FilamentMaterialModifier
 
class  TemporaryLineSetBuilder
 
class  TemporaryMeshBuilder
 
class  GeometryBuffersBuilder
 
class  TriangleMeshBuffersBuilder
 
class  PointCloudBuffersBuilder
 
class  LineSetBuffersBuilder
 
class  TMeshBuffersBuilder
 
class  TPointCloudBuffersBuilder
 
class  TGaussianSplatBuffersBuilder
 
class  TLineSetBuffersBuilder
 
class  FilamentRenderer
 
class  FilamentRenderToBuffer
 
class  FilamentResourceManager
 
struct  RenderRequest
 
class  FilamentScene
 
class  FilamentView
 
class  Gradient
 
class  IBLRotationInteractorLogic
 
struct  Light
 
class  LightDirectionInteractorLogic
 
class  Material
 
struct  TextureSamplerParameters
 
class  MaterialModifier
 
struct  MaterialRecord
 
class  MatrixInteractorLogic
 
struct  TriangleMeshModel
 
class  ModelInteractorLogic
 
class  ResourceLoadRequest
 
class  Renderer
 
struct  REHandle_abstract
 
struct  REHandle
 
struct  LightDescription
 
class  RenderToBuffer
 
class  RotationInteractorLogic
 
class  Scene
 
class  View
 
class  PyOffscreenRenderer
 

Typedefs

using PBDParams = std::tuple< FilamentRenderToBuffer *, FilamentRenderToBuffer::BufferReadyCallback >
 
typedef REHandle< EntityType::ViewViewHandle
 
typedef REHandle< EntityType::SceneSceneHandle
 
typedef REHandle< EntityType::GeometryGeometryHandle
 
typedef REHandle< EntityType::LightLightHandle
 
typedef REHandle< EntityType::IndirectLightIndirectLightHandle
 
typedef REHandle< EntityType::SkyboxSkyboxHandle
 
typedef REHandle< EntityType::CameraCameraHandle
 
typedef REHandle< EntityType::MaterialMaterialHandle
 
typedef REHandle< EntityType::MaterialInstanceMaterialInstanceHandle
 
typedef REHandle< EntityType::TextureTextureHandle
 
typedef REHandle< EntityType::RenderTargetRenderTargetHandle
 
typedef REHandle< EntityType::VertexBufferVertexBufferHandle
 
typedef REHandle< EntityType::IndexBufferIndexBufferHandle
 

Enumerations

enum class  EntityType : std::uint16_t {
  None = 0 , View , Scene , Geometry ,
  Light , IndirectLight , Skybox , Camera ,
  Material , MaterialInstance , Texture , RenderTarget ,
  VertexBuffer , IndexBuffer , Count
}
 

Functions

const std::string kAxisObjectName ("__axis__")
 
const std::string kFastModelObjectSuffix ("__fast__")
 
const std::string kLowQualityModelObjectSuffix ("__low__")
 
filament::backend::Platform * CreateEGLHeadlessPlatform ()
 
uint8_t maxLevelCount (uint32_t width, uint32_t height)
 
void OutputMaterialProperties (const visualization::rendering::MaterialRecord &mat)
 
std::shared_ptr< geometry::ImageCombineTextures (std::shared_ptr< geometry::Image > ao, std::shared_ptr< geometry::Image > rough, std::shared_ptr< geometry::Image > metal)
 
void CombineTextures (std::shared_ptr< geometry::Image > ao, std::shared_ptr< geometry::Image > rough_metal)
 
void ReadPixelsCallback (void *buffer, size_t buffer_size, void *user)
 
static filament::math::float3 eigen_to_float3 (const Eigen::Vector3f &v)
 
static filament::math::float4 eigen_to_float4 (const Eigen::Vector4f &v)
 
static const Eigen::Vector3d kSkyColor (0.0f, 0.0f, 1.0f)
 
static const Eigen::Vector3d kSunColor (1.0f, 0.9f, 0.0f)
 
std::ostream & operator<< (std::ostream &os, const REHandle_abstract &uid)
 
void pybind_material (py::module &m)
 
void pybind_rendering_classes (py::module &m_rendering)
 
void pybind_rendering (py::module &m)
 

Variables

static const double NEAR_PLANE = 0.1
 
static const double MIN_FAR_PLANE = 1.0
 
static const std::unordered_set< REHandle_abstractkDefaultResources
 
static const ResourceLoadRequest::ErrorCallback kDefaultErrorHandler
 

Typedef Documentation

◆ CameraHandle

◆ GeometryHandle

◆ IndexBufferHandle

◆ IndirectLightHandle

◆ LightHandle

◆ MaterialHandle

◆ MaterialInstanceHandle

◆ PBDParams

◆ RenderTargetHandle

◆ SceneHandle

◆ SkyboxHandle

◆ TextureHandle

◆ VertexBufferHandle

◆ ViewHandle

Enumeration Type Documentation

◆ EntityType

Enumerator
None 
View 
Scene 
Geometry 
Light 
IndirectLight 
Skybox 
Camera 
Material 
MaterialInstance 
Texture 
RenderTarget 
VertexBuffer 
IndexBuffer 
Count 

Definition at line 23 of file RendererHandle.h.

Function Documentation

◆ CombineTextures() [1/2]

std::shared_ptr<geometry::Image> cloudViewer::visualization::rendering::CombineTextures ( std::shared_ptr< geometry::Image ao,
std::shared_ptr< geometry::Image rough,
std::shared_ptr< geometry::Image metal 
)

Definition at line 1003 of file FilamentScene.cpp.

References height, image, LogWarning, and width.

◆ CombineTextures() [2/2]

void cloudViewer::visualization::rendering::CombineTextures ( std::shared_ptr< geometry::Image ao,
std::shared_ptr< geometry::Image rough_metal 
)

Definition at line 1062 of file FilamentScene.cpp.

References height, LogWarning, stride, and width.

◆ CreateEGLHeadlessPlatform()

filament::backend::Platform* cloudViewer::visualization::rendering::CreateEGLHeadlessPlatform ( )

external function defined in custom Filament EGL backend for headless rendering

◆ eigen_to_float3()

static filament::math::float3 cloudViewer::visualization::rendering::eigen_to_float3 ( const Eigen::Vector3f &  v)
inlinestatic

◆ eigen_to_float4()

static filament::math::float4 cloudViewer::visualization::rendering::eigen_to_float4 ( const Eigen::Vector4f &  v)
inlinestatic

◆ kAxisObjectName()

◆ kFastModelObjectSuffix()

const std::string cloudViewer::visualization::rendering::kFastModelObjectSuffix ( "__fast__"  )

◆ kLowQualityModelObjectSuffix()

const std::string cloudViewer::visualization::rendering::kLowQualityModelObjectSuffix ( "__low__"  )

◆ kSkyColor()

static const Eigen::Vector3d cloudViewer::visualization::rendering::kSkyColor ( 0.  0f,
0.  0f,
1.  0f 
)
static

◆ kSunColor()

static const Eigen::Vector3d cloudViewer::visualization::rendering::kSunColor ( 1.  0f,
0.  9f,
0.  0f 
)
static

◆ maxLevelCount()

uint8_t cloudViewer::visualization::rendering::maxLevelCount ( uint32_t  width,
uint32_t  height 
)
inline

Definition at line 815 of file FilamentResourceManager.cpp.

References height, max(), and width.

◆ operator<<()

◆ OutputMaterialProperties()

◆ pybind_material()

void cloudViewer::visualization::rendering::pybind_material ( py::module &  m)

◆ pybind_rendering()

void cloudViewer::visualization::rendering::pybind_rendering ( py::module &  m)

◆ pybind_rendering_classes()

void cloudViewer::visualization::rendering::pybind_rendering_classes ( py::module &  m_rendering)

Definition at line 113 of file rendering.cpp.

References cloudViewer::visualization::rendering::MaterialRecord::absorption_color, cloudViewer::visualization::rendering::MaterialRecord::absorption_distance, cloudViewer::visualization::rendering::Scene::AddCamera(), cloudViewer::visualization::rendering::Scene::AddDirectionalLight(), cloudViewer::visualization::rendering::CloudViewerScene::AddGeometry(), cloudViewer::visualization::rendering::Scene::AddGeometry(), cloudViewer::visualization::rendering::CloudViewerScene::AddModel(), cloudViewer::visualization::rendering::Scene::AddPointLight(), cloudViewer::visualization::rendering::Scene::AddSpotLight(), cloudViewer::visualization::rendering::Renderer::AddTexture(), cloudViewer::visualization::rendering::MaterialRecord::albedo_img, cloudViewer::visualization::rendering::MaterialRecord::anisotropy_img, cloudViewer::visualization::rendering::MaterialRecord::ao_img, cloudViewer::visualization::rendering::MaterialRecord::ao_rough_metal_img, cloudViewer::visualization::rendering::MaterialRecord::aspect_ratio, cloudViewer::visualization::rendering::MaterialRecord::base_anisotropy, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat_roughness, cloudViewer::visualization::rendering::MaterialRecord::base_color, cloudViewer::visualization::rendering::MaterialRecord::base_metallic, cloudViewer::visualization::rendering::MaterialRecord::base_reflectance, cloudViewer::visualization::rendering::MaterialRecord::base_roughness, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_img, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_roughness_img, cloudViewer::visualization::rendering::CloudViewerScene::ClearGeometry(), color, cloudViewer::visualization::rendering::Gradient::Point::color, cloudViewer::visualization::rendering::Camera::CopyFrom(), cloudViewer::visualization::rendering::CloudViewerScene::DARK_SHADOWS, cloudViewer::visualization::rendering::MaterialRecord::emissive_color, cloudViewer::visualization::rendering::Scene::EnableIndirectLight(), cloudViewer::visualization::rendering::Scene::EnableLightShadow(), cloudViewer::visualization::rendering::Scene::EnableSunLight(), cloudViewer::visualization::rendering::MaterialRecord::generic_imgs, cloudViewer::visualization::rendering::MaterialRecord::generic_params, cloudViewer::visualization::rendering::CloudViewerScene::GeometryIsVisible(), cloudViewer::visualization::rendering::Scene::GeometryIsVisible(), cloudViewer::visualization::rendering::Scene::GeometryShadows(), cloudViewer::visualization::rendering::CloudViewerScene::GetBackgroundColor(), cloudViewer::visualization::rendering::CloudViewerScene::GetBoundingBox(), cloudViewer::visualization::rendering::CloudViewerScene::GetCamera(), cloudViewer::visualization::rendering::View::GetCamera(), cloudViewer::visualization::rendering::CloudViewerScene::GetDownsampleThreshold(), cloudViewer::visualization::rendering::Camera::GetFar(), cloudViewer::visualization::rendering::Camera::GetFieldOfView(), cloudViewer::visualization::rendering::Camera::GetFieldOfViewType(), cloudViewer::visualization::rendering::CloudViewerScene::GetGeometryTransform(), cloudViewer::visualization::rendering::Gradient::GetMode(), cloudViewer::visualization::rendering::Camera::GetNear(), cloudViewer::visualization::rendering::Gradient::GetPoints(), cloudViewer::visualization::rendering::ColorGradingParams::GetQuality(), cloudViewer::visualization::rendering::PyOffscreenRenderer::GetScene(), cloudViewer::visualization::rendering::CloudViewerScene::GetScene(), cloudViewer::visualization::rendering::ColorGradingParams::GetTemperature(), cloudViewer::visualization::rendering::ColorGradingParams::GetTint(), cloudViewer::visualization::rendering::ColorGradingParams::GetToneMapping(), cloudViewer::visualization::rendering::CloudViewerScene::GetView(), cloudViewer::visualization::rendering::MaterialRecord::gradient, cloudViewer::visualization::rendering::MaterialRecord::ground_plane_axis, cloudViewer::visualization::rendering::CloudViewerScene::HARD_SHADOWS, cloudViewer::visualization::rendering::MaterialRecord::has_alpha, cloudViewer::visualization::rendering::CloudViewerScene::HasGeometry(), cloudViewer::visualization::rendering::Scene::HasGeometry(), height, cloudViewer::visualization::rendering::Camera::Horizontal, cloudViewer::visualization::rendering::ColorGradingParams::kAces, cloudViewer::visualization::rendering::ColorGradingParams::kAcesLegacy, cloudViewer::visualization::rendering::ColorGradingParams::kDisplayRange, cloudViewer::visualization::rendering::ColorGradingParams::kFilmic, cloudViewer::visualization::rendering::Gradient::kGradient, cloudViewer::visualization::rendering::ColorGradingParams::kHigh, cloudViewer::visualization::rendering::ColorGradingParams::kLinear, cloudViewer::visualization::rendering::ColorGradingParams::kLow, cloudViewer::visualization::rendering::Gradient::kLUT, cloudViewer::visualization::rendering::ColorGradingParams::kMedium, cloudViewer::visualization::rendering::View::kPCF, cloudViewer::visualization::rendering::ColorGradingParams::kReinhard, cloudViewer::visualization::rendering::ColorGradingParams::kUchimura, cloudViewer::visualization::rendering::ColorGradingParams::kUltra, cloudViewer::visualization::rendering::Scene::kUpdateColorsFlag, cloudViewer::visualization::rendering::Scene::kUpdateNormalsFlag, cloudViewer::visualization::rendering::Scene::kUpdatePointsFlag, cloudViewer::visualization::rendering::Scene::kUpdateUv0Flag, cloudViewer::visualization::rendering::View::kVSM, cloudViewer::visualization::rendering::MaterialRecord::line_width, LogWarning, cloudViewer::visualization::rendering::Camera::LookAt(), cloudViewer::visualization::rendering::TriangleMeshModel::MeshInfo::material_idx, cloudViewer::visualization::rendering::TriangleMeshModel::materials_, cloudViewer::visualization::rendering::CloudViewerScene::MED_SHADOWS, cloudViewer::visualization::rendering::TriangleMeshModel::MeshInfo::mesh, cloudViewer::visualization::rendering::TriangleMeshModel::MeshInfo::mesh_name, cloudViewer::visualization::rendering::TriangleMeshModel::meshes_, cloudViewer::visualization::rendering::MaterialRecord::metallic_img, cloudViewer::visualization::rendering::CloudViewerScene::ModifyGeometryMaterial(), name, cloudViewer::visualization::rendering::CloudViewerScene::NO_SHADOWS, cloudViewer::visualization::rendering::MaterialRecord::normal_img, cloudViewer::visualization::rendering::Camera::Ortho, cloudViewer::visualization::rendering::Camera::Perspective, cloudViewer::visualization::rendering::MaterialRecord::point_size, cloudViewer::visualization::rendering::MaterialRecord::reflectance_img, cloudViewer::visualization::rendering::Scene::RemoveCamera(), cloudViewer::visualization::rendering::CloudViewerScene::RemoveGeometry(), cloudViewer::visualization::rendering::Scene::RemoveGeometry(), cloudViewer::visualization::rendering::Scene::RemoveLight(), cloudViewer::visualization::rendering::Renderer::RemoveTexture(), cloudViewer::visualization::rendering::PyOffscreenRenderer::RenderToDepthImage(), cloudViewer::visualization::rendering::Scene::RenderToDepthImage(), cloudViewer::visualization::rendering::PyOffscreenRenderer::RenderToImage(), cloudViewer::visualization::rendering::Scene::RenderToImage(), cloudViewer::visualization::rendering::MaterialRecord::roughness_img, cloudViewer::visualization::rendering::MaterialRecord::scalar_max, cloudViewer::visualization::rendering::MaterialRecord::scalar_min, cloudViewer::visualization::rendering::Scene::SetActiveCamera(), cloudViewer::visualization::rendering::View::SetAmbientOcclusion(), cloudViewer::visualization::rendering::View::SetAntiAliasing(), cloudViewer::visualization::rendering::CloudViewerScene::SetBackground(), cloudViewer::visualization::rendering::Renderer::SetClearColor(), cloudViewer::visualization::rendering::View::SetColorGrading(), cloudViewer::visualization::rendering::CloudViewerScene::SetDownsampleThreshold(), cloudViewer::visualization::rendering::Scene::SetGeometryCulling(), cloudViewer::visualization::rendering::Scene::SetGeometryPriority(), cloudViewer::visualization::rendering::CloudViewerScene::SetGeometryTransform(), cloudViewer::visualization::rendering::Scene::SetIndirectLight(), cloudViewer::visualization::rendering::Scene::SetIndirectLightIntensity(), cloudViewer::visualization::rendering::CloudViewerScene::SetLighting(), cloudViewer::visualization::rendering::Gradient::SetMode(), cloudViewer::visualization::rendering::Gradient::SetPoints(), cloudViewer::visualization::rendering::View::SetPostProcessing(), cloudViewer::visualization::rendering::Camera::SetProjection(), cloudViewer::visualization::rendering::ColorGradingParams::SetQuality(), cloudViewer::visualization::rendering::View::SetSampleCount(), cloudViewer::visualization::rendering::View::SetShadowing(), cloudViewer::visualization::rendering::Scene::SetSunLight(), cloudViewer::visualization::rendering::ColorGradingParams::SetTemperature(), cloudViewer::visualization::rendering::ColorGradingParams::SetTint(), cloudViewer::visualization::rendering::ColorGradingParams::SetToneMapping(), cloudViewer::visualization::rendering::PyOffscreenRenderer::SetupCamera(), cloudViewer::visualization::rendering::MaterialRecord::shader, cloudViewer::visualization::rendering::CloudViewerScene::ShowAxes(), cloudViewer::visualization::rendering::CloudViewerScene::ShowGeometry(), cloudViewer::visualization::rendering::Scene::ShowGeometry(), cloudViewer::visualization::rendering::CloudViewerScene::ShowGroundPlane(), cloudViewer::visualization::rendering::CloudViewerScene::ShowSkybox(), SIZE_MAX, cloudViewer::visualization::rendering::CloudViewerScene::SOFT_SHADOWS, cloudViewer::visualization::rendering::MaterialRecord::sRGB_color, cloudViewer::visualization::rendering::MaterialRecord::thickness, cloudViewer::visualization::rendering::MaterialRecord::transmission, cloudViewer::visualization::rendering::Camera::Unproject(), cloudViewer::visualization::rendering::Scene::UpdateGeometry(), cloudViewer::visualization::rendering::Scene::UpdateLightColor(), cloudViewer::visualization::rendering::Scene::UpdateLightConeAngles(), cloudViewer::visualization::rendering::Scene::UpdateLightDirection(), cloudViewer::visualization::rendering::Scene::UpdateLightFalloff(), cloudViewer::visualization::rendering::Scene::UpdateLightIntensity(), cloudViewer::visualization::rendering::Scene::UpdateLightPosition(), cloudViewer::visualization::rendering::CloudViewerScene::UpdateMaterial(), cloudViewer::visualization::rendering::Renderer::UpdateTexture(), cloudViewer::visualization::rendering::Gradient::Point::value, cloudViewer::visualization::rendering::Camera::Vertical, width, cloudViewer::visualization::rendering::Scene::XY, cloudViewer::visualization::rendering::Scene::XZ, and cloudViewer::visualization::rendering::Scene::YZ.

Referenced by pybind_rendering().

◆ ReadPixelsCallback()

void cloudViewer::visualization::rendering::ReadPixelsCallback ( void *  buffer,
size_t  buffer_size,
void *  user 
)

Variable Documentation

◆ kDefaultErrorHandler

const ResourceLoadRequest::ErrorCallback cloudViewer::visualization::rendering::kDefaultErrorHandler
static
Initial value:
=
[](const ResourceLoadRequest& request,
const uint8_t code,
const std::string& details) {
if (!request.path_.empty()) {
utility::
Logger::LogWarning_(__FILE__, __LINE__, static_cast<const char *>( __PRETTY_FUNCTION__ ), "Resource request for path {} failed:\n* Code: {}\n* " "Error: {}", request.path_.data(), code, details.data() );
} else if (request.data_size_ > 0) {
utility::
Logger::LogWarning_(__FILE__, __LINE__, static_cast<const char *>( __PRETTY_FUNCTION__ ), "Resource request failed:\n* Code: {}\n * Error: {}", code, details.data() );
} else {
utility::
Logger::LogWarning_(__FILE__, __LINE__, static_cast<const char *>( __PRETTY_FUNCTION__ ), "Resource request failed: Malformed request" );
}
}

Definition at line 22 of file Renderer.cpp.

◆ kDefaultResources

const std::unordered_set<REHandle_abstract> cloudViewer::visualization::rendering::kDefaultResources
static
Initial value:
= {
FilamentResourceManager::kDefaultLit,
FilamentResourceManager::kDefaultLitWithTransparency,
FilamentResourceManager::kDefaultUnlit,
FilamentResourceManager::kDefaultNormalShader,
FilamentResourceManager::kDefaultDepthShader,
FilamentResourceManager::kDefaultUnlitGradientShader,
FilamentResourceManager::kDefaultUnlitSolidColorShader,
FilamentResourceManager::kDefaultUnlitBackgroundShader,
FilamentResourceManager::kInfinitePlaneShader,
FilamentResourceManager::kDefaultLineShader,
FilamentResourceManager::kDefaultUnlitPolygonOffsetShader,
FilamentResourceManager::kDepthMaterial,
FilamentResourceManager::kNormalsMaterial,
FilamentResourceManager::kDefaultTexture,
FilamentResourceManager::kDefaultColorMap,
FilamentResourceManager::kDefaultNormalMap}

Definition at line 331 of file FilamentResourceManager.cpp.

Referenced by cloudViewer::visualization::rendering::FilamentResourceManager::Destroy().

◆ MIN_FAR_PLANE

const double cloudViewer::visualization::rendering::MIN_FAR_PLANE = 1.0
static

◆ NEAR_PLANE

const double cloudViewer::visualization::rendering::NEAR_PLANE = 0.1
static