DxSetShaderValue: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
(14 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{Client function}} | {{Client function}} | ||
__NOTOC__ | __NOTOC__ | ||
This sets a named parameter for a [[shader]] element | This sets a named parameter for a [[shader]] element | ||
{{Important Note|It's enough to set the texture only once if it's a render target}} | |||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
bool dxSetShaderValue ( element | bool dxSetShaderValue ( element theShader, string parameterName, mixed value ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP||[[shader]]:setValue}} | |||
===Required Arguments=== | ===Required Arguments=== | ||
*''' | *'''theShader:''' The shader element whose parameter is to be changed | ||
*'''parameterName:''' The name of parameter | *'''parameterName:''' The name of parameter | ||
*'''value:''' The value to set, which can be a [[texture]], a bool, a number | *'''value:''' The value to set, which can be a [[texture]], a bool, a number or a list of numbers('''max 16 floats(numbers)''') | ||
===Returns=== | ===Returns=== | ||
Line 23: | Line 23: | ||
myShader = dxCreateShader( "hello.fx" ) | myShader = dxCreateShader( "hello.fx" ) | ||
myTexture = dxCreateTexture( "man.png" ) | myTexture = dxCreateTexture( "man.png" ) | ||
dxSetShaderValue( myShader, " | dxSetShaderValue( myShader, "texture0", myTexture ) -- Set a texture | ||
dxSetShaderValue( myShader, "bShowThing", true ) -- Set a bool | dxSetShaderValue( myShader, "bShowThing", true ) -- Set a bool | ||
dxSetShaderValue( myShader, "speed", 2.4 ) -- Set a | dxSetShaderValue( myShader, "speed", 2.4 ) -- Set a float | ||
dxSetShaderValue( myShader, "positionOfCheese", 100, 200, 300 ) -- Set a list of numbers | dxSetShaderValue( myShader, "positionOfCheese", 100, 200, 300 ) -- Set a list of numbers, with max 16 numbers. Btw, this is a float: 3.4. This can be used to fill an array in HLSL. | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==See Also== | ==See Also== | ||
{{Drawing_functions}} | {{Drawing_functions}} | ||
[[hu:dxSetShaderValue]] |
Latest revision as of 14:00, 4 February 2021
This sets a named parameter for a shader element
Important Note: It's enough to set the texture only once if it's a render target |
Syntax
bool dxSetShaderValue ( element theShader, string parameterName, mixed value )
OOP Syntax Help! I don't understand this!
- Method: shader:setValue(...)
Required Arguments
- theShader: The shader element whose parameter is to be changed
- parameterName: The name of parameter
- value: The value to set, which can be a texture, a bool, a number or a list of numbers(max 16 floats(numbers))
Returns
Returns true if the shader element's parameter was successfully changed, false otherwise.
Example
myShader = dxCreateShader( "hello.fx" ) myTexture = dxCreateTexture( "man.png" ) dxSetShaderValue( myShader, "texture0", myTexture ) -- Set a texture dxSetShaderValue( myShader, "bShowThing", true ) -- Set a bool dxSetShaderValue( myShader, "speed", 2.4 ) -- Set a float dxSetShaderValue( myShader, "positionOfCheese", 100, 200, 300 ) -- Set a list of numbers, with max 16 numbers. Btw, this is a float: 3.4. This can be used to fill an array in HLSL.
See Also
- dxConvertPixels
- dxCreateFont
- dxCreateRenderTarget
- dxCreateScreenSource
- dxCreateShader
- dxCreateTexture
- dxDrawCircle
- dxDrawImage
- dxDrawImageSection
- dxDrawLine
- dxDrawLine3D
- dxDrawMaterialLine3D
- dxDrawMaterialPrimitive
- dxDrawMaterialPrimitive3D
- dxDrawMaterialSectionLine3D
- dxDrawPrimitive
- dxDrawPrimitive3D
- dxDrawRectangle
- dxDrawText
- dxDrawWiredSphere
- dxGetBlendMode
- dxGetFontHeight
- dxGetMaterialSize
- dxGetPixelColor
- dxGetPixelsSize
- dxGetPixelsFormat
- dxGetStatus
- dxGetTextSize
- dxGetTextWidth
- dxGetTexturePixels
- dxIsAspectRatioAdjustmentEnabled
- dxSetAspectRatioAdjustmentEnabled
- dxSetBlendMode
- dxSetPixelColor
- dxSetRenderTarget
- dxSetShaderValue
- dxSetShaderTessellation
- dxSetShaderTransform
- dxSetTestMode
- dxSetTextureEdge
- dxSetTexturePixels
- dxUpdateScreenSource