[bind-uniform-value] ( value>>-quot type texture-unit name -- texture-unit' quot )


Vocabulary
gpu.render.private

Inputs
value>>-quotan object
typean object
texture-unitan object
namean object


Outputs
texture-unit'an object
quotan object


Definition


:: [bind-uniform-value]
( value>>-quot type texture-unit name -- texture-unit' quot )
{ name uniform-index } >quotation :> index-quot
{ index-quot value>>-quot bi* } >quotation :> pre-quot type
H{
{
mat4-uniform
[
[ 1 0 ] dip 4 4 >uniform-matrix
glUniformMatrix4fv
]
}
{ ivec2-uniform [ bind-uniform-ivec2 ] }
{
mat3x2-uniform
[
[ 1 0 ] dip 3 2 >uniform-matrix
glUniformMatrix3x2fv
]
}
{
mat4x3-uniform
[
[ 1 0 ] dip 4 3 >uniform-matrix
glUniformMatrix4x3fv
]
}
{ vec2-uniform [ bind-uniform-vec2 ] }
{ vec3-uniform [ bind-uniform-vec3 ] }
{ ivec4-uniform [ bind-uniform-ivec4 ] }
{ uvec4-uniform [ bind-uniform-uvec4 ] }
{ bvec4-uniform [ bind-uniform-bvec4 ] }
{
mat2x4-uniform
[
[ 1 0 ] dip 2 4 >uniform-matrix
glUniformMatrix2x4fv
]
}
{ int-uniform [ glUniform1i ] }
{ texture-uniform { drop texture-unit glUniform1i } }
{ vec4-uniform [ bind-uniform-vec4 ] }
{ bvec2-uniform [ bind-uniform-bvec2 ] }
{ bvec3-uniform [ bind-uniform-bvec3 ] }
{
mat2x3-uniform
[
[ 1 0 ] dip 2 3 >uniform-matrix
glUniformMatrix2x3fv
]
}
{
mat4x2-uniform
[
[ 1 0 ] dip 4 2 >uniform-matrix
glUniformMatrix4x2fv
]
}
{ uvec2-uniform [ bind-uniform-uvec2 ] }
{
mat3-uniform
[
[ 1 0 ] dip 3 3 >uniform-matrix
glUniformMatrix3fv
]
}
{ uvec3-uniform [ bind-uniform-uvec3 ] }
{ ivec3-uniform [ bind-uniform-ivec3 ] }
{
mat2-uniform
[
[ 1 0 ] dip 2 2 >uniform-matrix
glUniformMatrix2fv
]
}
{
mat3x4-uniform
[
[ 1 0 ] dip 3 4 >uniform-matrix
glUniformMatrix3x4fv
]
}
{ bool-uniform [ >c-bool glUniform1i ] }
{ uint-uniform [ glUniform1ui ] }
{ float-uniform [ glUniform1f ] }
} at [ uniform invalid-uniform-type ] unless*
>quotation :> value-quot type uniform-type-texture-units
texture-unit + pre-quot value-quot append ;