295 n_error(
"Invalid access string '%s'\n", comps[i].AsCharPtr());
Nebula's dynamic array class.
Definition array.h:60
const SizeT Size() const
get number of elements in array
Definition array.h:880
Implements a fixed size one-dimensional array.
Definition fixedarray.h:20
A StringAtom.
Definition stringatom.h:22
void __cdecl n_error(const char *msg,...)
This function is called when a serious situation is encountered which requires abortion of the applic...
Definition debug.cc:138
#define n_assert(exp)
Definition debug.h:50
#define ID_24_8_TYPE(x)
Definition id.h:132
Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
Definition accelerationstructure.h:24
void BarrierPop(const CoreGraphics::CmdBufferId buf)
pop barrier, reverses the from-to stages and any access flags in the buffers and texture barriers
Definition vkbarrier.cc:255
ImageLayout
Definition config.h:97
@ DepthStencilRenderTexture
void BarrierReset(const BarrierId id)
reset resources previously set in barrier
Definition vkbarrier.cc:152
void BarrierRepeat(const CoreGraphics::CmdBufferId buf)
repeat barrier in queue
Definition vkbarrier.cc:268
QueueType
Definition config.h:40
void DestroyBarrier(const BarrierId id)
destroy barrier object
Definition vkbarrier.cc:143
ImageBits
Definition config.h:82
BarrierId CreateBarrier(const BarrierCreateInfo &info)
create barrier object
Definition vkbarrier.cc:39
BarrierDomain
Definition config.h:185
void BarrierPush(const CoreGraphics::CmdBufferId buf, CoreGraphics::PipelineStage fromStage, CoreGraphics::PipelineStage toStage, CoreGraphics::BarrierDomain domain, const Util::FixedArray< TextureBarrierInfo, true > &textures, const Util::FixedArray< BufferBarrierInfo, true > &buffers)
Push barrier to stack.
Definition vkbarrier.cc:179
PipelineStage
Definition config.h:191
void CmdBarrier(const CmdBufferId id, CoreGraphics::PipelineStage fromStage, CoreGraphics::PipelineStage toStage, CoreGraphics::BarrierDomain domain, const Util::FixedArray< TextureBarrierInfo, true > &textures, const IndexT fromQueue, const IndexT toQueue, const char *name)
Insert pipeline barrier.
Definition commandbuffer.cc:14
CoreGraphics::ImageBits ImageBitsFromString(const Util::String &str)
Definition barrier.h:278
CoreGraphics::ImageLayout ImageLayoutFromString(const Util::String &str)
Definition barrier.h:306
Compile time configuration options for the CoreGraphics subsystem.
#define NEBULA_ALL_MIPS
Definition config.h:17
#define NEBULA_WHOLE_BUFFER_SIZE
Definition config.h:16
#define NEBULA_ALL_LAYERS
Definition config.h:18
BlasId blas
Definition barrier.h:147
~AccelerationStructureBarrierInfo()
Definition barrier.h:156
enum CoreGraphics::AccelerationStructureBarrierInfo::@113 type
TlasId tlas
Definition barrier.h:148
@ TlasBarrier
Definition barrier.h:152
@ None
Definition barrier.h:153
@ BlasBarrier
Definition barrier.h:151
BarrierDomain domain
Definition barrier.h:229
Util::Array< BufferBarrierInfo > buffers
Definition barrier.h:235
CoreGraphics::QueueType fromQueue
Definition barrier.h:232
CoreGraphics::QueueType toQueue
Definition barrier.h:233
Util::StringAtom name
Definition barrier.h:228
CoreGraphics::PipelineStage toStage
Definition barrier.h:231
CoreGraphics::PipelineStage fromStage
Definition barrier.h:230
Util::Array< TextureBarrierInfo > textures
Definition barrier.h:234
Util::Array< TextureBarrierInfo > textures
Definition barrier.h:219
CmdBufferId cmdBuf
Definition barrier.h:217
CoreGraphics::PipelineStage fromStage
Definition barrier.h:218
Util::Array< BufferBarrierInfo > buffers
Definition barrier.h:220
~BarrierScope()
Make sure we have cleared the barrier scope before destroying the object.
Definition barrier.h:162
CoreGraphics::PipelineStage toStage
Definition barrier.h:218
void AddTexture(ImageBits bits, TextureId tex, CoreGraphics::PipelineStage fromStage, CoreGraphics::PipelineStage toStage)
Add texture barrier.
Definition barrier.h:178
void Init(const char *name, CmdBufferId cmdBuf)
Initiate.
Definition barrier.h:169
void Flush()
Flush all pending changes.
Definition barrier.h:206
const char * name
Definition barrier.h:216
void AddBuffer(BufferId buf, CoreGraphics::PipelineStage fromStage, CoreGraphics::PipelineStage toStage)
Add buffer barrier.
Definition barrier.h:192
Definition accelerationstructure.h:48
BufferId buf
Definition barrier.h:126
SizeT size
Definition barrier.h:130
CoreGraphics::PipelineStage fromStage
Definition barrier.h:127
CoreGraphics::PipelineStage toStage
Definition barrier.h:128
IndexT offset
Definition barrier.h:129
BufferSubresourceInfo subres
Definition barrier.h:142
BufferId buf
Definition barrier.h:141
uint offset
Definition barrier.h:98
BufferSubresourceInfo(uint offset, uint size)
Definition barrier.h:105
BufferSubresourceInfo()
Definition barrier.h:100
const bool Overlaps(const BufferSubresourceInfo &rhs) const
Definition barrier.h:110
uint size
Definition barrier.h:98
Definition commandbuffer.h:155
CoreGraphics::PipelineStage toStage
Definition barrier.h:121
TextureId tex
Definition barrier.h:118
TextureSubresourceInfo subres
Definition barrier.h:119
CoreGraphics::PipelineStage fromStage
Definition barrier.h:120
TextureId tex
Definition barrier.h:135
TextureSubresourceInfo subres
Definition barrier.h:136
texture type
Definition texture.h:25
static TextureSubresourceInfo Color(TextureId tex)
Definition barrier.h:50
static TextureSubresourceInfo ColorNoMipNoLayer()
Definition barrier.h:60
TextureSubresourceInfo()
Definition barrier.h:29
static TextureSubresourceInfo DepthStencilNoLayer(uint mipCount)
Definition barrier.h:85
uint layerCount
Definition barrier.h:27
TextureSubresourceInfo(CoreGraphics::ImageBits bits, uint mip, uint mipCount, uint layer, uint layerCount)
Definition barrier.h:37
ImageBits bits
Definition barrier.h:26
uint mipCount
Definition barrier.h:27
const bool Overlaps(const TextureSubresourceInfo &rhs) const
Definition barrier.h:90
uint mip
Definition barrier.h:27
static TextureSubresourceInfo DepthStencilNoMip(uint layerCount)
Definition barrier.h:80
static TextureSubresourceInfo ColorNoMip(uint layerCount)
Definition barrier.h:65
static TextureSubresourceInfo Texture(CoreGraphics::ImageBits bits, TextureId tex)
Definition barrier.h:45
static TextureSubresourceInfo DepthStencil(TextureId tex)
Definition barrier.h:55
static TextureSubresourceInfo ColorNoLayer(uint mipCount)
Definition barrier.h:70
uint layer
Definition barrier.h:27
static TextureSubresourceInfo DepthStencilNoMipNoLayer()
Definition barrier.h:75
Definition accelerationstructure.h:98
Nebula's universal string class.
Definition string.h:50
SizeT Tokenize(const String &whiteSpace, Array< String > &outTokens) const
tokenize string into a provided String array (faster if tokens array can be reused)
Definition string.cc:203
static const int InvalidIndex
Definition types.h:54
int SizeT
Definition types.h:49
unsigned int uint
Definition types.h:31
int IndexT
Definition types.h:48