ShaderModule

class ShaderModule

Bases: CopyOnWriteObject, ShaderEnums

Represents a single shader module in some intermediate representation for passing to the driver. This could contain compiled bytecode, or in some cases, preprocessed source code to be given directly to the driver.

This class inherits from CopyOnWriteObject so that modules can safely be shared between multiple Shader objects, with a unique copy automatically being created if the Shader needs to manipulate the module.

Inheritance diagram

digraph inheritance94961b5324 { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "CachedTypedWritableReferenceCount" [URL="acron.core.CachedTypedWritableReferenceCount.html#acron.core.CachedTypedWritableReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedWritableReferenceCount" -> "CachedTypedWritableReferenceCount" [arrowsize=0.75,style=""]; "CopyOnWriteObject" [URL="acron.core.CopyOnWriteObject.html#acron.core.CopyOnWriteObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "CachedTypedWritableReferenceCount" -> "CopyOnWriteObject" [arrowsize=0.75,style=""]; "DTOOL_SUPER_BASE" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style=""]; "ReferenceCount" [URL="acron.core.ReferenceCount.html#acron.core.ReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "ReferenceCount" [arrowsize=0.75,style=""]; "ShaderEnums" [URL="acron.core.ShaderEnums.html#acron.core.ShaderEnums",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "ShaderEnums" [arrowsize=0.75,style=""]; "ShaderModule" [URL="acron.core.ShaderModule.html#acron.core.ShaderModule",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "CopyOnWriteObject" -> "ShaderModule" [arrowsize=0.75,style=""]; "ShaderEnums" -> "ShaderModule" [arrowsize=0.75,style=""]; "TypedObject" [URL="acron.core.TypedObject.html#acron.core.TypedObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "TypedObject" [arrowsize=0.75,style=""]; "TypedWritable" [URL="acron.core.TypedWritable.html#acron.core.TypedWritable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedObject" -> "TypedWritable" [arrowsize=0.75,style=""]; "TypedWritableReferenceCount" [URL="acron.core.TypedWritableReferenceCount.html#acron.core.TypedWritableReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedWritable" -> "TypedWritableReferenceCount" [arrowsize=0.75,style=""]; "ReferenceCount" -> "TypedWritableReferenceCount" [arrowsize=0.75,style=""]; }
class ShaderModule.SpecializationConstant

Bases:

Defines a specialization constant.

__init__()
property id → int

getter/setter for uint32_t ShaderModule::SpecializationConstant::id;

property name → ConstPointerTo_InternalName

getter for ConstPointerTo< InternalName > ShaderModule::SpecializationConstant::name;

property type → ShaderType

getter/setter for ShaderType const *ShaderModule::SpecializationConstant::type;

class ShaderModule.Variable

Bases:

Defines an interface variable.

__init__()
property id → int

getter/setter for uint32_t ShaderModule::Variable::id;

property location → int
property name → ConstPointerTo_InternalName

getter for ConstPointerTo< InternalName > ShaderModule::Variable::name;

property type → ShaderType

getter/setter for ShaderType const *ShaderModule::Variable::type;

static ShaderModule.get_class_type()