Shader_macro
Ploy3D / Shader_macro
Interface: Shader_macro
着色器预编译宏定义。
Table of contents
Properties
- BLEND_MODE_ADD
- BLEND_MODE_FADE
- BLEND_MODE_MASKED
- BLEND_MODE_MULTIPLY
- BLEND_MODE_OPAQUE
- BLEND_MODE_SCREEN
- BLEND_MODE_TRANSPARENT
- DEBUG_ENABLED
- FLIP_UV_ATTRIBUTE
- FRAG_HAS_COLOR_1
- FRAG_HAS_COLOR_2
- FRAG_HAS_COLOR_3
- HAS_ATTRIBUTE_BONE_INDICES
- HAS_ATTRIBUTE_BONE_WEIGHTS
- HAS_ATTRIBUTE_COLOR
- HAS_ATTRIBUTE_POSITION
- HAS_ATTRIBUTE_TANGENTS
- HAS_ATTRIBUTE_UV0
- HAS_ATTRIBUTE_UV1
- LEGACY_MORPHING
- MATERIAL_CAN_SKIP_LIGHTING
- MATERIAL_HAS_ABSORPTION
- MATERIAL_HAS_AMBIENT_OCCLUSION
- MATERIAL_HAS_ANISOTROPY
- MATERIAL_HAS_BENT_NORMAL
- MATERIAL_HAS_CLEAR_COAT
- MATERIAL_HAS_CLEAR_COAT_NORMAL
- MATERIAL_HAS_CLIP_SPACE_TRANSFORM
- MATERIAL_HAS_CUSTOM_SURFACE_SHADING
- MATERIAL_HAS_DOUBLE_SIDED_CAPABILITY
- MATERIAL_HAS_EMISSIVE
- MATERIAL_HAS_IOR
- MATERIAL_HAS_MICRO_THICKNESS
- MATERIAL_HAS_NORMAL
- MATERIAL_HAS_POST_LIGHTING_COLOR
- MATERIAL_HAS_REFLECTIONS
- MATERIAL_HAS_REFRACTION
- MATERIAL_HAS_SHADOW_MULTIPLIER
- MATERIAL_HAS_SHEEN_COLOR
- MATERIAL_HAS_SUBSURFACE_COLOR
- MATERIAL_HAS_TRANSMISSION
- MATERIAL_HAS_VERTEX_DOMAIN_DEVICE_JITTERED
- MATERIAL_NEEDS_TBN
- SHADER_TYPE_COMPUTE
- SHADER_TYPE_POST_PROCESS
- SHADER_TYPE_SHADING
- SHADING_MODEL_CLOTH
- SHADING_MODEL_DEFERRED
- SHADING_MODEL_SPECULAR_GLOSSINESS
- SHADING_MODEL_SUBSURFACE
- SHADING_MODEL_UNLIT
- SHADING_TYPE_DEFAULT
- SHADING_TYPE_DEPTH
- SHADING_TYPE_GBUFFER
- SHADING_TYPE_REFLECT
- TARGET_MOBILE
- USER_MACRO_FS
- USER_MACRO_VS
- USE_OPTIMIZED_DEPTH_VERTEX_SHADER
- VARIANT_HAS_DIRECTIONAL_LIGHTING
- VARIANT_HAS_DOUBLE_SIDED
- VARIANT_HAS_MORPHING
- VARIANT_HAS_SHADOWING
- VARIANT_HAS_SKINNING
- VARIANT_HAS_SKINNING_OR_MORPHING
- VARIANT_HAS_VSM
- VERTEX_DOMAIN_DEVICE
- VERTEX_DOMAIN_OBJECT
- VERTEX_DOMAIN_VIEW
- VERTEX_DOMAIN_WORLD
Properties
BLEND_MODE_ADD
• Optional
BLEND_MODE_ADD: boolean
BLEND_MODE_FADE
• Optional
BLEND_MODE_FADE: boolean
BLEND_MODE_MASKED
• Optional
BLEND_MODE_MASKED: boolean
BLEND_MODE_MULTIPLY
• Optional
BLEND_MODE_MULTIPLY: boolean
BLEND_MODE_OPAQUE
• Optional
BLEND_MODE_OPAQUE: boolean
BLEND_MODE_SCREEN
• Optional
BLEND_MODE_SCREEN: boolean
BLEND_MODE_TRANSPARENT
• Optional
BLEND_MODE_TRANSPARENT: boolean
DEBUG_ENABLED
• Optional
DEBUG_ENABLED: boolean
是否启用调试模式
FLIP_UV_ATTRIBUTE
• Optional
FLIP_UV_ATTRIBUTE: boolean
是否翻转UV的Y通道
FRAG_HAS_COLOR_1
• Optional
FRAG_HAS_COLOR_1: boolean
是否启用第2个片元输出通道
FRAG_HAS_COLOR_2
• Optional
FRAG_HAS_COLOR_2: boolean
是否启用第3个片元输出通道
FRAG_HAS_COLOR_3
• Optional
FRAG_HAS_COLOR_3: boolean
是否启用第4个片元输出通道
HAS_ATTRIBUTE_BONE_INDICES
• Optional
HAS_ATTRIBUTE_BONE_INDICES: boolean
顶点是否包含骨骼索引属性
HAS_ATTRIBUTE_BONE_WEIGHTS
• Optional
HAS_ATTRIBUTE_BONE_WEIGHTS: boolean
顶点是否包含骨骼权重属性
HAS_ATTRIBUTE_COLOR
• Optional
HAS_ATTRIBUTE_COLOR: boolean
顶点是否包含颜色属性
HAS_ATTRIBUTE_POSITION
• Optional
HAS_ATTRIBUTE_POSITION: boolean
顶点是否包含坐标属性
HAS_ATTRIBUTE_TANGENTS
• Optional
HAS_ATTRIBUTE_TANGENTS: boolean
顶点是否包含切线属性
HAS_ATTRIBUTE_UV0
• Optional
HAS_ATTRIBUTE_UV0: boolean
顶点是否包含第1套UV属性
HAS_ATTRIBUTE_UV1
• Optional
HAS_ATTRIBUTE_UV1: boolean
顶点是否包含第2套UV属性
LEGACY_MORPHING
• Optional
LEGACY_MORPHING: boolean
是否使用传统网格变形实现
MATERIAL_CAN_SKIP_LIGHTING
• Optional
MATERIAL_CAN_SKIP_LIGHTING: boolean
材质是否允许跳过被遮挡部分的光照计算
MATERIAL_HAS_ABSORPTION
• Optional
MATERIAL_HAS_ABSORPTION: boolean
MATERIAL_HAS_AMBIENT_OCCLUSION
• Optional
MATERIAL_HAS_AMBIENT_OCCLUSION: boolean
材质是否包含环境光遮蔽信息
MATERIAL_HAS_ANISOTROPY
• Optional
MATERIAL_HAS_ANISOTROPY: boolean
材质是否包含各项异性
MATERIAL_HAS_BENT_NORMAL
• Optional
MATERIAL_HAS_BENT_NORMAL: boolean
材质是否提供环境遮蔽法线
MATERIAL_HAS_CLEAR_COAT
• Optional
MATERIAL_HAS_CLEAR_COAT: boolean
材质是否包含清漆层
MATERIAL_HAS_CLEAR_COAT_NORMAL
• Optional
MATERIAL_HAS_CLEAR_COAT_NORMAL: boolean
材质是否提供清漆层法线,无则使用顶点提供的法线
MATERIAL_HAS_CLIP_SPACE_TRANSFORM
• Optional
MATERIAL_HAS_CLIP_SPACE_TRANSFORM: boolean
材质是否提供裁剪空间变换矩阵
MATERIAL_HAS_CUSTOM_SURFACE_SHADING
• Optional
MATERIAL_HAS_CUSTOM_SURFACE_SHADING: boolean
材质是否提供自定义的表面着色器
MATERIAL_HAS_DOUBLE_SIDED_CAPABILITY
• Optional
MATERIAL_HAS_DOUBLE_SIDED_CAPABILITY: boolean
材质是否兼容双面渲染
MATERIAL_HAS_EMISSIVE
• Optional
MATERIAL_HAS_EMISSIVE: boolean
材质是否包含自发光
MATERIAL_HAS_IOR
• Optional
MATERIAL_HAS_IOR: boolean
MATERIAL_HAS_MICRO_THICKNESS
• Optional
MATERIAL_HAS_MICRO_THICKNESS: boolean
MATERIAL_HAS_NORMAL
• Optional
MATERIAL_HAS_NORMAL: boolean
材质是否包含法线贴图数据,无则使用顶点提供的法线
MATERIAL_HAS_POST_LIGHTING_COLOR
• Optional
MATERIAL_HAS_POST_LIGHTING_COLOR: boolean
MATERIAL_HAS_REFLECTIONS
• Optional
MATERIAL_HAS_REFLECTIONS: boolean
MATERIAL_HAS_REFRACTION
• Optional
MATERIAL_HAS_REFRACTION: boolean
MATERIAL_HAS_SHADOW_MULTIPLIER
• Optional
MATERIAL_HAS_SHADOW_MULTIPLIER: boolean
MATERIAL_HAS_SHEEN_COLOR
• Optional
MATERIAL_HAS_SHEEN_COLOR: boolean
MATERIAL_HAS_SUBSURFACE_COLOR
• Optional
MATERIAL_HAS_SUBSURFACE_COLOR: boolean
MATERIAL_HAS_TRANSMISSION
• Optional
MATERIAL_HAS_TRANSMISSION: boolean
MATERIAL_HAS_VERTEX_DOMAIN_DEVICE_JITTERED
• Optional
MATERIAL_HAS_VERTEX_DOMAIN_DEVICE_JITTERED: boolean
MATERIAL_NEEDS_TBN
• Optional
MATERIAL_NEEDS_TBN: boolean
材质是否需要切线空间变换矩阵,法线贴图等采样需求
SHADER_TYPE_COMPUTE
• Optional
SHADER_TYPE_COMPUTE: boolean
SHADER_TYPE_POST_PROCESS
• Optional
SHADER_TYPE_POST_PROCESS: boolean
SHADER_TYPE_SHADING
• Optional
SHADER_TYPE_SHADING: boolean
SHADING_MODEL_CLOTH
• Optional
SHADING_MODEL_CLOTH: boolean
SHADING_MODEL_DEFERRED
• Optional
SHADING_MODEL_DEFERRED: boolean
SHADING_MODEL_SPECULAR_GLOSSINESS
• Optional
SHADING_MODEL_SPECULAR_GLOSSINESS: boolean
SHADING_MODEL_SUBSURFACE
• Optional
SHADING_MODEL_SUBSURFACE: boolean
SHADING_MODEL_UNLIT
• Optional
SHADING_MODEL_UNLIT: boolean
SHADING_TYPE_DEFAULT
• Optional
SHADING_TYPE_DEFAULT: boolean
SHADING_TYPE_DEPTH
• Optional
SHADING_TYPE_DEPTH: boolean
SHADING_TYPE_GBUFFER
• Optional
SHADING_TYPE_GBUFFER: boolean
SHADING_TYPE_REFLECT
• Optional
SHADING_TYPE_REFLECT: boolean
TARGET_MOBILE
• Optional
TARGET_MOBILE: boolean
是否是移动平台
USER_MACRO_FS
• Optional
USER_MACRO_FS: string
USER_MACRO_VS
• Optional
USER_MACRO_VS: string
USE_OPTIMIZED_DEPTH_VERTEX_SHADER
• Optional
USE_OPTIMIZED_DEPTH_VERTEX_SHADER: boolean
VARIANT_HAS_DIRECTIONAL_LIGHTING
• Optional
VARIANT_HAS_DIRECTIONAL_LIGHTING: boolean
是否使用直接光照,结合VARIANT_HAS_SHADOWING控制主光源阴影
VARIANT_HAS_DOUBLE_SIDED
• Optional
VARIANT_HAS_DOUBLE_SIDED: boolean
材质是否开启双面渲染
VARIANT_HAS_MORPHING
• Optional
VARIANT_HAS_MORPHING: boolean
是否网格变形
VARIANT_HAS_SHADOWING
• Optional
VARIANT_HAS_SHADOWING: boolean
材质是否开启阴影
VARIANT_HAS_SKINNING
• Optional
VARIANT_HAS_SKINNING: boolean
是否骨骼蒙皮
VARIANT_HAS_SKINNING_OR_MORPHING
• Optional
VARIANT_HAS_SKINNING_OR_MORPHING: boolean
是否骨骼蒙皮或者网格变形
VARIANT_HAS_VSM
• Optional
VARIANT_HAS_VSM: boolean
材质是否进行阴影相关参数的计算(顶点、片元着色器输出)
VERTEX_DOMAIN_DEVICE
• Optional
VERTEX_DOMAIN_DEVICE: boolean
顶点坐标位于NDC空间
VERTEX_DOMAIN_OBJECT
• Optional
VERTEX_DOMAIN_OBJECT: boolean
顶点坐标位于模型空间
VERTEX_DOMAIN_VIEW
• Optional
VERTEX_DOMAIN_VIEW: boolean
顶点坐标位于相机空间
VERTEX_DOMAIN_WORLD
• Optional
VERTEX_DOMAIN_WORLD: boolean
顶点坐标位于世界空间