DDraceNetwork Docs
CCommandProcessorFragment_OpenGL2 Class Reference

#include <backend_opengl.h>

Inheritance diagram for CCommandProcessorFragment_OpenGL2:
[legend]
Collaboration diagram for CCommandProcessorFragment_OpenGL2:
[legend]

Classes

struct  SBufferContainer
 
struct  SBufferObject
 

Protected Member Functions

void SetState (const CCommandBuffer::SState &State, CGLSLTWProgram *pProgram, bool Use2DArrayTextures=false)
 
bool Cmd_Init (const SCommand_Init *pCommand) override
 
void Cmd_Shutdown (const SCommand_Shutdown *pCommand) override
 
void Cmd_RenderTex3D (const CCommandBuffer::SCommand_RenderTex3D *pCommand) override
 
void Cmd_CreateBufferObject (const CCommandBuffer::SCommand_CreateBufferObject *pCommand) override
 
void Cmd_RecreateBufferObject (const CCommandBuffer::SCommand_RecreateBufferObject *pCommand) override
 
void Cmd_UpdateBufferObject (const CCommandBuffer::SCommand_UpdateBufferObject *pCommand) override
 
void Cmd_CopyBufferObject (const CCommandBuffer::SCommand_CopyBufferObject *pCommand) override
 
void Cmd_DeleteBufferObject (const CCommandBuffer::SCommand_DeleteBufferObject *pCommand) override
 
void Cmd_CreateBufferContainer (const CCommandBuffer::SCommand_CreateBufferContainer *pCommand) override
 
void Cmd_UpdateBufferContainer (const CCommandBuffer::SCommand_UpdateBufferContainer *pCommand) override
 
void Cmd_DeleteBufferContainer (const CCommandBuffer::SCommand_DeleteBufferContainer *pCommand) override
 
void Cmd_IndicesRequiredNumNotify (const CCommandBuffer::SCommand_IndicesRequiredNumNotify *pCommand) override
 
void Cmd_RenderTileLayer (const CCommandBuffer::SCommand_RenderTileLayer *pCommand) override
 
void Cmd_RenderBorderTile (const CCommandBuffer::SCommand_RenderBorderTile *pCommand) override
 
- Protected Member Functions inherited from CCommandProcessorFragment_OpenGL
bool IsTexturedState (const CCommandBuffer::SState &State)
 
bool InitOpenGL (const SCommand_Init *pCommand)
 
void SetState (const CCommandBuffer::SState &State, bool Use2DArrayTexture=false)
 
virtual bool IsNewApi ()
 
void DestroyTexture (int Slot)
 
bool GetPresentedImageData (uint32_t &Width, uint32_t &Height, CImageInfo::EImageFormat &Format, std::vector< uint8_t > &vDstData) override
 
void TextureUpdate (int Slot, int X, int Y, int Width, int Height, int GLFormat, uint8_t *pTexData)
 
void TextureCreate (int Slot, int Width, int Height, int GLFormat, int GLStoreFormat, int Flags, uint8_t *pTexData)
 
virtual bool Cmd_Init (const SCommand_Init *pCommand)
 
virtual void Cmd_Shutdown (const SCommand_Shutdown *pCommand)
 
virtual void Cmd_Texture_Destroy (const CCommandBuffer::SCommand_Texture_Destroy *pCommand)
 
virtual void Cmd_Texture_Create (const CCommandBuffer::SCommand_Texture_Create *pCommand)
 
virtual void Cmd_TextTexture_Update (const CCommandBuffer::SCommand_TextTexture_Update *pCommand)
 
virtual void Cmd_TextTextures_Destroy (const CCommandBuffer::SCommand_TextTextures_Destroy *pCommand)
 
virtual void Cmd_TextTextures_Create (const CCommandBuffer::SCommand_TextTextures_Create *pCommand)
 
virtual void Cmd_Clear (const CCommandBuffer::SCommand_Clear *pCommand)
 
virtual void Cmd_Render (const CCommandBuffer::SCommand_Render *pCommand)
 
