1
unit LUX.GPU.OpenGL.Atom.Engine;
3
interface //#################################################################### ■
5
uses Winapi.OpenGL, Winapi.OpenGLext,
8
LUX.GPU.OpenGL.Atom.Porter,
9
LUX.GPU.OpenGL.Atom.Progra;
11
type //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【型】
13
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
15
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
17
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLEngine
19
IGLEngine = interface( IGLProgra )
20
['{0B2FDEDE-30D3-439B-AC76-E61F9E028CD0}']
23
function GetVerBufs :TGLPorterV;
24
function GetUniBufs :TGLPorterU;
25
function GetTexturs :TGLPorterT;
26
function GetStoBufs :TGLPorterS;
29
property VerBufs :TGLPorterV read GetVerBufs;
30
property UniBufs :TGLPorterU read GetUniBufs;
31
property Texturs :TGLPorterT read GetTexturs;
32
property StoBufs :TGLPorterS read GetStoBufs;
35
//-------------------------------------------------------------------------
37
TGLEngine = class( TGLProgra, IGLEngine )
45
function GetVerBufs :TGLPorterV;
46
function GetUniBufs :TGLPorterU;
47
function GetTexturs :TGLPorterT;
48
function GetStoBufs :TGLPorterS;
50
procedure DoOnLinked; override;
53
destructor Destroy; override;
55
property VerBufs :TGLPorterV read GetVerBufs;
56
property UniBufs :TGLPorterU read GetUniBufs;
57
property Texturs :TGLPorterT read GetTexturs;
58
property StoBufs :TGLPorterS read GetStoBufs;
60
procedure Attach( const Shader_:IGLShader ); override;
61
procedure Detach( const Shader_:IGLShader ); override;
62
procedure Use; override;
63
procedure Unuse; override;
66
//const //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【定数】
68
//var //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【変数】
70
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
72
implementation //############################################################### ■
74
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
76
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
78
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLEngine
80
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
82
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
84
/////////////////////////////////////////////////////////////////////// アクセス
86
function TGLEngine.GetVerBufs :TGLPorterV;
91
function TGLEngine.GetUniBufs :TGLPorterU;
96
function TGLEngine.GetTexturs :TGLPorterT;
101
function TGLEngine.GetStoBufs :TGLPorterS;
106
/////////////////////////////////////////////////////////////////////// イベント
108
procedure TGLEngine.DoOnLinked;
118
/////////////////////////////////////////////////////////////////////// メソッド
120
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
122
constructor TGLEngine.Create;
126
_VerBufs := TGLPorterV.Create( Self as IGLEngine );
127
_UniBufs := TGLPorterU.Create( Self as IGLEngine );
128
_Texturs := TGLPorterT.Create( Self as IGLEngine );
129
_StoBufs := TGLPorterS.Create( Self as IGLEngine );
132
destructor TGLEngine.Destroy;
142
/////////////////////////////////////////////////////////////////////// メソッド
144
procedure TGLEngine.Attach( const Shader_:IGLShader );
148
Shader_.Attach( Self as IGLEngine );
151
procedure TGLEngine.Detach( const Shader_:IGLShader );
155
Shader_.Detach( Self as IGLEngine );
158
//------------------------------------------------------------------------------
160
procedure TGLEngine.Use;
170
procedure TGLEngine.Unuse;
180
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
182
//############################################################################## □
184
initialization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 初期化
186
finalization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 最終化
188
end. //######################################################################### ■