Package | flash.display |
Class | public final dynamic class ShaderInput |
Inheritance | ShaderInput Object |
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
input
property.
The ShaderInput instance representing a Shader instance's input image
is accessed as a property of the Shader instance's
data
property. The ShaderInput property has the same name
as the input's name in the shader code.
For example, if a shader defines an input named src
,
the ShaderInput instance representing the src
input
is available as the src
property, as this example shows:
myShader.data.src.input = new BitmapData(50, 50, true, 0xFF990000);
For some uses of a Shader instance, you do not need to specify an input image, because it is automatically specified by the operation. You only need to specify an input when a Shader is used for the following:
- Shader fill
- ShaderFilter, only for the second or additional inputs if the shader is defined to use more than one input. (The object to which the filter is applied is automatically used as the first input.)
- Shader blend mode, only for the third or additional inputs if the shader is defined to use more than two inputs. (The objects being blended are automatically used as the first and second inputs.)
- ShaderJob background execution
If the shader is being executed using a ShaderJob instance to process a
ByteArray containing a linear array of data, set the ShaderInput instance's
height
to 1 and width
to the number of 32-bit floating
point values in the ByteArray. In that case, the input in the shader must be defined with
the image1
data type.
Generally, developer code does not create a ShaderInput instance directly. A ShaderInput instance is created for each of a shader's inputs when the Shader instance is created.
More examples
Related API Elements
Property | Defined By | ||
---|---|---|---|
channels : int [read-only]
The number of channels that a shader input expects. | ShaderInput | ||
constructor : Object
A reference to the class object or constructor function for a given object instance. | Object | ||
height : int
The height of the shader input. | ShaderInput | ||
index : int [read-only]
The zero-based index of the input in the shader, indicating the order
of the input definitions in the shader. | ShaderInput | ||
input : Object
The input data that is used when the shader executes. | ShaderInput | ||
width : int
The width of the shader input. | ShaderInput |
Method | Defined By | ||
---|---|---|---|
Creates a ShaderInput instance. | ShaderInput | ||
Indicates whether an object has a specified property defined. | Object | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
Returns the string representation of the specified object. | Object | ||
Returns the primitive value of the specified object. | Object |
channels | property |
channels:int
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The number of channels that a shader input expects. This property must be accounted for when the input data is a ByteArray or Vector.<Number> instance.
Implementation
public function get channels():int
height | property |
height:int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The height of the shader input. This property is only used when the input data is a ByteArray or Vector.<Number> instance. When the input is a BitmapData instance the height is automatically determined.
Implementation
public function get height():int
public function set height(value:int):void
index | property |
input | property |
input:Object
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The input data that is used when the shader executes. This property can be a BitmapData instance, a ByteArray instance, or a Vector.<Number> instance.
If a ByteArray value is assigned to the input
property, the following
conditions must be met:
- The
height
andwidth
properties must be set. - The byte array's contents must only consist of 32-bit floating-point values.
These values can be written using the
ByteArray.writeFloat()
method. - The total length in bytes of the ByteArray must be exactly
width
timesheight
timeschannels
times 4. - The byte array's
endian
property must beEndian.LITTLE_ENDIAN
.
If a Vector.<Number> instance is assigned to the input
property, the
length of the Vector must be equal to width
times height
times
channels
.
Implementation
public function get input():Object
public function set input(value:Object):void
width | property |
width:int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The width of the shader input. This property is only used when the input data is a ByteArray or Vector.<Number> instance. When the input is a BitmapData instance the width is automatically determined.
Implementation
public function get width():int
public function set width(value:int):void
ShaderInput | () | Constructor |
public function ShaderInput()
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Creates a ShaderInput instance. Developer code does not call the ShaderInput constructor directly. A ShaderInput instance is created for each of a shader's inputs when the Shader instance is created.
Wed Nov 21 2018, 06:34 AM -08:00