virtual void Cmd_RenderTex3D (const CCommandBuffer::SCommand_RenderTex3D *pCommand)
 
virtual void Cmd_ReadPixel (const CCommandBuffer::SCommand_TrySwapAndReadPixel *pCommand)
 
virtual void Cmd_Screenshot (const CCommandBuffer::SCommand_TrySwapAndScreenshot *pCommand)
 
virtual void Cmd_Update_Viewport (const CCommandBuffer::SCommand_Update_Viewport *pCommand)
 
virtual void Cmd_CreateBufferObject (const CCommandBuffer::SCommand_CreateBufferObject *pCommand)
 
virtual void Cmd_RecreateBufferObject (const CCommandBuffer::SCommand_RecreateBufferObject *pCommand)
 
virtual void Cmd_UpdateBufferObject (const CCommandBuffer::SCommand_UpdateBufferObject *pCommand)
 
virtual void Cmd_CopyBufferObject (const CCommandBuffer::SCommand_CopyBufferObject *pCommand)
 
virtual void Cmd_DeleteBufferObject (const CCommandBuffer::SCommand_DeleteBufferObject *pCommand)
 
virtual void Cmd_CreateBufferContainer (const CCommandBuffer::SCommand_CreateBufferContainer *pCommand)
 
virtual void Cmd_UpdateBufferContainer (const CCommandBuffer::SCommand_UpdateBufferContainer *pCommand)
 
virtual void Cmd_DeleteBufferContainer (const CCommandBuffer::SCommand_DeleteBufferContainer *pCommand)
 
virtual void Cmd_IndicesRequiredNumNotify (const CCommandBuffer::SCommand_IndicesRequiredNumNotify *pCommand)
 
virtual void Cmd_RenderTileLayer (const CCommandBuffer::SCommand_RenderTileLayer *pCommand)
 
virtual void Cmd_RenderBorderTile (const CCommandBuffer::SCommand_RenderBorderTile *pCommand)
 
virtual void Cmd_RenderQuadLayer (const CCommandBuffer::SCommand_RenderQuadLayer *pCommand)
 
virtual void Cmd_RenderText (const CCommandBuffer::SCommand_RenderText *pCommand)
 
virtual void Cmd_RenderQuadContainer (const CCommandBuffer::SCommand_RenderQuadContainer *pCommand)
 
virtual void Cmd_RenderQuadContainerEx (const CCommandBuffer::SCommand_RenderQuadContainerEx *pCommand)
 
virtual void Cmd_RenderQuadContainerAsSpriteMultiple (const CCommandBuffer::SCommand_RenderQuadContainerAsSpriteMultiple *pCommand)
 
virtual bool GetPresentedImageData (uint32_t &Width, uint32_t &Height, CImageInfo::EImageFormat &Format, std::vector< uint8_t > &vDstData)=0
 

Protected Attributes

CGLSLTileProgramm_pTileProgram
 
CGLSLTileProgramm_pTileProgramTextured
 
CGLSLTileProgramm_pBorderTileProgram
 
CGLSLTileProgramm_pBorderTileProgramTextured
 
CGLSLPrimitiveProgramm_pPrimitive3DProgram
 
CGLSLPrimitiveProgramm_pPrimitive3DProgramTextured
 
- Protected Attributes inherited from CCommandProcessorFragment_OpenGL
std::vector< CTexturem_vTextures
 
std::atomic< uint64_t > * m_pTextureMemoryUsage
 
uint32_t m_CanvasWidth = 0
 
uint32_t m_CanvasHeight = 0
 
TWGLint m_MaxTexSize
 
bool m_Has2DArrayTextures
 
bool m_Has2DArrayTexturesAsExtension
 
TWGLenum m_2DArrayTarget
 
bool m_Has3DTextures
 
bool m_HasMipMaps
 
bool m_HasNPOTTextures
 
bool m_HasShaders
 
int m_LastBlendMode
 
bool m_LastClipEnable
 
int m_OpenGLTextureLodBIAS
 
