OmegaEngine API
1.0.3
|
Provides access to the properties of shader-programm executing on the GPU. More...
Public Member Functions | |
void | LoadShaderFile (string path) |
Loads an Effect from an More... | |
void | Inject (string path) |
Replaces the loaded shader with a new one loaded from a file at run time. More... | |
override string | ToString () |
void | OnLostDevice () |
Called when the device has been lost. More... | |
void | OnResetDevice () |
Called when the device has been reset. More... | |
Public Member Functions inherited from OmegaEngine.EngineElement | |
void | Dispose () |
Protected Member Functions | |
void | ExecuteScript (IEnumerable< SasScriptCommand > script, Action render, Size sceneSize, RenderTarget sceneMap, bool passScipt) |
Executes a SAS script block More... | |
void | ExecuteScript (IEnumerable< SasScriptCommand > script, Action render=null, Size sceneSize=new Size(), RenderTarget sceneMap=null) |
Executes a SAS post-screen shader technique script block More... | |
void | SetShaderParameter< T > (string name, T value) |
Sets a specific shader parameter. Automatically defers the action if Effect has not been set yet. More... | |
void | SetShaderParameter (string name, Color value) |
Sets a specific shader parameter. Automatically defers the action if Effect has not been set yet. More... | |
override void | OnEngineSet () |
Hook that is calld when Engine is set for the first time. | |
override void | OnDispose () |
Hook that is called when the object needs to dispose its internal resources. | |
Protected Member Functions inherited from OmegaEngine.EngineElement | |
void | RegisterChild (EngineElement element, bool autoDispose=true) |
Registers a child EngineElement for automatic Engine setting and Dispose calling. More... | |
void | UnregisterChild (EngineElement element) |
Unregisters a child EngineElement (opposite of RegisterChild). More... | |
Protected Attributes | |
ScriptEffectType | ScriptType |
The type of shader the SAS scripts were written for More... | |
IList< SasScriptCommand > | GlobalScript |
A list of commands composing the global SAS script More... | |
readonly Dictionary< EffectHandle, IList< SasScriptCommand > > | Techniques = new Dictionary<EffectHandle, IList<SasScriptCommand>>() |
A list of techniques and their SAS scripts More... | |
readonly Dictionary< EffectHandle, IList< SasScriptCommand > > | Passes = new Dictionary<EffectHandle, IList<SasScriptCommand>>() |
A list of passes and their SAS scripts More... | |
ParameterInfo [] | ParameterInfos |
A list of annotated shader parameters More... | |
Properties | |
Effect | Effect [get, set] |
The Direct3D effect for this shader More... | |
Properties inherited from OmegaEngine.EngineElement | |
Engine | Engine [get, set] |
The Engine instance used by this object. Must be set before using the object. May not be changed once it has been set! More... | |
bool | IsDisposed [get] |
Indicates whether this object has been disposed and can therefore no longer be used. More... | |
Additional Inherited Members | |
Public Attributes inherited from OmegaEngine.EngineElement | |
bool | IsEngineSet => _engine != null |
true if the Engine has been set. More... | |
Provides access to the properties of shader-programm executing on the GPU.
|
inlineprotected |
Executes a SAS script block
script | A list of script commands |
render | The render delegate (is called once for every shader pass); null for global script |
sceneSize | The size of the scene on the screen - leave empty for fullscreen |
sceneMap | A texture containing the rendered scene for PostShader), null if the shader doesn't need it |
passScipt | Is this a pass script? |
|
inlineprotected |
Executes a SAS post-screen shader technique script block
script | A list of script commands |
render | The render delegate (is called once for every shader pass); null for global script |
sceneSize | The size of the scene on the screen - leave empty for fullscreen |
sceneMap | A texture containing the rendered scene for PostShader), null if the shader doesn't need it |
|
inline |
Replaces the loaded shader with a new one loaded from a file at run time.
path | The shader file path relative to the shader directory or as an absolute path |
This should only be used for debugging!
|
inline |
Loads an Effect from an
.fx
or .fxo
file.
path | The shader file path relative to the shader directory or as an absolute path |
void OmegaEngine.Graphics.Shaders.Shader.OnLostDevice | ( | ) |
Called when the device has been lost.
void OmegaEngine.Graphics.Shaders.Shader.OnResetDevice | ( | ) |
Called when the device has been reset.
|
inlineprotected |
Sets a specific shader parameter. Automatically defers the action if Effect has not been set yet.
name | The name of the shader parameter to set. |
value | The value to set. |
|
inlineprotected |
Sets a specific shader parameter. Automatically defers the action if Effect has not been set yet.
name | The name of the shader parameter to set. |
value | The value to set. |
T | : | struct |
|
protected |
A list of commands composing the global SAS script
|
protected |
A list of annotated shader parameters
|
protected |
A list of passes and their SAS scripts
|
protected |
The type of shader the SAS scripts were written for
|
protected |
A list of techniques and their SAS scripts
|
getsetprotected |
The Direct3D effect for this shader