Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Amis | Liste de tous les membres
Référence de la classe castor3d::Camera
Graphe d'héritage de castor3d::Camera:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::Camera:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API Camera (castor::String const &name, Scene &scene, SceneNode &node, Viewport viewport, bool ownProjMtx=false)
 Constructeur. Plus de détails...
 
C3D_API Camera (castor::String const &name, Scene &scene, SceneNode &node, bool ownProjMtx=false)
 Constructeur. Plus de détails...
 
C3D_API ~Camera ()
 Destructeur. Plus de détails...
 
C3D_API void attachTo (SceneNode &node) override
 Attache cette lumière au node donné Plus de détails...
 
C3D_API void updateFrustum ()
 Met à jour le frustum. Plus de détails...
 
C3D_API void update ()
 Met à jour le viewport, la matrice de vue et le frustum. Plus de détails...
 
C3D_API void setProjection (castor::Matrix4x4f const &projection)
 Définit la matrice de projection, met à jour le viewport et le frustum. Plus de détails...
 
C3D_API bool isVisible (Geometry const &geometry, Submesh const &submesh) const
 Vérifie si un sous-maillage est visible, via une géométrie. Plus de détails...
 
Viewport const & getViewport () const
 
ViewportgetViewport ()
 
castor::Matrix4x4f const & getView () const
 
castor::Matrix4x4f const & getProjection () const
 
ViewportType getViewportType () const
 
castor::Size const & getSize () const
 
uint32_t getWidth () const
 
uint32_t getHeight () const
 
float getNear () const
 
float getFar () const
 
float getRatio () const
 
castor::Angle const & getFovY () const
 
float getProjectionScale () const
 
bool isVisible (castor::BoundingBox const &box, castor::Matrix4x4f const &transformations) const
 
bool isVisible (castor::BoundingSphere const &sphere, castor::Matrix4x4f const &transformations, castor::Point3f const &scale) const
 
bool isVisible (castor::Point3f const &point) const
 
Frustum const & getFrustum () const
 
HdrConfig const & getHdrConfig () const
 
HdrConfiggetHdrConfig ()
 
void setView (castor::Matrix4x4f const &view)
 
void resize (uint32_t width, uint32_t height)
 
void resize (castor::Size const &size)
 
void setViewportType (ViewportType value)
 
void setExposure (float value)
 
void setGamma (float value)
 
- Fonctions membres publiques hérités de castor3d::MovableObject
C3D_API MovableObject (castor::String const &name, Scene &scene, MovableType type, SceneNode &node)
 Constructeur. Plus de détails...
 
C3D_API MovableObject (castor::String const &name, Scene &scene, MovableType type)
 Constructeur. Plus de détails...
 
virtual C3D_API ~MovableObject ()
 Destructeur. Plus de détails...
 
C3D_API void detach ()
 Détache l'objet de son parent. Plus de détails...
 
SceneNodegetParent () const
 Récupère le noeud parent. Plus de détails...
 
MovableType getType () const
 Récupère le type d'objet. Plus de détails...
 
ScenegetScene () const
 
- Fonctions membres publiques hérités de castor3d::AnimableT< AnimableHanlerT >
void cleanupAnimations ()
 Vid ela map d'animations. Plus de détails...
 
bool hasAnimation (castor::String const &name) const
 Récupère une animation. Plus de détails...
 
Animation const & getAnimation (castor::String const &name) const
 Récupère une animation. Plus de détails...
 
AnimationgetAnimation (castor::String const &name)
 Récupère une animation. Plus de détails...
 
void addAnimation (AnimationPtr animation)
 Ajoute une animation. Plus de détails...
 
AnimationPtrStrMap const & getAnimations () const
 

Attributs publics

OnCameraChanged onChanged
 

Amis

class Scene
 

Membres hérités additionnels

- Types protégés hérités de castor3d::AnimableT< AnimableHanlerT >
using Animation = AnimationT< AnimableHanlerT >
 
using AnimationPtr = std::unique_ptr< Animation >
 
