DDraceNetwork Documentation
Loading...
Searching...
No Matches
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 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_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_RenderQuadLayer (const CCommandBuffer::SCommand_RenderQuadLayer *pCommand, bool Grouped)
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)

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
EBlendMode 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 ()
ERunCommandReturnTypes RunCommand (const CCommandBuffer::SCommand *pBaseCommand) override
Public Member Functions inherited from CCommandProcessorFragment_GLBase
virtual ~CCommandProcessorFragment_GLBase ()=default
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: