16 #ifndef SURGSIM_GRAPHICS_RENDERPASS_H 17 #define SURGSIM_GRAPHICS_RENDERPASS_H 21 #include "SurgSim/Framework/SceneElement.h" 22 #include "SurgSim/Graphics/Camera.h" 39 class ScreenSpaceQuadRepresentation;
61 bool doInitialize()
override;
66 bool setRenderTarget(std::shared_ptr<RenderTarget> target);
70 std::shared_ptr<RenderTarget> getRenderTarget();
75 virtual void setRenderOrder(SurgSim::Graphics::Camera::RenderOrder order,
int value);
79 std::shared_ptr<Camera> getCamera();
84 bool setMaterial(std::shared_ptr<SurgSim::Framework::Component> material);
88 std::shared_ptr<Material> getMaterial();
93 void showColorTarget(
int x,
int y,
int width,
int height);
96 void hideColorTarget();
101 void showDepthTarget(
int x,
int y,
int width,
int height);
104 void hideDepthTarget();
109 std::shared_ptr<Camera> m_camera;
110 std::shared_ptr<Group> m_group;
111 std::shared_ptr<RenderTarget> m_renderTarget;
112 std::shared_ptr<Material> m_material;
114 std::shared_ptr<ScreenSpaceQuadRepresentation> m_debugColor;
115 std::shared_ptr<ScreenSpaceQuadRepresentation> m_debugDepth;
121 std::shared_ptr<ScreenSpaceQuadRepresentation> buildDebugQuad(
122 const std::string& name,
123 std::shared_ptr<Texture> texture);
Wraps glewInit() to separate the glew opengl definitions from the osg opengl definitions only imgui n...
Definition: AddRandomSphereBehavior.cpp:36
SceneElement is the basic part of a scene, it is a container of components.
Definition: SceneElement.h:51
Encapsulation of all the components necessary needed to implement a full renderpass, this SceneElement contains a Camera and Group, it can also take a Material (for shaders and uniforms) and a RenderTarget for textures that are used as the output for the camera.
Definition: RenderPass.h:50