17 #ifndef IGNITION_RENDERING_OGRE2_OGRE2CAMERA_HH_ 18 #define IGNITION_RENDERING_OGRE2_OGRE2CAMERA_HH_ 37 inline namespace IGNITION_RENDERING_VERSION_NAMESPACE {
40 class Ogre2CameraPrivate;
41 class Ogre2SelectionBuffer;
55 public:
virtual void SetHFOV(
const math::Angle &_hfov)
override;
58 public:
virtual double AspectRatio()
const override;
61 public:
virtual void SetAspectRatio(
const double _ratio)
override;
64 public:
virtual unsigned int AntiAliasing()
const override;
67 public:
virtual void SetAntiAliasing(
const unsigned int _aa)
override;
70 public:
virtual void SetFarClipPlane(
const double _far)
override;
73 public:
virtual void SetNearClipPlane(
const double _near)
override;
75 public:
virtual math::Color BackgroundColor()
const;
77 public:
virtual void SetBackgroundColor(
const math::Color &_color);
81 public:
virtual MaterialPtr BackgroundMaterial()
const;
85 public:
virtual void SetBackgroundMaterial(
MaterialPtr _material);
88 public:
virtual void Render()
override;
97 public:
virtual void SetProjectionMatrix(
109 &_mousePos)
override;
113 public:
virtual void SetMaterial(
117 public:
virtual unsigned int RenderTextureGLId()
const override;
120 public:
virtual void RenderTextureMetalId(
void *_textureIdPtr)
124 public:
void SetShadowsDirty()
override;
127 public:
virtual void Destroy()
override;
130 public:
virtual void SetVisibilityMask(uint32_t _mask)
override;
137 public:
virtual Ogre::Camera *
OgreCamera()
const override;
143 protected:
virtual void Init()
override;
146 protected:
virtual void CreateRenderTexture();
150 protected:
virtual void SetSelectionBuffer();
153 private:
void CreateCamera();
160 private:
void SetShadowsNodeDefDirty();
163 protected: Ogre::Camera *ogreCamera =
nullptr;
Definition: BaseCamera.hh:44
Generates a selection buffer object for a given camera. The selection buffer is used of entity select...
Definition: Ogre2SelectionBuffer.hh:47
CameraProjectionType
Enum for projection types.
Definition: Camera.hh:39
Ogre2.x implementation of the scene class.
Definition: Ogre2Scene.hh:57
Represents a render-target to which cameras can render images.
Definition: RenderTarget.hh:37
math::Color backgroundColor
Color of background.
Definition: Ogre2Camera.hh:172
Ogre2.x implementation of the camera class.
Definition: Ogre2Camera.hh:44
A Ray Query class used for computing ray object intersections.
Definition: Ogre2RayQuery.hh:38
Definition: OgreCamera.hh:28
Definition: OgreCamera.hh:42
Mixin class to provide direct access to Ogre objects.
Definition: Ogre2ObjectInterface.hh:31
Ogre2RenderTargetPtr renderTexture
Pointer to render texture.
Definition: Ogre2Camera.hh:169