class CHLSLShaderContainer

【概要】
 共有シェーダクラス。CShaderContainer の拡張クラス。
 共有の管理には GUID を使用する。
 メモリの解放については、参照カウントによって管理する。  参照されなくなると削除される。  本クラスのオブジェクトは、delete せず、Release により  参照を解除すること。

重要度メソッド名アクセス解説
CShaderContainer(CD3DEnv *pEnv, GUID guid)publicコンストラクタ
LPDIRECT3DPIXELSHADER9 GetDXConstantTable()publicこのオブジェクトが管理する、シェーダの定数テーブルを返す
HRESULT SetDefaults(LPDIRECT3DDEVICE) lpd3ddev)publicこのオブジェクトが管理する、シェーダの定数を初期値に設定

※重要度の意味:

◎これを知らないとこのライブラリを使えないレベル。
○知っておいたほうが良いレベル。
△知らなくても支障は無いレベル。


CHLSLShaderContainer(CD3DEnv *pEnv, GUID guid);

引数:pEnv本オブジェクトを登録する描画環境。
guid:本オブジェクトを識別する為の guid(システム内で重複してはならない。)

コンストラクタ
pEnv で示されるシステム(描画環境)に guid を識別キーとして、本オブジェクトを登録する。


LPD3DXCONSTANTTABLE GetDXConstantTable();

返値:本オブジェクトが管理するシェーダの定数テーブル。無ければNULL

本オブジェクトの派生クラスが管理するシェーダの定数テーブルを返す。
本クラスは、シェーダを管理せず、このメソッドの実装は派生クラスに よらなければならない。


HRESULT SetDefaults(LPDIRCT3DDEVICE9 lpd3ddev);

返値:成功すると、S_OK

HLSL シェーダは、Device にセットしただけでは初期値を読み込まないため
このメソッドを用いて、初期値をセットする。


D3DQuickLib のTOPページへ。