クラス Simplestar::SimpleDX10

DirectX10 を簡単に扱うためのライブラリ. [詳細]

#include <SimpleDX10.h>

すべてのメンバ一覧

Public 型

enum  ErrorCode_SetRenderTarget {
  ERROR_SETRNDTGT_NONE = 0, ERROR_SETRNDTGT_REGISTER_CLASS, ERROR_SETRNDTGT_CREATE_WINDOW, ERROR_SETRNDTGT_RESIZE_WND,
  ERROR_SETRNDTGT_CREATE_DEVICE, ERROR_SETRNDTGT_CREATE_RNDTGT, ERROR_SETRNDTGT_CREATE_DEPTH_TEX, ERROR_SETRNDTGT_CREATE_DEPTH_VIEW,
  ERROR_SETRNDTGT_RESIZE_RNDTGT
}
 

レンダリングターゲットの設定機能のエラーコード

[詳細]

Public メソッド

ErrorCode_SetRenderTarget SetRenderTarget (RESOLUTION_TYPE &resolution, bool bFllScreen=false, HINSTANCE hInstance=NULL, int nCmdShow=SW_SHOWNORMAL)
 レンダリングターゲットの設定
bool AppendEffect (const char *pFilePath, unsigned int &outIndex)
 エフェクトの追加
void EraseEffectByIndex (unsigned int index)
 エフェクトの削除 - インデックス版
void EraseEffectByFilePath (const char *pFilePath)
 エフェクトの削除 - 追加時のファイルパス版
void ReleaseEffects (void)
 エフェクトリストの解放
ID3D10Effect * GetEffect (unsigned int index, ID3D10Effect *&pOutEffect) const
 エフェクトの取得
bool AppendResource (const char *pFilePath, unsigned int &outIndex)
 リソースの追加
void EraseResourceByIndex (unsigned int index)
 リソースの削除 - インデックス版
void EraseResourceByFilePath (const char *pFilePath)
 リソースの削除 - 追加時のファイルパス版
void ReleaseResources (void)
 リソースリストの解放
ID3D10ShaderResourceView * GetResource (unsigned int index, ID3D10ShaderResourceView *&pOutResource) const
 リソースを取得する
bool CreateVertexBuffer (unsigned int bufferSize, const void *pBuffer)
 頂点バッファの作成
void ReleaseVertexBuffer (void)
 頂点バッファの解放
bool CreateIndexBuffer (unsigned int bufferSize, const void *pBuffer)
 インデックスバッファの作成
void ReleaseIndexBuffer (void)
 インデックスバッファの解放
bool CreateVertexLayout (SMPLDX10_VERTEX_FORMAT format, unsigned int effectIndex, unsigned int techniqueIndex)
 頂点レイアウトの作成
void ReleaseVertexLayout (void)
 頂点レイアウトの解放
void SetCamera (D3DXMATRIX &matWorld, D3DXVECTOR3 &vecAt)
 カメラの設定
void SetProjection (float angle)
 画角の設定
void ClearTargetView (void)
 レンダリングターゲットのクリア
bool DrawMesh (MESH_INFO_TYPE &meshInfo, unsigned int effectIndex, unsigned int techIndex=0) const
 オブジェクトの描画
void Present (void)
 バックバッファとフロントバッファを切り替える

Static Public メソッド

static SimpleDX10Instance (void)
 インスタンスの取得
static LRESULT CALLBACK WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
 ウィンドウプロシージャ

説明

DirectX10 を簡単に扱うためのライブラリ.

作者:
Simplestar
[説明]
Singleton パターン スロットは0で固定、頂点バッファとインデックスバッファはそれぞれひとつ。

列挙型

レンダリングターゲットの設定機能のエラーコード

列挙型の値:
ERROR_SETRNDTGT_NONE 

エラーなし

ERROR_SETRNDTGT_REGISTER_CLASS 

ウィンドウクラスの登録に失敗

ERROR_SETRNDTGT_CREATE_WINDOW 

ウィンドウ作成に失敗

ERROR_SETRNDTGT_RESIZE_WND 

ウィンドウのリサイズに失敗

ERROR_SETRNDTGT_CREATE_DEVICE 

デバイスの作成に失敗

ERROR_SETRNDTGT_CREATE_RNDTGT 

レンダリングターゲットの作成に失敗

ERROR_SETRNDTGT_CREATE_DEPTH_TEX 

深度ステンシルテクスチャの作成に失敗

ERROR_SETRNDTGT_CREATE_DEPTH_VIEW 

深度ステンシルビューの作成に失敗