using AnimationPtrStrMap = std::map< castor::String, AnimationPtr >
 
- Fonctions membres protégées hérités de castor3d::AnimableT< AnimableHanlerT >
void doRemoveAnimation (castor::String const &name)
 Enlève une animation. Plus de détails...
 
template<typename AnimationType >
AnimationTypedoGetAnimation (castor::String const &name)
 Récupère une animation. Plus de détails...
 
 AnimableT (AnimableHanlerT &owner)
 
virtual C3D_API ~AnimableT ()=default
 
C3D_API AnimableT (AnimableT &&rhs)=default
 
C3D_API AnimableToperator= (AnimableT &&rhs)=delete
 
C3D_API AnimableT (AnimableT const &rhs)=delete
 
C3D_API AnimableToperator= (AnimableT const &rhs)=delete
 
- Attributs protégés hérités de castor3d::MovableObject
Scenem_scene
 
MovableType m_type
 
castor::String m_strNodeName
 
SceneNodem_sceneNode
 
OnSceneNodeChangedConnection m_notifyIndex
 
- Attributs protégés hérités de castor3d::AnimableT< AnimableHanlerT >
AnimationPtrStrMap m_animations
 

Documentation des constructeurs et destructeur

◆ Camera() [1/2]

C3D_API castor3d::Camera::Camera ( castor::String const &  name,
Scene scene,
SceneNode node,
Viewport  viewport,
bool  ownProjMtx = false 
)

Constructeur.

Paramètres
[in]nameLe nom de la caméra.
[in]sceneLa scène parente.
[in]nodeLe noeud de scène parent.
[in]viewportViewport à copier.
[in]ownProjMtxDit si la matrice de projection est définie par le viewport false, ou pas true.

◆ Camera() [2/2]

C3D_API castor3d::Camera::Camera ( castor::String const &  name,
Scene scene,
SceneNode node,
bool  ownProjMtx = false 
)

Constructeur.

Paramètres
[in]nameLe nom de la caméra.
[in]sceneLa scène parente.
[in]nodeSceneNode parent.
[in]ownProjMtxDit si la matrice de projection est définie par le viewport false, ou pas true.

◆ ~Camera()

C3D_API castor3d::Camera::~Camera ( )

Destructeur.

Documentation des fonctions membres

◆ attachTo()

C3D_API void castor3d::Camera::attachTo ( SceneNode node)
overridevirtual

Attache cette lumière au node donné

Paramètres
[in]nodeLe nouveau node parent de cette lumière

Réimplémentée à partir de castor3d::MovableObject.

◆ getFar()

float castor3d::Camera::getFar ( ) const
inline

Références castor3d::Viewport::getFar().

Voici le graphe d'appel pour cette fonction :

◆ getFovY()

castor::Angle const& castor3d::Camera::getFovY ( ) const
inline

Références castor3d::Viewport::getFovY().

Voici le graphe d'appel pour cette fonction :

◆ getFrustum()

Frustum const& castor3d::Camera::getFrustum ( ) const
inline

◆ getHdrConfig() [1/2]

HdrConfig const& castor3d::Camera::getHdrConfig ( ) const
inline

◆ getHdrConfig() [2/2]

HdrConfig& castor3d::Camera::getHdrConfig ( )
inline

◆ getHeight()

uint32_t castor3d::Camera::getHeight ( ) const
inline

Références castor3d::Viewport::getHeight().

Voici le graphe d'appel pour cette fonction :

◆ getNear()

float castor3d::Camera::getNear ( ) const
inline

Références castor3d::Viewport::getNear().

Voici le graphe d'appel pour cette fonction :

◆ getProjection()

castor::Matrix4x4f const& castor3d::Camera::getProjection ( ) const
inline

Références castor3d::Viewport::getProjection().

Voici le graphe d'appel pour cette fonction :

◆ getProjectionScale()

float castor3d::Camera::getProjectionScale ( ) const
inline

Références castor3d::Viewport::getProjectionScale().

Voici le graphe d'appel pour cette fonction :

