EntropyCanvas::Shaders::BuiltinShaders
EntropyCanvas::Shaders::BuiltinShaders
Section titled “EntropyCanvas::Shaders::BuiltinShaders”Built-in shader AssetIds. More…
#include <BuiltinShaders.h>
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| bool | isBuiltin(const AssetId & id) Check if an AssetId is a known built-in shader. |
| const char * | getName(const AssetId & id) Get the name of a built-in shader (for debugging). |
Public Attributes
Section titled “Public Attributes”| Name | |
|---|---|
| const AssetId | UnlitTransparent Unlit Transparent shader. |
| const AssetId | Unlit Unlit shader. |
| const AssetId | Sky Skybox shader. |
| const AssetId | ShadowCaster Shadow caster shader. |
| const AssetId | PBRTransparent PBR Transparent shader. |
| const AssetId | PBR PBR Standard shader. |
| const AssetId | DepthPrepass Depth prepass shader. |
Detailed Description
Section titled “Detailed Description”struct EntropyCanvas::Shaders::BuiltinShaders;Built-in shader AssetIds.
These are compile-time constants - do NOT use string lookups for security reasons. AssetId = SHA-256 of canonical shader source (computed offline when shaders exist).
Built-in detection uses explicit ID comparison, not magic bytes.
Public Functions Documentation
Section titled “Public Functions Documentation”function isBuiltin
Section titled “function isBuiltin”static inline bool isBuiltin( const AssetId & id)Check if an AssetId is a known built-in shader.
Uses explicit comparison against known built-in IDs. Returns true only for recognized built-in shaders.
function getName
Section titled “function getName”static inline const char * getName( const AssetId & id)Get the name of a built-in shader (for debugging).
Return: Shader name or “Custom” if not a built-in
Public Attributes Documentation
Section titled “Public Attributes Documentation”variable UnlitTransparent
Section titled “variable UnlitTransparent”static const AssetId UnlitTransparent = AssetId::fromHex("01000000""00000000""00000000""00000004""00000000""00000000""00000000""00000001");Unlit Transparent shader.
Unlit with alpha blending support.
variable Unlit
Section titled “variable Unlit”static const AssetId Unlit = AssetId::fromHex("01000000""00000000""00000000""00000003""00000000""00000000""00000000""00000001");Unlit shader.
No lighting calculations - pure color/texture output. Supports: baseColor, texture
variable Sky
Section titled “variable Sky”static const AssetId Sky = AssetId::fromHex("01000000""00000000""00000000""00000005""00000000""00000000""00000000""00000001");Skybox shader.
Environment mapping for skybox rendering. Supports: cubemap texture, exposure, rotation
variable ShadowCaster
Section titled “variable ShadowCaster”static const AssetId ShadowCaster = AssetId::fromHex("01000000""00000000""00000000""00000006""00000000""00000000""00000000""00000001");Shadow caster shader.
Depth-only rendering for shadow maps. Used internally by shadow system.
variable PBRTransparent
Section titled “variable PBRTransparent”static const AssetId PBRTransparent = AssetId::fromHex("01000000""00000000""00000000""00000002""00000000""00000000""00000000""00000001");PBR Transparent shader.
PBR with alpha blending support. Same parameters as PBR plus alpha handling.
variable PBR
Section titled “variable PBR”static const AssetId PBR = AssetId::fromHex("01000000""00000000""00000000""00000001""00000000""00000000""00000000""00000001");PBR Standard shader.
Full physically-based rendering with metallic/roughness workflow. Supports: baseColor, metallic, roughness, normal, emissive, ao
variable DepthPrepass
Section titled “variable DepthPrepass”static const AssetId DepthPrepass = AssetId::fromHex("01000000""00000000""00000000""00000007""00000000""00000000""00000000""00000001");Depth prepass shader.
Depth-only rendering for z-prepass. Used internally by render pipeline.
Updated on 2026-01-26 at 17:14:35 -0500