bool m_IsOpenGLES
 
- Protected Attributes inherited from CCommandProcessorFragment_GLBase
SGfxErrorContainer m_Error
 
SGfxWarningContainer m_Warning
 

Private Member Functions

bool DoAnalyzeStep (size_t CheckCount, size_t VerticesCount, uint8_t aFakeTexture[], size_t SingleImageSize)
 
bool IsTileMapAnalysisSucceeded ()
 
void UseProgram (CGLSLTWProgram *pProgram)
 

Private Attributes

std::vector< SBufferContainerm_vBufferContainers
 
GL_SVertexTex3D m_aStreamVertices [1024 *4]
 
std::vector< SBufferObjectm_vBufferObjectIndices
 

Additional Inherited Members

- Public Types inherited from CCommandProcessorFragment_GLBase
enum  { CMD_PRE_INIT = CCommandBuffer::CMDGROUP_PLATFORM_GL , CMD_INIT , CMD_SHUTDOWN , CMD_POST_SHUTDOWN }
 
- Public Member Functions inherited from CCommandProcessorFragment_OpenGL
 CCommandProcessorFragment_OpenGL ()
 
virtual ~CCommandProcessorFragment_OpenGL ()=default
 
ERunCommandReturnTypes RunCommand (const CCommandBuffer::SCommand *pBaseCommand) override
 
- Public Member Functions inherited from CCommandProcessorFragment_GLBase
virtual ~CCommandProcessorFragment_GLBase ()=default
 
virtual ERunCommandReturnTypes RunCommand (const CCommandBuffer::SCommand *pBaseCommand)=0
 
virtual void StartCommands (size_t CommandCount, size_t EstimatedRenderCallCount)
 
virtual void EndCommands ()
 
const SGfxErrorContainerGetError ()
 
virtual void ErroneousCleanup ()
 
const SGfxWarningContainerGetWarning ()
 
- Static Protected Member Functions inherited from CCommandProcessorFragment_OpenGL
static size_t GLFormatToPixelSize (int GLFormat)
 
- Static Protected Member Functions inherited from CCommandProcessorFragment_GLBase
static bool Texture2DTo3D (uint8_t *pImageBuffer, int ImageWidth, int ImageHeight, size_t PixelSize, int SplitCountWidth, int SplitCountHeight, uint8_t *pTarget3DImageData, int &Target3DImageWidth, int &Target3DImageHeight)
 

Member Function Documentation

◆ Cmd_CopyBufferObject()

void CCommandProcessorFragment_OpenGL2::Cmd_CopyBufferObject ( const CCommandBuffer::SCommand_CopyBufferObject pCommand)
overrideprotectedvirtual

◆ Cmd_CreateBufferContainer()

void CCommandProcessorFragment_OpenGL2::Cmd_CreateBufferContainer ( const CCommandBuffer::SCommand_CreateBufferContainer pCommand)
overrideprotectedvirtual

◆ Cmd_CreateBufferObject()

void CCommandProcessorFragment_OpenGL2::Cmd_CreateBufferObject ( const CCommandBuffer::SCommand_CreateBufferObject pCommand)
overrideprotectedvirtual

◆ Cmd_DeleteBufferContainer()

void CCommandProcessorFragment_OpenGL2::Cmd_DeleteBufferContainer ( const CCommandBuffer::SCommand_DeleteBufferContainer pCommand)
overrideprotectedvirtual

◆ Cmd_DeleteBufferObject()

void CCommandProcessorFragment_OpenGL2::Cmd_DeleteBufferObject ( const CCommandBuffer::SCommand_DeleteBufferObject pCommand)
overrideprotectedvirtual

◆ Cmd_IndicesRequiredNumNotify()

void CCommandProcessorFragment_OpenGL2::Cmd_IndicesRequiredNumNotify ( const CCommandBuffer::SCommand_IndicesRequiredNumNotify pCommand)
overrideprotectedvirtual

◆ Cmd_Init()

