Castor3D 0.15.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Amis | Liste de tous les membres
Référence de la classe castor3d::Camera

#include <Camera.hpp>

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.
 
C3D_API Camera (castor::String const &name, Scene &scene, SceneNode &node, bool ownProjMtx=false)
 Constructeur.
 
C3D_API void updateFrustum ()
 Met à jour le frustum.
 
C3D_API void update ()
 Met à jour le viewport, la matrice de vue et le frustum.
 
C3D_API void setProjection (castor::Matrix4x4f const &projection)
 Définit la matrice de projection, met à jour le viewport et le frustum.
 
C3D_API bool isVisible (Geometry const &geometry, Submesh const &submesh) const
 Vérifie si un sous-maillage est visible, via une géométrie.
 
C3D_API castor::Matrix4x4f getRescaledProjection (float scale, bool safeBanded) const
 
Viewport const & getViewport () const
 
ViewportgetViewport ()
 
castor::Matrix4x4f const & getView () const
 
castor::Matrix4x4f const & getProjection (bool safeBanded) 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.
 
C3D_API MovableObject (castor::String const &name, Scene &scene, MovableType type)
 Constructeur.
 
virtual C3D_API ~MovableObject ()
 Destructeur.
 
C3D_API void detach ()
 Détache l'objet de son parent.
 
virtual C3D_API void attachTo (SceneNode &node)
 Attache l'object à un noeud.
 
C3D_API void markDirty ()
 Ajout l'objet à la liste des objets à mettre à jour de la scène.
 
C3D_API EngineRPtr getEngine () const
 
SceneNodegetParent () const
 
MovableType getType () const
 

Attributs publics

OnCameraChanged onGpuChanged
 

Amis

class Scene
 

Membres hérités additionnels

- Attributs protégés hérités de castor3d::MovableObject
MovableType m_type
 
SceneNodem_sceneNode
 
OnSceneNodeChangedConnection m_notifyIndex
 

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.

Documentation des fonctions membres

◆ 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 & castor3d::Camera::getHdrConfig ( )
inline

◆ getHdrConfig() [2/2]

HdrConfig const & castor3d::Camera::getHdrConfig ( ) const
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 ( bool  safeBanded) const
inline

Références castor3d::Viewport::getProjection(), et castor3d::Viewport::getSafeBandedProjection().

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 :

◆ getRescaledProjection()

C3D_API castor::Matrix4x4f castor3d::Camera::getRescaledProjection ( float  scale,
bool  safeBanded 
) const

name Accesseurs.

◆ 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 & castor3d::Camera::getViewport ( )
inline

◆ getViewport() [2/2]

Viewport const & castor3d::Camera::getViewport ( ) const
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]

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() [2/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() [3/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 :

◆ isVisible() [4/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.

◆ resize() [1/2]

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

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

Voici le graphe d'appel pour cette fonction :

◆ resize() [2/2]

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

Références resize().

Référencé par resize().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de 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 castor3d::MovableObject::markDirty().

Voici le graphe d'appel pour cette fonction :

◆ setViewportType()

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

Références castor3d::MovableObject::markDirty(), 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

◆ onGpuChanged

OnCameraChanged castor3d::Camera::onGpuChanged
mutable

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


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