28 #ifndef BERSERK_GLCOMMANDLIST_HPP 
   29 #define BERSERK_GLCOMMANDLIST_HPP 
   78     void PipelineCleanUp();
 
   90     GLuint mCurrentVao = GL_NONE;
 
   91     GLenum mIndexType = GL_NONE;
 
   92     GLenum mPrimitivesType = GL_NONE;
 
   94     bool mInRenderPass = 
false;
 
   95     bool mPipelineBound = 
false;
 
   96     bool mNeedUpdateVao = 
true;
 
   98     size_t mSubmitCount = 0;
 
#define BRK_NS_END
Definition: Config.hpp:48
 
#define BRK_API
Definition: Config.hpp:32
 
std::uint32_t uint32
Definition: Typedefs.hpp:44
 
GL command list implementation (wrapper for context)
Definition: GLCommandList.hpp:52
 
BRK_API void BindVertexBuffers(const std::vector< Ref< RHIVertexBuffer >> &buffers) override
Definition: GLCommandList.cpp:115
 
BRK_API void BindResourceSet(const Ref< RHIResourceSet > &resourceSet, uint32 set) override
Definition: GLCommandList.cpp:134
 
BRK_API void BindIndexBuffer(const Ref< RHIIndexBuffer > &buffer, RHIIndexType indexType) override
Definition: GLCommandList.cpp:125
 
BRK_API void SwapBuffers(const Ref< Window > &window) override
Definition: GLCommandList.cpp:182
 
BRK_API void GenerateMipMaps(const Ref< RHITexture > &texture) override
Definition: GLCommandList.cpp:83
 
BRK_API void DrawIndexed(uint32 indexCount, uint32 baseVertex, uint32 instanceCount) override
Definition: GLCommandList.cpp:158
 
BRK_API void UpdateIndexBuffer(const Ref< RHIIndexBuffer > &buffer, uint32 byteOffset, uint32 byteSize, const Ref< Data > &data) override
Definition: GLCommandList.cpp:49
 
BRK_API GLCommandList()=default
 
BRK_API void BindGraphicsPipeline(const Ref< RHIGraphicsPipeline > &pipeline) override
Definition: GLCommandList.cpp:100
 
BRK_API void UpdateVertexBuffer(const Ref< RHIVertexBuffer > &buffer, uint32 byteOffset, uint32 byteSize, const Ref< Data > &data) override
Definition: GLCommandList.cpp:45
 
BRK_API void Submit() override
Definition: GLCommandList.cpp:189
 
BRK_API void BeginRenderPass(const Ref< RHIRenderPass > &renderPass, const RHIRenderPassBeginInfo &beginInfo) override
Definition: GLCommandList.cpp:91
 
BRK_API void UpdateTextureCube(const Ref< RHITexture > &texture, RHITextureCubemapFace face, uint32 mipLevel, const Rect2u ®ion, const Ref< Data > &data) override
Definition: GLCommandList.cpp:78
 
BRK_API void UpdateUniformBuffer(const Ref< RHIUniformBuffer > &buffer, uint32 byteOffset, uint32 byteSize, const Ref< Data > &data) override
Definition: GLCommandList.cpp:53
 
BRK_API void EndRenderPass() override
Definition: GLCommandList.cpp:173
 
BRK_API void UpdateTexture2D(const Ref< RHITexture > &texture, uint32 mipLevel, const Rect2u ®ion, const Ref< Data > &data) override
Definition: GLCommandList.cpp:68
 
BRK_API ~GLCommandList() override=default
 
BRK_API void Draw(uint32 verticesCount, uint32 baseVertex, uint32 instancesCount) override
Definition: GLCommandList.cpp:143
 
BRK_API void UpdateTexture2DArray(const Ref< RHITexture > &texture, uint32 arrayIndex, uint32 mipLevel, const Rect2u ®ion, const Ref< Data > &data) override
Definition: GLCommandList.cpp:73
 
Auxiliary class used to bind textures and samplers to pipeline.
Definition: GLResourceSet.hpp:48
 
Cache of opengl vertex array objects.
Definition: GLVaoCache.hpp:119
 
Command list for commands capturing and submission.
Definition: RHICommandList.hpp:54
 
RHI pass info to begin (initial targets clear values)
Definition: RHIRenderPass.hpp:100
 
Generic vector class for an N dimensional space base on type T.
Definition: TVecN.hpp:55
 
RHITextureCubemapFace
Definition: RHIDefs.hpp:177
 
RHIIndexType
Definition: RHIDefs.hpp:57
 
Definition: GLDevice.cpp:46
 
GL render pass shared state variables for context management.
Definition: GLRenderPass.hpp:45
 
Descriptor of vertex array object.
Definition: GLVaoCache.hpp:51
 
static const uint32 MAX_RESOURCE_SETS
Definition: RHIDefs.hpp:341