37#ifdef WITH_NEBULA_EDITOR
59#ifdef WITH_NEBULA_EDITOR
86#ifdef WITH_NEBULA_EDITOR
100 enum class BatchGroup;
123#ifdef WITH_NEBULA_EDITOR
135 case Vec4:
return 16;
145#ifdef WITH_NEBULA_EDITOR
172#ifdef WITH_NEBULA_EDITOR
Nebula's dynamic array class.
Definition array.h:60
A collection of key/value pairs with quick value retrieval by key at roughly O(log n).
Definition dictionary.h:34
VertexLayoutType
Definition vertexlayout.h:49
Materials represent a set of settings and a correlated shader configuration, which tells the engine w...
Definition material.h:21
A shader represents an entire shader resource, containing several stages and programs.
Definition materialtemplatetypes.h:69
CoreGraphics::ShaderId shader
Definition materialtemplatetypes.h:70
const char * name
Definition materialtemplatetypes.h:73
uint index
Definition materialtemplatetypes.h:72
CoreGraphics::ShaderProgramId program
Definition materialtemplatetypes.h:71
IndexT bufferIndex
Definition materialtemplatetypes.h:74
Definition materialtemplatetypes.h:67
uint numTextures
Definition materialtemplatetypes.h:83
const char * name
Definition materialtemplatetypes.h:77
const char * bufferName
Definition materialtemplatetypes.h:80
const uint HashCode() const
Definition materialtemplatetypes.h:76
Util::Dictionary< const char *, const MaterialTemplateValue * > values
Definition materialtemplatetypes.h:84
uint properties
Definition materialtemplatetypes.h:79
Util::Array< Util::Dictionary< uint, uint > > textureBatchLookup
Definition materialtemplatetypes.h:92
uint uniqueId
Definition materialtemplatetypes.h:78
CoreGraphics::VertexLayoutType vertexLayout
Definition materialtemplatetypes.h:82
Util::Dictionary< const char *, const MaterialTemplateTexture * > textures
Definition materialtemplatetypes.h:85
Util::Array< Util::Array< Materials::ShaderConfigBatchTexture * > > texturesPerBatch
Definition materialtemplatetypes.h:91
Util::Dictionary< MaterialTemplates::BatchGroup, Pass * > passes
Definition materialtemplatetypes.h:90
uint bufferSize
Definition materialtemplatetypes.h:81
Definition materialtemplatetypes.h:56
const char * resource
Definition materialtemplatetypes.h:58
uint bindlessOffset
Definition materialtemplatetypes.h:57
Definition materialtemplatetypes.h:16
Math::float4 f4
Definition materialtemplatetypes.h:34
union MaterialTemplates::MaterialTemplateValue::@046135266257215117343340205337073250032005044033 data
bool b
Definition materialtemplatetypes.h:29
Type
Definition materialtemplatetypes.h:18
@ Scalar
Definition materialtemplatetypes.h:20
@ Color
Definition materialtemplatetypes.h:25
@ Vec3
Definition materialtemplatetypes.h:23
@ Bool
Definition materialtemplatetypes.h:19
@ Vec4
Definition materialtemplatetypes.h:24
@ Int
Definition materialtemplatetypes.h:21
@ Vec2
Definition materialtemplatetypes.h:22
Math::float2 f2
Definition materialtemplatetypes.h:32
uint offset
Definition materialtemplatetypes.h:36
SizeT GetSize() const
Definition materialtemplatetypes.h:40
float f
Definition materialtemplatetypes.h:30
Math::float3 f3
Definition materialtemplatetypes.h:33
int i
Definition materialtemplatetypes.h:31
enum MaterialTemplates::MaterialTemplateValue::Type type
Definition materialtemplatetypes.h:155
uint index
Definition materialtemplatetypes.h:158
IndexT bufferIndex
Definition materialtemplatetypes.h:160
CoreGraphics::ShaderProgramId program
Definition materialtemplatetypes.h:157
CoreGraphics::ShaderId shader
Definition materialtemplatetypes.h:156
const char * name
Definition materialtemplatetypes.h:159
Definition materialtemplatetypes.h:153
Util::Dictionary< const char *, const MaterialTemplateValue * > values
Definition materialtemplatetypes.h:170
const uint HashCode() const
Definition materialtemplatetypes.h:162
uint bufferSize
Definition materialtemplatetypes.h:167
Util::Array< Util::Array< Materials::ShaderConfigBatchTexture * > > texturesPerBatch
Definition materialtemplatetypes.h:177
uint uniqueId
Definition materialtemplatetypes.h:164
const char * bufferName
Definition materialtemplatetypes.h:166
const char * name
Definition materialtemplatetypes.h:163
CoreGraphics::VertexLayoutType vertexLayout
Definition materialtemplatetypes.h:168
Util::Dictionary< MaterialTemplatesGPULang::BatchGroup, Pass * > passes
Definition materialtemplatetypes.h:176
Util::Array< Util::Dictionary< uint, uint > > textureBatchLookup
Definition materialtemplatetypes.h:178
uint properties
Definition materialtemplatetypes.h:165
Util::Dictionary< const char *, const MaterialTemplateTexture * > textures
Definition materialtemplatetypes.h:171
uint numTextures
Definition materialtemplatetypes.h:169
Definition materialtemplatetypes.h:142
uint bindlessOffset
Definition materialtemplatetypes.h:143
const char * resource
Definition materialtemplatetypes.h:144
Definition materialtemplatetypes.h:102
SizeT GetSize() const
Definition materialtemplatetypes.h:126
bool b
Definition materialtemplatetypes.h:115
union MaterialTemplatesGPULang::MaterialTemplateValue::@207266076124210151304067103144345035223246165213 data
Math::float4 f4
Definition materialtemplatetypes.h:120
float f
Definition materialtemplatetypes.h:116
uint offset
Definition materialtemplatetypes.h:122
Math::float3 f3
Definition materialtemplatetypes.h:119
enum MaterialTemplatesGPULang::MaterialTemplateValue::Type type
Math::float2 f2
Definition materialtemplatetypes.h:118
int i
Definition materialtemplatetypes.h:117
Type
Definition materialtemplatetypes.h:104
@ Vec4
Definition materialtemplatetypes.h:110
@ Vec3
Definition materialtemplatetypes.h:109
@ Int
Definition materialtemplatetypes.h:107
@ Scalar
Definition materialtemplatetypes.h:106
@ Vec2
Definition materialtemplatetypes.h:108
@ Color
Definition materialtemplatetypes.h:111
@ Bool
Definition materialtemplatetypes.h:105
int SizeT
Definition types.h:42
unsigned int uint
Definition types.h:33
int IndexT
Definition types.h:41