Drawing3d documented Class Library

OpenGlDevice.ProgramObjectARB Members

OpenGlDevice.ProgramObjectARB overview

Public Instance Constructors

OpenGlDevice.ProgramObjectARB Constructor Erzeugt ein ProgramObject und fügt es zur Liste ShaderPrograms hinzu.

Public Instance Fields

Darkness In diesem Feld ist die Dunkelheit des Schattens definiert. Er wird mit uniform float Darkness; in den Shader eingebunden.
Handle GLS Handle eines Programmobjektes.
shadowMapUniform Legt den Handle der multitexur fest, der beim Erzeugen eines Schattens verwendet wird. Der Defaultwert ist 7. Dieser kann mit der Definition
uniform sampler2D ShadowMap;
in den Fragmentshader aufgenommen werden.
texture0enable Legt fest, ob eine Textur gültige Werte hat oder nicht. Ist eine Textur eingeschaltet, so ist der Wert = 1. Dieser Wert kann in einem Shader durch die Definition von uniform int TextureEnabled; erhalten werden.

Public Instance Properties

Using Durch Setzen dieser Variablen, kann der Shader aktiviert bzw. deaktiviert werden.

Public Instance Methods

AddFragmentShader Fügt einen Fragmentshader hinzu.
AddVertexShader Fügt eien Vertexshader hinzu.
Delete Das Programm wird freigegeben.
DeleteShaders Sämtliche Shader werden entfernt.
Equals (inherited from Object) 
GetHashCode (inherited from Object) 
GetType (inherited from Object) 
GetVarHandle Liefert einen Handle auf eine Variable, die in einem Shader definiert ist. In jeder Device sind die drei Variablen:
uniform int TextureEnabled;
uniform float Darkness;
uniform sampler2D ShadowMap;
definiert.
Link Nach dem ein ProgramObjectARB erzeugt wurde, muss es gelinkt werden. Etwaige Fehler werden in einer Messagebox angezeigt. Leider sind sie oft nicht aussagekräftig.
Beispiel:
ShaderProg = new OpenGlDevice.ProgramObjectARB(); ShaderProg.AddFragmentShader(textBox2.Text); ShaderProg.AddVertexShader(textBox1.Text); ShaderProg.Link(); ShaderProg.Using=true;
SetVarOverloaded. Mit Hilfe eines Handles, der durch GetVarHandle besorgt wurde, kann eine int-Variable an den Shader übergeben werden.
SetVarMatrix4 Mit Hilfe eines Handles, der durch GetVarHandle besorgt wurde, kann eine 4X4-Matrix an den Shader übergeben werden.
SetVarVec4 Mit Hilfe eines Handles, der durch GetVarHandle besorgt wurde, kann eine Vierervektor vec4 an den Shader übergeben werden.
ToString (inherited from Object) 

Protected Instance Methods

Finalize Destructor von ProgramObjectARBG. Es wird ein Delete aufgerufen und dann der Handle = 0 gesetzt.
MemberwiseClone (inherited from Object) 

See Also

ProgramObjectARB Class | Drawing3d.Devices Namespace