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

#include <FilamentRenderer.h>

Inheritance diagram for cloudViewer::visualization::rendering::FilamentRenderer:
Collaboration diagram for cloudViewer::visualization::rendering::FilamentRenderer:

Public Member Functions

 FilamentRenderer (filament::Engine &engine, void *native_drawable, FilamentResourceManager &resource_mgr)
 
 FilamentRenderer (filament::Engine &engine, int width, int height, FilamentResourceManager &resource_mgr)
 
 ~FilamentRenderer () override
 
SceneHandle CreateScene () override
 
SceneGetScene (const SceneHandle &id) const override
 
void DestroyScene (const SceneHandle &id) override
 
virtual void SetClearColor (const Eigen::Vector4f &color) override
 
void UpdateSwapChain () override
 
void UpdateBitmapSwapChain (int width, int height) override
 
void BeginFrame () override
 
void Draw () override
 
void RequestReadPixels (int width, int height, std::function< void(std::shared_ptr< core::Tensor >)> callback) override
 
void EndFrame () override
 
void SetOnAfterDraw (std::function< void()> callback) override
 
MaterialHandle AddMaterial (const ResourceLoadRequest &request) override
 
MaterialInstanceHandle AddMaterialInstance (const MaterialHandle &material) override
 
MaterialModifierModifyMaterial (const MaterialHandle &id) override
 
MaterialModifierModifyMaterial (const MaterialInstanceHandle &id) override
 
void RemoveMaterialInstance (const MaterialInstanceHandle &id) override
 
TextureHandle AddTexture (const ResourceLoadRequest &request, bool srgb=false) override
 
TextureHandle AddTexture (const std::shared_ptr< geometry::Image > image, bool srgb=false) override
 
TextureHandle AddTexture (const t::geometry::Image &image, bool srgb=false) override
 
bool UpdateTexture (TextureHandle texture, const std::shared_ptr< geometry::Image > image, bool srgb) override
 
bool UpdateTexture (TextureHandle texture, const t::geometry::Image &image, bool srgb) override
 
void RemoveTexture (const TextureHandle &id) override
 
IndirectLightHandle AddIndirectLight (const ResourceLoadRequest &request) override
 
void RemoveIndirectLight (const IndirectLightHandle &id) override
 
SkyboxHandle AddSkybox (const ResourceLoadRequest &request) override
 
void RemoveSkybox (const SkyboxHandle &id) override
 
std::shared_ptr< visualization::rendering::RenderToBufferCreateBufferRenderer () override
 
void ConvertToGuiScene (const SceneHandle &id)
 
FilamentSceneGetGuiScene () const
 
filament::Renderer * GetNative ()
 
- Public Member Functions inherited from cloudViewer::visualization::rendering::Renderer
virtual ~Renderer ()=default
 
void RenderToImage (View *view, Scene *scene, std::function< void(std::shared_ptr< geometry::Image >)> cb)
 
void RenderToDepthImage (View *view, Scene *scene, std::function< void(std::shared_ptr< geometry::Image >)> cb, bool z_in_view_space=false)
 

Detailed Description

Definition at line 36 of file FilamentRenderer.h.

Constructor & Destructor Documentation

◆ FilamentRenderer() [1/2]

cloudViewer::visualization::rendering::FilamentRenderer::FilamentRenderer ( filament::Engine &  engine,
void *  native_drawable,
FilamentResourceManager resource_mgr 
)

Definition at line 51 of file FilamentRenderer.cpp.

◆ FilamentRenderer() [2/2]

cloudViewer::visualization::rendering::FilamentRenderer::FilamentRenderer ( filament::Engine &  engine,
int  width,
int  height,
FilamentResourceManager resource_mgr 
)
explicit

Definition at line 62 of file FilamentRenderer.cpp.

References height, and width.

◆ ~FilamentRenderer()

cloudViewer::visualization::rendering::FilamentRenderer::~FilamentRenderer ( )
override

Definition at line 74 of file FilamentRenderer.cpp.

Member Function Documentation

◆ AddIndirectLight()

IndirectLightHandle cloudViewer::visualization::rendering::FilamentRenderer::AddIndirectLight ( const ResourceLoadRequest request)
overridevirtual

◆ AddMaterial()

MaterialHandle cloudViewer::visualization::rendering::FilamentRenderer::AddMaterial ( const ResourceLoadRequest request)
overridevirtual

◆ AddMaterialInstance()

MaterialInstanceHandle cloudViewer::visualization::rendering::FilamentRenderer::AddMaterialInstance ( const MaterialHandle material)
overridevirtual

◆ AddSkybox()

SkyboxHandle cloudViewer::visualization::rendering::FilamentRenderer::AddSkybox ( const ResourceLoadRequest request)
overridevirtual

◆ AddTexture() [1/3]

TextureHandle cloudViewer::visualization::rendering::FilamentRenderer::AddTexture ( const ResourceLoadRequest request,
bool  srgb = false 
)
overridevirtual