bool CCommandProcessorFragment_OpenGL2::Cmd_Init ( const SCommand_Init pCommand)
overrideprotectedvirtual

◆ Cmd_RecreateBufferObject()

void CCommandProcessorFragment_OpenGL2::Cmd_RecreateBufferObject ( const CCommandBuffer::SCommand_RecreateBufferObject pCommand)
overrideprotectedvirtual

◆ Cmd_RenderBorderTile()

void CCommandProcessorFragment_OpenGL2::Cmd_RenderBorderTile ( const CCommandBuffer::SCommand_RenderBorderTile pCommand)
overrideprotectedvirtual

◆ Cmd_RenderTex3D()

void CCommandProcessorFragment_OpenGL2::Cmd_RenderTex3D ( const CCommandBuffer::SCommand_RenderTex3D pCommand)
overrideprotectedvirtual

◆ Cmd_RenderTileLayer()

void CCommandProcessorFragment_OpenGL2::Cmd_RenderTileLayer ( const CCommandBuffer::SCommand_RenderTileLayer pCommand)
overrideprotectedvirtual

◆ Cmd_Shutdown()

void CCommandProcessorFragment_OpenGL2::Cmd_Shutdown ( const SCommand_Shutdown pCommand)
overrideprotectedvirtual

◆ Cmd_UpdateBufferContainer()

void CCommandProcessorFragment_OpenGL2::Cmd_UpdateBufferContainer ( const CCommandBuffer::SCommand_UpdateBufferContainer pCommand)
overrideprotectedvirtual

◆ Cmd_UpdateBufferObject()

void CCommandProcessorFragment_OpenGL2::Cmd_UpdateBufferObject ( const CCommandBuffer::SCommand_UpdateBufferObject pCommand)
overrideprotectedvirtual

◆ DoAnalyzeStep()

bool CCommandProcessorFragment_OpenGL2::DoAnalyzeStep ( size_t  CheckCount,
size_t  VerticesCount,
uint8_t  aFakeTexture[],
size_t  SingleImageSize 
)
private

◆ IsTileMapAnalysisSucceeded()

bool CCommandProcessorFragment_OpenGL2::IsTileMapAnalysisSucceeded ( )
private

◆ SetState()

void CCommandProcessorFragment_OpenGL2::SetState ( const CCommandBuffer::SState State,
CGLSLTWProgram pProgram,
bool  Use2DArrayTextures = false 
)
protected

◆ UseProgram()

void CCommandProcessorFragment_OpenGL2::UseProgram ( CGLSLTWProgram pProgram)
private

Member Data Documentation

◆ m_aStreamVertices

GL_SVertexTex3D CCommandProcessorFragment_OpenGL2::m_aStreamVertices[1024 *4]
private

◆ m_pBorderTileProgram

CGLSLTileProgram* CCommandProcessorFragment_OpenGL2::m_pBorderTileProgram
protected

◆ m_pBorderTileProgramTextured

CGLSLTileProgram* CCommandProcessorFragment_OpenGL2::m_pBorderTileProgramTextured
protected

◆ m_pPrimitive3DProgram

CGLSLPrimitiveProgram* CCommandProcessorFragment_OpenGL2::m_pPrimitive3DProgram
protected

◆ m_pPrimitive3DProgramTextured

CGLSLPrimitiveProgram* CCommandProcessorFragment_OpenGL2::m_pPrimitive3DProgramTextured
protected

◆ m_pTileProgram

CGLSLTileProgram* CCommandProcessorFragment_OpenGL2::m_pTileProgram
protected

◆ m_pTileProgramTextured

CGLSLTileProgram* CCommandProcessorFragment_OpenGL2::m_pTileProgramTextured
protected

◆ m_vBufferContainers

std::vector<SBufferContainer> CCommandProcessorFragment_OpenGL2::m_vBufferContainers
private

◆ m_vBufferObjectIndices

std::vector<SBufferObject> CCommandProcessorFragment_OpenGL2::m_vBufferObjectIndices
private

The documentation for this class was generated from the following files: