3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/external/bgfx/RenderBind.h"
7#include "mc/external/bgfx/RenderCompute.h"
8#include "mc/external/bgfx/RenderDraw.h"
9#include "mc/external/bgfx/SortKey.h"
10#include "mc/external/bgfx/access/Enum.h"
11#include "mc/external/bgfx/texture_format/Enum.h"
12#include "mc/external/bgfx/tinystl/unordered_set.h"
13#include "mc/external/bgfx/uniform_type/Enum.h"
17namespace bgfx {
struct Frame; }
34 using HandleSet = ::tinystl::unordered_set<ushort, ::bgfx::TinyStlAllocator>;
39 ::ll::TypedStorage<8, 8, ::bgfx::Frame*> m_frame;
40 ::ll::TypedStorage<4, 16, ::bgfx::SortKey> m_key;
41 ::ll::TypedStorage<8, 128, ::bgfx::RenderDraw> m_draw;
42 ::ll::TypedStorage<4, 64, ::bgfx::RenderCompute> m_compute;
43 ::ll::TypedStorage<4, 1344, ::bgfx::RenderBind> m_bind;
44 ::ll::TypedStorage<8, 8, ::bgfx::RangedBindings*> m_rangedBindings;
45 ::ll::TypedStorage<1, 1, bool> m_isDirty;
46 ::ll::TypedStorage<4, 4, uint> m_numSubmitted;
47 ::ll::TypedStorage<4, 4, uint> m_numDropped;
48 ::ll::TypedStorage<4, 4, uint> m_uniformBegin;
49 ::ll::TypedStorage<4, 4, uint> m_uniformEnd;
50 ::ll::TypedStorage<4, 16, uint[4]> m_numVertices;
51 ::ll::TypedStorage<1, 1, uchar> m_uniformIdx;
52 ::ll::TypedStorage<1, 1, bool> m_discard;
53 ::ll::TypedStorage<8, 32, ::tinystl::unordered_set<ushort, ::bgfx::TinyStlAllocator>> m_uniformSet;
54 ::ll::TypedStorage<8, 32, ::tinystl::unordered_set<ushort, ::bgfx::TinyStlAllocator>> m_occlusionQuerySet;
55 ::ll::TypedStorage<8, 8, int64> m_cpuTimeBegin;
56 ::ll::TypedStorage<8, 8, int64> m_cpuTimeEnd;
62 MCAPI
void clearBind();
66 MCAPI
void dispatch(ushort _id, ::bgfx::ProgramHandle _handle, uint _numX, uint _numY, uint _numZ, uchar _flags);
68 MCAPI
void doAllRayTracing(
70 ::bgfx::RayTracingConfiguration
const& rtConfig,
71 ::bgfx::RayTracingResources
const& rtResources,
76 MCAPI
void setBuffersAsRanged(
78 ::bgfx::ShaderBufferHandle
const* _shaderBufferHandles,
79 uint64 _shaderBufferHandleStride,
80 ::bgfx::Access::Enum
const* _access,
82 uint
const* _bufferOffset,
83 uint64 _bufferOffsetStride,
85 uint _arrayIndexOffset
88 MCAPI
void setImagesAsRanged(
90 ::bgfx::TextureHandle
const* _textureHandles,
91 uint64 _textureHandleStride,
94 ::bgfx::Access::Enum
const* _access,
96 ::bgfx::TextureFormat::Enum
const* _format,
102 MCAPI
void setTexturesAsRanged(
104 ::bgfx::TextureHandle
const* _textureHandles,
105 uint64 _textureHandleStride,
113 setUniform(::bgfx::UniformType::Enum _type, ::bgfx::UniformHandle _handle,
void const* _value, ushort _num);
117 ::bgfx::ProgramHandle _program,
118 ::bgfx::OcclusionQueryHandle _occlusionQuery,
123 MCAPI
void updateBindHash();
Definition EncoderImpl.h:7
Definition OcclusionQueryHandle.h:7
Definition ProgramHandle.h:7
Definition RangedBindings.h:7
Definition RayTracingConfiguration.h:7
Definition RayTracingResources.h:7
Definition ShaderBufferHandle.h:7
Definition TextureHandle.h:7
Definition TinyStlAllocator.h:7