ERROR_SETRNDTGT_RESIZE_RNDTGT 

レンダリングターゲットのリサイズに失敗


関数

bool Simplestar::SimpleDX10::AppendEffect ( const char *  pFilePath,
unsigned int &  outIndex 
)

エフェクトの追加

引数:
[in] pFilePath : エフェクトファイル(.fxファイル)パス(相対パスOK)
[out] outIndex : 格納先インデックス
作者:
Simplestar
[説明]
エフェクトファイルよりリストへ追加、格納先のインデックスを返します。 配列内に重複は許しません。
戻り値:
true : 成功
false : 失敗
bool Simplestar::SimpleDX10::AppendResource ( const char *  pFilePath,
unsigned int &  outIndex 
)

リソースの追加

引数:
[in] pFilePath : リソースファイルパス(相対パスOK)
[out] outIndex : 格納先インデックス
作者:
Simplestar
戻り値:
true : 成功
false : 失敗
void Simplestar::SimpleDX10::ClearTargetView ( void   ) 

レンダリングターゲットのクリア

作者:
Simplestar
[説明]
深度ステンシルビュー、バックバッファのクリア
bool Simplestar::SimpleDX10::CreateIndexBuffer ( unsigned int  bufferSize,
const void *  pBuffer 
)

インデックスバッファの作成

引数:
[in] bufferSize : バッファのサイズ(byteオーダー)
[in] pBuffer : システムメモリのバッファポインタ
作者:
Simplestar
[説明]
既にバッファに情報がある場合は、一度解放してから設定します。
戻り値:
true : 成功
false : 失敗
bool Simplestar::SimpleDX10::CreateVertexBuffer ( unsigned int  bufferSize,
const void *  pBuffer 
)

頂点バッファの作成

引数:
[in] bufferSize : バッファのサイズ(byteオーダー)
[in] pBuffer : システムメモリのバッファポインタ
作者:
Simplestar
[説明]
既にバッファに情報がある場合は、一度解放してから設定します。
戻り値:
true : 成功
false : 失敗
bool Simplestar::SimpleDX10::CreateVertexLayout ( SMPLDX10_VERTEX_FORMAT  format,
unsigned int  effectIndex,
unsigned int  techniqueIndex 
)

頂点レイアウトの作成

引数:
[in] format : 頂点レイアウトのフォーマット
[in] effectIndex : エフェクトのインデックス
[in] techniqueIndex : テクニックのインデックス
作者:
Simplestar
[説明]
エフェクトを用意した後、描画する前にテクニックごとの頂点レイアウトをあらかじめ 記述しておく必要があります。不正なエフェクト、テクニックインデックスが 与えられた場合は失敗します。
注意:
あらかじめエフェクトが設定してある必要があります。
戻り値:
true : 成功
false : 失敗
bool Simplestar::SimpleDX10::DrawMesh ( MESH_INFO_TYPE meshInfo,
unsigned int  effectIndex,
unsigned int  techIndex = 0 
) const

オブジェクトの描画

引数:
[in] meshInfo : バッファのインデックスオフセットとインデックス数を格納した構造体
[in] effectIndex : 適用するエフェクトのインデックス
[in] techIndex : エフェクト内の使用するテクニックのインデックス (ディフォルト = 0)
作者:
Simplestar
[説明]
この関数が呼ばれる時、既にグラフィックボードに全てのデータが確保されていなければなりません。
注意:
この関数を呼ぶ前に、シェーダ変数を先に設定する必要があります。
戻り値:
true : 成功
false : 失敗
void Simplestar::SimpleDX10::EraseEffectByFilePath ( const char *  pFilePath  ) 

エフェクトの削除 - 追加時のファイルパス版

引数:
[in] pFilePath : エフェクトファイル(.fxファイル)パス(相対パスOK)
作者:
Simplestar
覚え書き:
エフェクト配列のインデックスをずらす erase 操作は厳禁です。 削除の際は重複禁止マップも削除する必要があります。
void Simplestar::SimpleDX10::EraseEffectByIndex ( unsigned int  index  ) 

エフェクトの削除 - インデックス版

引数:
[in] index : 削除対象のインデックス
作者:
Simplestar
覚え書き:
エフェクト配列のインデックスをずらす erase 操作は厳禁です。 削除の際は重複禁止マップも削除する必要があります。
void Simplestar::SimpleDX10::EraseResourceByFilePath ( const char *  pFilePath  ) 

リソースの削除 - 追加時のファイルパス版

