31#ifndef __SO3VIEWPORT_H__
32#define __SO3VIEWPORT_H__
37#ifdef SO3_BUILD_DEFERRED
45#define SO3_VISIBILITY_MASK_DEFAULT 0xFFFFFFFF
46#define SO3_VISIBILITY_MASK_INVISIBLE_ENVIRONMENT 0xFFFFFFFE
47#define SO3_VISIBILITY_MASK_VISIBLE_WATER_RTT 0x00000002
49#define SO3_VISIBILITY_FLAGS_DEFAULT 0xFFFFFFFF
50#define SO3_VISIBILITY_FLAG_INVISIBLE_ENVIRONMENT 0x00000001
51#define SO3_VISIBILITY_FLAG_INTERNAL_MAXIMUM 0x00000002
55class SViewPort :
public Ogre::Viewport::Listener, Ogre::MaterialManager::Listener
64 Ogre::Viewport* O3ViewPort;
67#ifdef SO3_BUILD_DEFERRED
73#ifdef SO3_BUILD_DEFERRED
83 SViewPort(
SWindow* parent,
SCamera* targetCamera,
int priority,
const float& x,
const float& y,
const float&
w,
const float& h);
234#ifdef SO3_BUILD_DEFERRED
280#ifdef SO3_BUILD_DEFERRED
365 Ogre::Vector3
RayCastCamera(
const int& pixelsX,
const int& pixelsY,
const float distance, Ogre::Vector3 &outDirection);
407 virtual Ogre::Technique*
handleSchemeNotFound(
unsigned short schemeIndex,
const Ogre::String& schemeName, Ogre::Material* originalMaterial,
unsigned short lodIndex,
const Ogre::Renderable* rend);
SCOL_EXPORT int cbmachine w
DeferredShadingAntiAliasingMode
void SetVisibilityMaskIndexEnable(const Ogre::uint32 flagIndex, const bool enable)
SHdrHandler * GetHDRhandler()
void SetSkyEnable(const bool &value)
void SetVisibilityMask(const Ogre::uint32 &mask)
void AddCompositor(SCompositor *existingCompositor)
void ToWindowPos(int &px, int &py)
void SetDeferredEnable(const bool &value)
bool GetVisibilityMaskIndexEnable(const Ogre::uint32 flagIndex)
void SetHDREnable(const bool &value)
void RegisterStereoViewport()
SCompositor * GetCompositor(const std::string &compositorName)
void SetPositionAndSize(const float &x, const float &y, const float &w, const float &h)
void ToPixelPos(int &px, int &py)
void UnregisterStereoViewport()
Ogre::Vector3 RayCastCamera(const int &pixelsX, const int &pixelsY, const float distance, Ogre::Vector3 &outDirection)
void SetShadowsEnabled(const bool &enableShadows)
void SetMaterialScheme(const std::string &existingScheme)
void SetOverlayEnable(const bool &value)
void SetDeferredDebugMode(const int &value)
SDeferredShading::DeferredShadingAntiAliasingMode GetDeferredAntiAliasingMode()
Ogre::uint32 GetVisibilityMask()
void SetSSAOEnable(const bool &value)
void SetHDREffectAmount(const float &value)
void RestoreStereoCamera()
bool IsStereoViewportRegistered()
void ResizeToWindow(const float &w, const float &h)
unsigned int GetNumRenderedBatches()
SRaycastResult RayCast(const int &pixelsX, const int &pixelsY, SSubEntitySelectorBuffer *subEntitySelector)
unsigned int GetNumRenderedFaces()
int GetDeferredDebugMode()
void SetBackgroundColour(const int &backgroundColor)
SWindow * GetParentWindow() const
void UpdateStereoCamera(Ogre::Camera *camera)
const SCompositorMap & GetCompositorList() const
void RemoveCompositor(SCompositor *existingCompositor)
Ogre::Viewport * GetOgreViewPortPointer()
SCompositor * CreateCompositor(const std::string &newCompositorName, const std::string &newSchemeName)
void SetClearDepth(const bool &state)
void SetDeferredAntiAliasingMode(const SDeferredShading::DeferredShadingAntiAliasingMode &value)
void UpdateStereoCameraMatrix(Ogre::Camera *camera)
void SetHDRBlurAmount(const float &value)
std::string GetMaterialScheme()
SSsaoHandler * GetSSAOhandler()
void SetCamera(SCamera *camera)
virtual Ogre::Technique * handleSchemeNotFound(unsigned short schemeIndex, const Ogre::String &schemeName, Ogre::Material *originalMaterial, unsigned short lodIndex, const Ogre::Renderable *rend)
bool GetScreenPosFromWorldPos(Ogre::Vector3 worldPosition, Ogre::Vector2 &screenPos)
void SetHDRGamma(const float &value)
bool UpdateStereoCompositorState(const Ogre::String compname, bool state)
void SetClearColor(const bool &value)
virtual void viewportDimensionsChanged(Ogre::Viewport *viewport)
void DeleteCompositor(SCompositor *existingCompositor)
std::unordered_map< std::string, SCompositor * > SCompositorMap