Visual3D Game EngineAPI Documentation for XNA, C#, VB, and .NET
This ResourceManager manages high-level vertex and fragment programs.

Namespace: Visual3D.Graphics3D.Shaders.HLSL
Assembly: Visual3D.Engine (in Visual3D.Engine.dll) Version: 1.0.0.0 (1.0.0.0)

Syntax

      
 C#  Visual Basic 
public class HighLevelShaderLibrary : AssetLibrary<HighLevelShader>
Public Class HighLevelShaderLibrary _
	Inherits AssetLibrary(Of HighLevelShader)

Members

               
 All Members  Constructors   Properties   Methods   Events  
 Public

 Protected
 Instance

 Static 
 Declared

 Inherited
 XNA Framework Only 

 .NET Compact Framework Only 

 MemberDescription
HighLevelShaderLibrary()()()()
Internal constructor. This class cannot be instantiated externally.
AssetID (Inherited from Registered.)
AssetInfo (Inherited from Registered.)
AssetOwner
Gets or sets the owner to which this asset belongs and is a member of.
(Inherited from Asset.)
AttachedToOwner(IComponentOwner) (Inherited from EntityComponent.)
BaseAsset (Inherited from Registered.)
ComponentOwner
Owner of this component (contained in it's ".Components" container).
(Inherited from EntityComponent.)
Components
Components that are attached to this Entity.
(Inherited from ComponentBase.)
ComponentsForGlobalSceneFolders (Inherited from ComponentBase.)
Context
Defines the Owner of this component as well as the role (i.e. 'slot') that this component fulfills.
(Inherited from ComponentBase.)
Create(String, String, ShaderType)
Creates a new, unloaded HighLevelGpuProgram instance.
CreateIdentity()()()() (Inherited from Registered.)
CreateIdentityList()()()() (Inherited from Registered.)
CreateInstance(Boolean)
Creates an instance or non-inheriting duplicate of this asset.
(Inherited from Asset.)
CreateService<(Of <<'(TService>)>>)()()()() (Inherited from ComponentBase.)
DetachedFromOwner(IComponentOwner) (Inherited from EntityComponent.)
Dispose()()()() (Inherited from ComponentBase.)
Disposed (Inherited from ComponentBase.)
GetService<(Of <<'(TService>)>>)()()()() (Inherited from ComponentBase.)
GetService<(Of <<'(TService>)>>)(TService%) (Inherited from ComponentBase.)
Handle (Inherited from Registered.)
HasComponents (Inherited from ComponentBase.)
HasHandle (Inherited from Registered.)
HasName (Inherited from EntityComponent.)
HasPrototype
Gets if a prototype has been specified to inherit instance data from.
(Inherited from Asset.)
HasScope (Inherited from Registered.)
HasUniqueName
Gets if a UniqueName is specified to identify this asset with respect to its owner's other members.
(Inherited from Registered.)
ID (Inherited from Registered.)
IDChanged (Inherited from Registered.)
Initialize()()()()
Initializes the asset so that it might be prepared for use. By default, PrepareForUse() is called from this method as well.
(Inherited from Asset.)
IsDeserialized
Indicates if Instance was created by Deserialization.
(Inherited from ComponentBase.)
IsDisposed
Indicates if resource has been disposed.
(Inherited from Asset.)
IsDisposing
Indicates if resource is in process of Disposing but not fully disposed.
(Inherited from Asset.)
IsInitialized
Gets if this entity is currently in an initialized (and non-disposed) state.
(Inherited from Asset.)
IsPrototype (Inherited from Asset.)
IsReadyForUse
Gets/sets if asset is ready to be used. Can be set to 'true' in class constructor in order to skip Preparation logic.
(Inherited from Asset.)
IsSaved
Indicates if the component is to be Saved when the owning context is saved (e.g. for components in your scene, this controls whether or not they are saved to the scene file when the scene is saved). Typically objects are 'Saved', unless they are transient to be programmatically created each time.
(Inherited from ComponentBase.)
IsSavedOnCreatingInstance (Inherited from Asset.)
Name (Inherited from EntityComponent.)
NameID (Inherited from EntityComponent.)
OnMemberwiseClone()()()() (Inherited from ComponentBase.)
OwnerActivated(IComponentOwner) (Inherited from EntityComponent.)
OwnerDeactivated(IComponentOwner) (Inherited from EntityComponent.)
OwnerOf<(Of <<'(TOwner>)>>)()()()() (Inherited from Registered.)
PrepareForUse()()()()
Attempts to prepare asset for use. To be sure, check "IsReadyForUse" after calling this method to ensure it's really ready for use before using it.
(Inherited from Asset.)
Prototype
Gets or sets the prototype, if specified, from which this asset inherits instance data.
(Inherited from Asset.)
Scope (Inherited from Registered.)
SourceFile
Gets/Sets the source file for this program.
(Inherited from Asset.)
StorageModule (Inherited from Registered.)
ToString()()()() (Inherited from ComponentBase.)
UniqueName (Inherited from Registered.)

Remarks

High-level vertex and fragment programs can be used instead of assembler programs as managed by ShaderLibrary; however they typically result in a Shader being created as a derivative of the high-level program. High-level programs are easier to write, and can often be API-independent, unlike assembler programs.

This class not only manages the programs themselves, it also manages the factory classes which allow the creation of high-level programs using a variety of high-level syntaxes. Plugins can be created which register themselves as high-level program factories and as such the engine can be extended to accept virtually any kind of program provided a plugin is written.

Inheritance Hierarchy

System..::..Object
  Visual3D.EntityModel..::..ComponentBase
    Visual3D.EntityModel..::..EntityComponent
      Visual3D..::..Registered
        Visual3D..::..Asset
          AssetOwner
            AssetLibrary
              AssetLibrary<(Of <(<'HighLevelShader>)>)>
                Visual3D.Graphics3D.Shaders.HLSL..::..HighLevelShaderLibrary

See Also