Castor3D
..
|
Render target class. More...
Classes | |
class | BinaryParser |
RenderTarget loader. More... | |
class | TextLoader |
RenderTarget loader. More... | |
Public Member Functions | |
C3D_API | RenderTarget (Engine &p_pRoot, eTARGET_TYPE p_eTargetType=eTARGET_TYPE_WINDOW) |
C3D_API | ~RenderTarget () |
Destructor. More... | |
C3D_API void | Render (uint32_t p_dFrameTime) |
Renders one frame. More... | |
C3D_API void | Initialise (uint32_t p_index) |
Initialisation function. More... | |
C3D_API void | Cleanup () |
Cleanup function. More... | |
C3D_API void | SetSize (Castor::Size const &p_size) |
Sets the target dimensions. More... | |
C3D_API DynamicTextureSPtr | CreateDynamicTexture (uint8_t p_cpuAccess, uint8_t p_gpuAccess) const |
Creates a dynamic texture. More... | |
C3D_API void | SetTechnique (Castor::String const &p_name, Parameters const &p_parameters) |
Defines the RenderTechnique. More... | |
C3D_API eVIEWPORT_TYPE | GetViewportType () const |
Retrieves the eVIEWPORT_TYPE. More... | |
C3D_API void | SetViewportType (eVIEWPORT_TYPE val) |
Sets the eVIEWPORT_TYPE. More... | |
C3D_API void | SetCamera (CameraSPtr p_pCamera) |
Sets the camera. More... | |
C3D_API void | SetIntraOcularDistance (real p_rIod) |
Defines the intra ocular distance. More... | |
C3D_API void | SetToneMappingType (eTONE_MAPPING_TYPE p_type, Parameters const &p_parameters) |
Sets the tone mapping implementation type. More... | |
bool | IsInitialised () const |
Retrieves the intialisation status. More... | |
Castor::Size const & | GetSize () const |
Retrieves the target size. More... | |
DepthStencilStateSPtr | GetDepthStencilState () const |
Retrieves the DepthStencilState. More... | |
RasteriserStateSPtr | GetRasteriserState () const |
Retrieves the RasteriserState. More... | |
RenderTechniqueSPtr | GetTechnique () const |
Retrieves the RenderTechnique. More... | |
void | SetTechnique (RenderTechniqueSPtr p_pTechnique) |
Defines the RenderTechnique. More... | |
bool | IsMultisampling () const |
Retrieves the multisampling status. More... | |
int32_t | GetSamplesCount () const |
Retrieves the samples count. More... | |
void | SetSamplesCount (int32_t val) |
Sets the samples count. More... | |
SceneSPtr | GetScene () const |
Retrieves the Scene. More... | |
CameraSPtr | GetCamera () const |
Retrieves the Camera. More... | |
CameraSPtr | GetCameraLEye () const |
Retrieves the left eye camera. More... | |
CameraSPtr | GetCameraREye () const |
Retrieves the right eye camera. More... | |
void | SetScene (SceneSPtr p_scene) |
Sets the Scene. More... | |
FrameBufferSPtr | GetFrameBuffer () const |
Retrieves the frame buffer. More... | |
TextureUnit const & | GetTexture () const |
Retrieves the texture. More... | |
FrameBufferSPtr | GetFrameBufferLEye () const |
Retrieves the left eye frame buffer. More... | |
TextureUnit const & | GetTextureLEye () const |
Retrieves the left eye texture. More... | |
FrameBufferSPtr | GetFrameBufferREye () const |
Retrieves the right eye frame buffer. More... | |
TextureUnit const & | GetTextureREye () const |
Retrieves the right eye texture. More... | |
bool | IsUsingStereo () const |
Retrieves the stereo status. More... | |
void | SetStereo (bool p_bStereo) |
Defines the stereo status. More... | |
real | GetIntraOcularDistance () const |
Retrieves the intra ocular distance. More... | |
Castor::ePIXEL_FORMAT | GetPixelFormat () const |
Retrieves the window pixel format. More... | |
void | SetPixelFormat (Castor::ePIXEL_FORMAT val) |
Sets the window pixel format. More... | |
eTARGET_TYPE | GetTargetType () const |
Retrieves the target type. More... | |
void | AddPostEffect (PostEffectSPtr p_effect) |
Adds a post effect to the list. More... | |
uint32_t | GetIndex () const |
PostEffectPtrArray const & | GetPostEffects () const |
ToneMappingSPtr | GetToneMapping () const |
Static Public Attributes | |
static C3D_API const Castor::String | DefaultSamplerName |
The render target default sampler name. More... | |
Protected Attributes | |
eTARGET_TYPE | m_eTargetType |
The render target type. More... | |
bool | m_initialised |
Tells if the target is initalised. More... | |
Castor::Size | m_size |
The target size. More... | |
RenderTechniqueSPtr | m_renderTechnique |
The technique used to render this target. More... | |
bool | m_bMultisampling |
Tells whether or not to use multisampling. More... | |
int32_t | m_samplesCount |
Defines the samples count if multisampling is activated. More... | |
SceneWPtr | m_pScene |
The scene rendered in this render target. More... | |
CameraWPtr | m_pCamera |
The camera used to render the scene. More... | |
CameraWPtr | m_pCameraLEye |
The left eye camera used to render the stereo scene. More... | |
CameraWPtr | m_pCameraREye |
The right eye camera used to render the stereo scene. More... | |
bool | m_bStereo |
Tells the window uses stereoscopic rendering. More... | |
real | m_rIntraOcularDistance |
Intra ocular distance used in stereoscopic rendering. More... | |
stFRAME_BUFFER | m_fbLeftEye |
Frame buffer for left/middle eye. More... | |
stFRAME_BUFFER | m_fbRightEye |
Frame buffer for right eye. More... | |
FrameBufferWPtr | m_pCurrentFrameBuffer |
The currently active frame buffer (useful in stereoscopic rendering) More... | |
CameraWPtr | m_pCurrentCamera |
The currently active camera (useful in stereoscopic rendering) More... | |
Castor::ePIXEL_FORMAT | m_pixelFormat |
The target display format. More... | |
uint32_t | m_index |
This render target's index. More... | |
Castor::String | m_techniqueName |
The render technique name. More... | |
Parameters | m_techniqueParameters |
The render technique parameters. More... | |
DepthStencilStateWPtr | m_wpDepthStencilState |
Depth and stencil buffers states. More... | |
RasteriserStateWPtr | m_wpRasteriserState |
Rasteriser states. More... | |
PostEffectPtrArray | m_postEffects |
The post effects. More... | |
ToneMappingSPtr | m_toneMapping |
The tone mapping implementation. More... | |
ToneMappingFactory | m_toneMappingFactory |
The tone mapping implementation. More... | |
Static Protected Attributes | |
static uint32_t | sm_uiCount |
The number of actually created render targets. More... | |
Render target class.
C3D_API Castor3D::RenderTarget::RenderTarget | ( | Engine & | p_pRoot, |
eTARGET_TYPE | p_eTargetType = eTARGET_TYPE_WINDOW |
||
) |
Specified constructor
[in] | p_pRoot | The engine root |
[in] | p_eTargetType | The render target type |
C3D_API Castor3D::RenderTarget::~RenderTarget | ( | ) |
Destructor.
|
inline |
C3D_API void Castor3D::RenderTarget::Cleanup | ( | ) |
Cleanup function.
C3D_API DynamicTextureSPtr Castor3D::RenderTarget::CreateDynamicTexture | ( | uint8_t | p_cpuAccess, |
uint8_t | p_gpuAccess | ||
) | const |
Creates a dynamic texture.
[in] | p_cpuAccess | The required CPU access (combination of eACCESS_TYPE). |
[in] | p_gpuAccess | The required GPU access (combination of eACCESS_TYPE). |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References m_index.
|
inline |
Retrieves the intra ocular distance.
References m_rIntraOcularDistance.
|
inline |
|
inline |
References m_postEffects.
|
inline |
|
inline |
|
inline |
|
inline |
Retrieves the target size.
Récupère les dimensions de la cible
References m_size.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References m_toneMapping.
C3D_API eVIEWPORT_TYPE Castor3D::RenderTarget::GetViewportType | ( | ) | const |
Retrieves the eVIEWPORT_TYPE.
C3D_API void Castor3D::RenderTarget::Initialise | ( | uint32_t | p_index | ) |
Initialisation function.
[in] | p_index | The base texture index |
|
inline |
|
inline |
|
inline |
C3D_API void Castor3D::RenderTarget::Render | ( | uint32_t | p_dFrameTime | ) |
Renders one frame.
[in] | p_dFrameTime | The time elapsed since the last frame was rendered |
Rend une image
[in] | p_dFrameTime | Le temps écoulé depuis le rendu de la dernière frame |
C3D_API void Castor3D::RenderTarget::SetCamera | ( | CameraSPtr | p_pCamera | ) |
Sets the camera.
[in] | p_pCamera | The new camera |
C3D_API void Castor3D::RenderTarget::SetIntraOcularDistance | ( | real | p_rIod | ) |
Defines the intra ocular distance.
[in] | p_rIod | The intra ocular distance |
|
inline |
Sets the window pixel format.
[in] | val | The new window pixel format |
References m_pixelFormat.
|
inline |
|
inline |
C3D_API void Castor3D::RenderTarget::SetSize | ( | Castor::Size const & | p_size | ) |
Sets the target dimensions.
[in] | p_size | The new dimensions. |
Définit les dimensions la cible.
[in] | p_size | Les nouvelles dimensions. |
|
inline |
Defines the stereo status.
[in] | p_bStereo | true if stereo is to be used |
References m_bStereo.
C3D_API void Castor3D::RenderTarget::SetTechnique | ( | Castor::String const & | p_name, |
Parameters const & | p_parameters | ||
) |
Defines the RenderTechnique.
[in] | p_name | The RenderTechnique name. |
[in] | p_parameters | The RenderTechnique parameters. |
|
inline |
Defines the RenderTechnique.
[in] | p_pTechnique | The RenderTechnique |
References m_renderTechnique.
C3D_API void Castor3D::RenderTarget::SetToneMappingType | ( | eTONE_MAPPING_TYPE | p_type, |
Parameters const & | p_parameters | ||
) |
Sets the tone mapping implementation type.
[in] | p_type | The type. |
[in] | p_parameters | The parameters. |
C3D_API void Castor3D::RenderTarget::SetViewportType | ( | eVIEWPORT_TYPE | val | ) |
Sets the eVIEWPORT_TYPE.
[in] | val | The new eVIEWPORT_TYPE |
|
static |
The render target default sampler name.
|
protected |
Tells whether or not to use multisampling.
Referenced by IsMultisampling().
|
protected |
Tells the window uses stereoscopic rendering.
Referenced by IsUsingStereo(), and SetStereo().
|
protected |
The render target type.
Referenced by GetTargetType().
|
protected |
Frame buffer for left/middle eye.
Referenced by GetFrameBufferLEye(), GetTexture(), and GetTextureLEye().
|
protected |
Frame buffer for right eye.
Referenced by GetFrameBufferREye(), and GetTextureREye().
|
protected |
This render target's index.
Referenced by GetIndex().
|
protected |
Tells if the target is initalised.
Referenced by IsInitialised().
|
protected |
The camera used to render the scene.
Referenced by GetCamera().
|
protected |
The left eye camera used to render the stereo scene.
Referenced by GetCameraLEye().
|
protected |
The right eye camera used to render the stereo scene.
Referenced by GetCameraREye().
|
protected |
The currently active camera (useful in stereoscopic rendering)
|
protected |
The currently active frame buffer (useful in stereoscopic rendering)
Referenced by GetFrameBuffer().
|
protected |
The target display format.
Referenced by GetPixelFormat(), and SetPixelFormat().
|
protected |
The post effects.
Referenced by AddPostEffect(), and GetPostEffects().
|
protected |
The scene rendered in this render target.
Referenced by GetScene(), and SetScene().
|
protected |
The technique used to render this target.
Referenced by GetTechnique(), and SetTechnique().
|
protected |
Intra ocular distance used in stereoscopic rendering.
Referenced by GetIntraOcularDistance().
|
protected |
Defines the samples count if multisampling is activated.
Referenced by GetSamplesCount(), and SetSamplesCount().
|
protected |
The target size.
Referenced by GetSize().
|
protected |
The render technique name.
|
protected |
The render technique parameters.
|
protected |
The tone mapping implementation.
Referenced by GetToneMapping().
|
protected |
The tone mapping implementation.
|
protected |
Depth and stencil buffers states.
Referenced by GetDepthStencilState().
|
protected |
Rasteriser states.
Referenced by GetRasteriserState().
|
staticprotected |
The number of actually created render targets.