OmegaEngine API
1.0.3
|
A shader that blends multiple textures together More...
Public Member Functions | |
TerrainShader (bool lighting, IDictionary< string, IEnumerable< int >> controllers) | |
Creates a specialized instance of the shader More... | |
override void | Apply (Action render, XMaterial material, Camera camera, params LightSource[] lights) |
Applies the shader to the content in the render delegate. More... | |
Public Member Functions inherited from OmegaEngine.Graphics.Shaders.Shader | |
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 () |
Static Public Attributes | |
static Version | MinShaderModel => new Version(1, 4) |
The minimum shader model version required to use this shader More... | |
Protected Member Functions | |
override void | OnEngineSet () |
Hook that is calld when Engine is set for the first time. | |
Protected Member Functions inherited from OmegaEngine.Graphics.Shaders.LightingShader | |
override void | RunPasses (Action render, XMaterial material, params LightSource[] lights) |
Runs the actual shader passes | |
Protected Member Functions inherited from OmegaEngine.Graphics.Shaders.SurfaceShader | |
void | SetupLight (PointLight light, int index, XMaterial material) |
Transfer lighting data from a PointLight to the shader More... | |
void | SetupLight (DirectionalLight light, int index, XMaterial material) |
Transfer lighting data from a DirectionalLight to the shader More... | |
Protected Member Functions inherited from OmegaEngine.Graphics.Shaders.Shader | |
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 | 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... | |
Properties | |
float | BlendDistance [get, set] |
The distance at which to show the pure near texture More... | |
float | BlendWidth [get, set] |
The distance from BlendDistance where to show the pure far texture More... | |
Properties inherited from OmegaEngine.Graphics.Shaders.Shader | |
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... | |
Protected Attributes inherited from OmegaEngine.Graphics.Shaders.Shader | |
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... | |
A shader that blends multiple textures together
|
inline |
Creates a specialized instance of the shader
lighting | Shall this shader apply lighting to the terrain? |
controllers | A set of int arrays that control the counters |
NotSupportedException | The graphics card does not support this shader. |
|
inlinevirtual |
Applies the shader to the content in the render delegate.
render | The render delegate (is called once for every shader pass). |
material | The material to be used by this shader; null for device texture. |
camera | The camera for transformation information. |
lights | An array of all lights this shader should consider. Mustn't be null ! |
Reimplemented from OmegaEngine.Graphics.Shaders.SurfaceShader.
|
static |
The minimum shader model version required to use this shader
|
getset |
The distance at which to show the pure near texture
|
getset |
The distance from BlendDistance where to show the pure far texture