My Project
|
It's used as parameter to Render method of each GUI object. More...
#include <GUIState.h>
Public Member Functions | |
void | AddToPostRenderingList (IObject *obj) |
void | CleanupGUIState () |
void | BeginDepthTest (CGUIBase *pObject=NULL) |
draw calls between BeginDepthTest() and EndDepthTest() are rendered with depth enabled, such as for relative to 3d objects. More... | |
void | EndDepthTest (CGUIBase *pObject=NULL) |
Public Attributes | |
RenderDevicePtr | pd3dDevice |
rendering device pointer | |
UINT | nBkbufWidth |
back buffer width | |
UINT | nBkbufHeight |
back buffer height | |
bool | bIsBatchRender |
true if the it's currently performing batch rendering | |
double | dTimeDelta |
CPainter * | painter |
current/root painter object. More... | |
int | m_nDepthEnableCount |
std::list< WeakPtr > | listPostRenderingObjects |
listPostRenderingObjects: this is the general post rendering list. More... | |
It's used as parameter to Render method of each GUI object.
Its only instance is in the GUIRoot object. It keeps track of all the intermediate results generated during game rendering. It might be used by game interface, environment simulator or AI, since most of the time we are only interested of computing object that is in the view.
void ParaEngine::GUIState::BeginDepthTest | ( | CGUIBase * | pObject = NULL | ) |
draw calls between BeginDepthTest() and EndDepthTest() are rendered with depth enabled, such as for relative to 3d objects.
Nested called are allowed and detected.
std::list<WeakPtr> ParaEngine::GUIState::listPostRenderingObjects |
listPostRenderingObjects: this is the general post rendering list.
Objects in this list are sorted only by primary asset entity name. Texture entity is usually considered as the primary asset entity, since texture switch is most slow on GPU. The process goes like this: scan the list. For each items with the same texture as the first element in the list, render and remove it from the list. This goes on until the list is blank. When inserting items into the list, you can also sort while inserting. Note: post rendering are performed in the order listed above.
CPainter* ParaEngine::GUIState::painter |
current/root painter object.