◆ getRatio()

float castor3d::Camera::getRatio ( ) const
inline

Références castor3d::Viewport::getRatio().

Voici le graphe d'appel pour cette fonction :

◆ getSize()

castor::Size const& castor3d::Camera::getSize ( ) const
inline

Références castor3d::Viewport::getSize().

Voici le graphe d'appel pour cette fonction :

◆ getView()

castor::Matrix4x4f const& castor3d::Camera::getView ( ) const
inline

◆ getViewport() [1/2]

Viewport const& castor3d::Camera::getViewport ( ) const
inline

name Accesseurs.

◆ getViewport() [2/2]

Viewport& castor3d::Camera::getViewport ( )
inline

◆ getViewportType()

ViewportType castor3d::Camera::getViewportType ( ) const
inline

Références castor3d::Viewport::getType().

Voici le graphe d'appel pour cette fonction :

◆ getWidth()

uint32_t castor3d::Camera::getWidth ( ) const
inline

Références castor3d::Viewport::getWidth().

Voici le graphe d'appel pour cette fonction :

◆ isVisible() [1/4]

C3D_API bool castor3d::Camera::isVisible ( Geometry const &  geometry,
Submesh const &  submesh 
) const

Vérifie si un sous-maillage est visible, via une géométrie.

Paramètres
[in]geometryLa géométrie.
[in]submeshLe sous-maillage.
Renvoie
false si le sous-maillage n'est pas visible.

◆ isVisible() [2/4]

bool castor3d::Camera::isVisible ( castor::BoundingBox const &  box,
castor::Matrix4x4f const &  transformations 
) const
inline

Références castor3d::Frustum::isVisible().

Voici le graphe d'appel pour cette fonction :

◆ isVisible() [3/4]

bool castor3d::Camera::isVisible ( castor::BoundingSphere const &  sphere,
castor::Matrix4x4f const &  transformations,
castor::Point3f const &  scale 
) const
inline

Références castor3d::Frustum::isVisible().

Voici le graphe d'appel pour cette fonction :

◆ isVisible() [4/4]

bool castor3d::Camera::isVisible ( castor::Point3f const &  point) const
inline

Références castor3d::Frustum::isVisible().

Voici le graphe d'appel pour cette fonction :

◆ resize() [1/2]

void castor3d::Camera::resize ( uint32_t  width,
uint32_t  height 
)
inline

◆ resize() [2/2]

void castor3d::Camera::resize ( castor::Size const &  size)
inline

Références castor3d::Viewport::getSize(), onChanged, et castor3d::Viewport::resize().

Voici le graphe d'appel pour cette fonction :

◆ setExposure()

void castor3d::Camera::setExposure ( float  value)
inline

◆ setGamma()

void castor3d::Camera::setGamma ( float  value)
inline

◆ setProjection()

C3D_API void castor3d::Camera::setProjection ( castor::Matrix4x4f const &  projection)

Définit la matrice de projection, met à jour le viewport et le frustum.

Paramètres
[in]projectionLa matrice de projection.

◆ setView()

void castor3d::Camera::setView ( castor::Matrix4x4f const &  view)
inline

name Mutateurs.

Références onChanged.

◆ setViewportType()

void castor3d::Camera::setViewportType ( ViewportType  value)
inline

Références onChanged, et castor3d::Viewport::updateType().

Voici le graphe d'appel pour cette fonction :

◆ update()

C3D_API void castor3d::Camera::update ( )

Met à jour le viewport, la matrice de vue et le frustum.

◆ updateFrustum()

C3D_API void castor3d::Camera::updateFrustum ( )

Met à jour le frustum.

Documentation des fonctions amies et associées

◆ Scene

friend class Scene
friend

Documentation des données membres

◆ onChanged

OnCameraChanged castor3d::Camera::onChanged
mutable

Le signal levé lorsque la caméra a changé.

Référencé par resize(), setExposure(), setGamma(), setView(), et setViewportType().


La documentation de cette classe a été générée à partir du fichier suivant :