◆ AddTexture() [2/3]

TextureHandle cloudViewer::visualization::rendering::FilamentRenderer::AddTexture ( const std::shared_ptr< geometry::Image image,
bool  srgb = false 
)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 347 of file FilamentRenderer.cpp.

References image.

◆ AddTexture() [3/3]

TextureHandle cloudViewer::visualization::rendering::FilamentRenderer::AddTexture ( const t::geometry::Image image,
bool  srgb = false 
)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 352 of file FilamentRenderer.cpp.

References image.

◆ BeginFrame()

void cloudViewer::visualization::rendering::FilamentRenderer::BeginFrame ( )
overridevirtual

◆ ConvertToGuiScene()

void cloudViewer::visualization::rendering::FilamentRenderer::ConvertToGuiScene ( const SceneHandle id)

◆ CreateBufferRenderer()

std::shared_ptr< RenderToBuffer > cloudViewer::visualization::rendering::FilamentRenderer::CreateBufferRenderer ( )
overridevirtual

◆ CreateScene()

SceneHandle cloudViewer::visualization::rendering::FilamentRenderer::CreateScene ( )
overridevirtual

◆ DestroyScene()

void cloudViewer::visualization::rendering::FilamentRenderer::DestroyScene ( const SceneHandle id)
overridevirtual

◆ Draw()

void cloudViewer::visualization::rendering::FilamentRenderer::Draw ( )
overridevirtual

◆ EndFrame()

void cloudViewer::visualization::rendering::FilamentRenderer::EndFrame ( )
overridevirtual

◆ GetGuiScene()

FilamentScene* cloudViewer::visualization::rendering::FilamentRenderer::GetGuiScene ( ) const
inline

◆ GetNative()

filament::Renderer* cloudViewer::visualization::rendering::FilamentRenderer::GetNative ( )
inline

Definition at line 102 of file FilamentRenderer.h.

◆ GetScene()

Scene * cloudViewer::visualization::rendering::FilamentRenderer::GetScene ( const SceneHandle id) const
overridevirtual

◆ ModifyMaterial() [1/2]

MaterialModifier & cloudViewer::visualization::rendering::FilamentRenderer::ModifyMaterial ( const MaterialHandle id)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 230 of file FilamentRenderer.cpp.

References LogWarning.

◆ ModifyMaterial() [2/2]

MaterialModifier & cloudViewer::visualization::rendering::FilamentRenderer::ModifyMaterial ( const MaterialInstanceHandle id)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 248 of file FilamentRenderer.cpp.

References LogWarning.

◆ RemoveIndirectLight()

void cloudViewer::visualization::rendering::FilamentRenderer::RemoveIndirectLight ( const IndirectLightHandle id)
overridevirtual

◆ RemoveMaterialInstance()

void cloudViewer::visualization::rendering::FilamentRenderer::RemoveMaterialInstance ( const MaterialInstanceHandle id)
overridevirtual

◆ RemoveSkybox()

void cloudViewer::visualization::rendering::FilamentRenderer::RemoveSkybox ( const SkyboxHandle id)
overridevirtual

◆ RemoveTexture()

void cloudViewer::visualization::rendering::FilamentRenderer::RemoveTexture ( const TextureHandle id)
overridevirtual

◆ RequestReadPixels()

void cloudViewer::visualization::rendering::FilamentRenderer::RequestReadPixels ( int  width,
int  height,
std::function< void(std::shared_ptr< core::Tensor >)>  callback 
)
overridevirtual

◆ SetClearColor()

void cloudViewer::visualization::rendering::FilamentRenderer::SetClearColor ( const Eigen::Vector4f &  color)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 102 of file FilamentRenderer.cpp.

References color.

◆ SetOnAfterDraw()

void cloudViewer::visualization::rendering::FilamentRenderer::SetOnAfterDraw ( std::function< void()>  callback)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 113 of file FilamentRenderer.cpp.

References callback.

◆ UpdateBitmapSwapChain()

void cloudViewer::visualization::rendering::FilamentRenderer::UpdateBitmapSwapChain ( int  width,
int  height 
)
overridevirtual

◆ UpdateSwapChain()

void cloudViewer::visualization::rendering::FilamentRenderer::UpdateSwapChain ( )
overridevirtual

◆ UpdateTexture() [1/2]

bool cloudViewer::visualization::rendering::FilamentRenderer::UpdateTexture ( TextureHandle  texture,
const std::shared_ptr< geometry::Image image,
bool  srgb 
)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 281 of file FilamentRenderer.cpp.

References image.

◆ UpdateTexture() [2/2]

bool cloudViewer::visualization::rendering::FilamentRenderer::UpdateTexture ( TextureHandle  texture,
const t::geometry::Image image,
bool  srgb 
)
overridevirtual

Implements cloudViewer::visualization::rendering::Renderer.

Definition at line 288 of file FilamentRenderer.cpp.

References image.


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