18 #ifndef IGNITION_RENDERING_OGRE2_OGRE2DEPTHCAMERA_HH_ 19 #define IGNITION_RENDERING_OGRE2_OGRE2DEPTHCAMERA_HH_ 48 inline namespace IGNITION_RENDERING_VERSION_NAMESPACE {
51 class Ogre2DepthCameraPrivate;
64 public:
virtual void Init()
override;
67 public:
virtual void Destroy()
override;
70 public:
virtual void CreateRenderTexture();
74 public:
virtual void CreateDepthTexture()
override;
78 private:
void CreateWorkspaceInstance();
81 public:
virtual void PreRender()
override;
84 public:
virtual void PostRender()
override;
88 public:
virtual const float *DepthData()
const override;
95 unsigned int,
const std::string &)> _subscriber)
override;
101 std::function<
void(
const float *,
unsigned int,
unsigned int,
102 unsigned int,
const std::string &)> _subscriber)
override;
105 public:
virtual void Render()
override;
109 public:
virtual void SetFarClipPlane(
const double _far)
override;
113 public:
virtual void SetNearClipPlane(
const double _near)
override;
118 public:
double NearClipPlane()
const override;
123 public:
double FarClipPlane()
const override;
130 public:
void SetShadowsNodeDefDirty();
145 private:
void RemoveWorkspaceCrashWorkaround();
148 public:
void AddRenderPass(
const RenderPassPtr &_pass)
override;
158 protected:
static double LimitFOV(
const double _fov);
161 protected:
void CreateCamera();
Depth camera used to render depth data into an image buffer.
Definition: Ogre2DepthCamera.hh:54
Ogre2.x implementation of the scene class.
Definition: Ogre2Scene.hh:56
Represents a render-target to which cameras can render images.
Definition: RenderTarget.hh:37
Definition: BaseCamera.hh:41
Definition: OgreCamera.hh:27
Ogre::Camera * ogreCamera
Pointer to the ogre camera.
Definition: Ogre2DepthCamera.hh:164