Record TGLSLUniform
Unit
Declaration
type TGLSLUniform = record
Description
Overview
Fields
Owner: TGLSLProgram; |
|
Name: string; |
|
Location: TGLint; |
Methods
class function NotExisting: TGLSLUniform; static; |
|
procedure SetValue(const Value: boolean ); overload; |
|
procedure SetValue(const Value: TGLint ); overload; |
|
procedure SetValue(const Value: TVector2Integer); overload; |
|
procedure SetValue(const Value: TVector3Integer); overload; |
|
procedure SetValue(const Value: TVector4Integer); overload; |
|
procedure SetValue(const Value: TGLfloat ); overload; |
|
procedure SetValue(const Value: TVector2 ); overload; |
|
procedure SetValue(const Value: TVector3 ); overload; |
|
procedure SetValue(const Value: TVector4 ); overload; |
|
procedure SetValue(const Value: TMatrix2 ); overload; |
|
procedure SetValue(const Value: TMatrix3 ); overload; |
|
procedure SetValue(const Value: TMatrix4 ); overload; |
|
procedure SetValue(const Value: TBooleanList); overload; |
|
procedure SetValue(const Value: TLongIntList); overload; |
|
procedure SetValue(const Value: TSingleList ); overload; |
|
procedure SetValue(const Value: TVector2List); overload; |
|
procedure SetValue(const Value: TVector3List); overload; |
|
procedure SetValue(const Value: TVector4List); overload; |
|
procedure SetValue(const Value: TMatrix3List); overload; |
|
procedure SetValue(const Value: TMatrix4List); overload; |
Description
Fields
Owner: TGLSLProgram; |
|
Name: string; |
|
Location: TGLint; |
|
Methods
class function NotExisting: TGLSLUniform; static; |
|
Calling TGLSLUniform.SetValue of this is ignored. |
procedure SetValue(const Value: boolean ); overload; |
|
Set uniform variable value. You should get the uniform information first using the TGLSLProgram.Uniform call. All the documentation for TGLSLProgram.SetUniform applies also here, so the program must be linked, and enabled (it will be enabled automatically by calling this). This method always ignores a missing uniform. Rely on TGLSLProgram.Uniform to make something else (like make a warning). The TGLSLUniform information about a given uniform stays constant while the program is linked. Using the TGLSLProgram.Uniform one time, and then repeatedly calling TGLSLUniform.SetValue, is faster than repeatedly calling TGLSLProgram.SetUniform. Because the latter will effectively call TGLSLProgram.Uniform every time, which may have non-zero cost. Actually, the uniform location (TGLSLUniform.Location) is constant for a given program, and you can even predict the location in some cases without calling TGLSLProgram.Uniform method (see GLSL reference). So it can be even faster, as you can prepare correct TGLSLUniform instance in your own code, without calling TGLSLProgram.Uniform. |
procedure SetValue(const Value: TGLint ); overload; |
|
procedure SetValue(const Value: TVector2Integer); overload; |
|
procedure SetValue(const Value: TVector3Integer); overload; |
|
procedure SetValue(const Value: TVector4Integer); overload; |
|
procedure SetValue(const Value: TGLfloat ); overload; |
|
procedure SetValue(const Value: TVector2 ); overload; |
|
procedure SetValue(const Value: TVector3 ); overload; |
|
procedure SetValue(const Value: TVector4 ); overload; |
|
procedure SetValue(const Value: TMatrix2 ); overload; |
|
procedure SetValue(const Value: TMatrix3 ); overload; |
|
procedure SetValue(const Value: TMatrix4 ); overload; |
|
procedure SetValue(const Value: TBooleanList); overload; |
|
procedure SetValue(const Value: TLongIntList); overload; |
|
procedure SetValue(const Value: TSingleList ); overload; |
|
procedure SetValue(const Value: TVector2List); overload; |
|
procedure SetValue(const Value: TVector3List); overload; |
|
procedure SetValue(const Value: TVector4List); overload; |
|
procedure SetValue(const Value: TMatrix3List); overload; |
|
procedure SetValue(const Value: TMatrix4List); overload; |
|
Generated by PasDoc 0.16.0.