引数:
[in] pFilePath : リソースのファイルパス(相対パスOK)
作者:
Simplestar
覚え書き:
リソース配列のインデックスをずらす erase 操作は厳禁です。 削除の際は重複禁止マップも削除する必要があります。
void Simplestar::SimpleDX10::EraseResourceByIndex ( unsigned int  index  ) 

リソースの削除 - インデックス版

引数:
[in] index : 削除対象のインデックス
作者:
Simplestar
覚え書き:
リソース配列のインデックスをずらす erase 操作は厳禁です。 削除の際は重複禁止マップも削除する必要があります。
ID3D10Effect * Simplestar::SimpleDX10::GetEffect ( unsigned int  index,
ID3D10Effect *&  pOutEffect 
) const

エフェクトの取得

引数:
[in] index : エフェクトのインデックス
[out] pOutEffect : 取得したエフェクト
作者:
Simplestar
戻り値:
取得したエフェクト(取得できない場合NULLが返ります)
ID3D10ShaderResourceView * Simplestar::SimpleDX10::GetResource ( unsigned int  index,
ID3D10ShaderResourceView *&  pOutResource 
) const

リソースを取得する

引数:
[in] index : リソースリストのインデックス
[out] pOutResource : 取得したリソース
作者:
Simplestar
戻り値:
取得したリソース(失敗時はNULLが返ります)
SimpleDX10 & Simplestar::SimpleDX10::Instance ( void   )  [inline, static]

インスタンスの取得

作者:
Simplestar
[説明]
Singleton パターンです。 アプリケーションで唯一のインスタンスを返します。
戻り値:
インスタンス
void Simplestar::SimpleDX10::Present ( void   ) 

バックバッファとフロントバッファを切り替える

作者:
Simplestar
void Simplestar::SimpleDX10::ReleaseEffects ( void   ) 

エフェクトリストの解放

作者:
Simplestar
覚え書き:
重複禁止マップをクリアする必要があります。
void Simplestar::SimpleDX10::ReleaseIndexBuffer ( void   ) 

インデックスバッファの解放

作者:
Simplestar
void Simplestar::SimpleDX10::ReleaseResources ( void   ) 

リソースリストの解放

作者:
Simplestar
覚え書き:
重複禁止マップをクリアする必要があります。
void Simplestar::SimpleDX10::ReleaseVertexBuffer ( void   ) 

頂点バッファの解放

作者:
Simplestar
void Simplestar::SimpleDX10::ReleaseVertexLayout ( void   ) 

頂点レイアウトの解放

作者:
Simplestar
void Simplestar::SimpleDX10::SetCamera ( D3DXMATRIX &  matWorld,
D3DXVECTOR3 &  vecAt 
)

カメラの設定

引数:
[in] matWorld : カメラ台の姿勢
[in] vecAt : 注視点
作者:
Simplestar
void Simplestar::SimpleDX10::SetProjection ( float  angle  ) 

画角の設定

引数:
[in] angle : 縦の画角(画面中央から上端までの仰角)
作者:
Simplestar
SimpleDX10::ErrorCode_SetRenderTarget Simplestar::SimpleDX10::SetRenderTarget ( RESOLUTION_TYPE resolution,
bool  bFllScreen = false,
HINSTANCE  hInstance = NULL,
int  nCmdShow = SW_SHOWNORMAL 
)

レンダリングターゲットの設定

引数:
[in] resolution : 解像度(ウィンドウサイズ)
[in] bFllScreen : フルスクリーン指定 (ディフォルト = false)
[in] hInstance : システムがプログラムを実行した時点で作成する識別番号 (ディフォルト = NULL)
[in] nCmdShow : 起動時のウィンドウの状態 (ディフォルト = SW_SHOWNORMAL)
作者:
Simplestar
[説明]
解像度とフルスクリーンモードかどうかを指定して、レンダリングターゲットをリサイズします。
戻り値:
ErrorCode_SetRenderTarget
LRESULT CALLBACK Simplestar::SimpleDX10::WndProc ( HWND  hWnd,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
) [inline, static]

ウィンドウプロシージャ

引数:
[in] hWnd : メッセージが発生したウィンドウのハンドル
[in] message : メッセージ コード
[in] wParam : メッセージの付加情報(メッセージコードにより異なります)
[in] lParam : メッセージの付加情報(メッセージコードにより異なります)
作者:
Simplestar
[説明]
ウィンドウに対して何らかのメッセージが送られてきた場合に呼び出されます。
戻り値:
DefWindowProc( hWnd, message, wParam, lParam );

このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 列挙型 列挙型の値 マクロ定義
 SimpleDX10ライブラリに対してSat Nov 20 16:59:47 2010に生成されました。  doxygen 1.6.3