31 #include <filament/utils/Entity.h> 33 #include <unordered_map> 34 #include <unordered_set> 45 namespace visualization {
47 class FilamentMaterialModifier;
48 class FilamentRenderToBuffer;
49 class FilamentResourceManager;
56 void* native_drawable,
64 void UpdateSwapChain()
override;
66 void BeginFrame()
override;
68 void EndFrame()
override;
81 const std::shared_ptr<geometry::Image>& image)
override;
91 std::shared_ptr<visualization::RenderToBuffer> CreateBufferRenderer()
102 filament::Engine& engine_;
103 filament::Renderer* renderer_ =
nullptr;
104 filament::SwapChain* swap_chain_ =
nullptr;
106 std::unordered_map<REHandle_abstract, std::unique_ptr<FilamentScene>>
108 std::unique_ptr<FilamentScene> gui_scene_;
110 std::unique_ptr<FilamentMaterialModifier> materials_modifier_;
113 std::unordered_set<FilamentRenderToBuffer*> buffer_renderers_;
115 bool frame_started_ =
false;
FilamentScene * GetGuiScene() const
Definition: FilamentRenderer.h:97
Definition: MaterialModifier.h:116
Definition: FilamentResourceManager.h:59
Definition: TriangleMesh.h:746
Definition: Renderer.h:64
Definition: FilamentRenderToBuffer.h:45
Definition: Open3DViewer.h:29
Definition: RendererHandle.h:110
Definition: FilamentRenderer.h:53
Definition: FilamentScene.h:53
Definition: Renderer.h:45
Definition: FilamentCamera.h:31