MikuMikuDayo
エフェクトリファレンス
|
パスを定義するための構造体 [詳解]
公開メンバ関数 | |
bool | IsFunctional () const |
template<class Archive> | |
void | serialize (Archive &A) |
公開変数類 | |
std::string | name |
パス名。マクロYRZ_PASS_nameを定義してコンパイラを起動する | |
std::string | type = "postprocess" |
パスの種類。"postprocess", "compute", "raytracing", "rasterizer", "copy", "clearRTV", "clearUAV", "mipmapgen"のいずれか | |
std::string | vertexShader |
vertexShaderのエントリポイント名(postprocess, rasterizerパス用) | |
std::string | pixelShader |
pixelShaderのエントリポイント名(postprocess, rasterizerパス用) | |
std::string | computeShader |
computeShaderのエントリポイント名(computeパス用) | |
XMUINT3 | numthreads = { 0,0,0 } |
1スレッドグループあたりのスレッド数 YRZ_NUMTHREADSマクロの内容を定義する | |
std::string | raygenShader |
raytracingShaderのエントリポイント名 | |
std::vector< std::string > | missShader |
raytracingShaderのエントリポイント名 | |
std::vector< FXHitGroup > | hitGroup |
raytracingShaderのヒットグループの定義 | |
std::vector< std::string > | callableShader |
raytracingShaderのエントリポイント名 | |
UINT | maxPayloadSize = 64 |
raytracingShaderのペイロードの最大サイズ[byte] | |
UINT | maxAttributeSize = 8 |
raytracingShaderの交差判定用構造体の最大サイズ[byte] | |
UINT | maxRecursionDepth = 4 |
raytracingShaderの最大再帰段数 | |
std::string | vsTarget = "vs_6_1" |
vertexShaderのシェーダーモデル | |
std::string | psTarget = "ps_6_1" |
pixelShaderのシェーダーモデル | |
std::string | csTarget = "cs_6_1" |
computeShaderのシェーダーモデル | |
std::string | libTarget = "lib_6_3" |
raytracingShaderのシェーダーモデル | |
std::vector< std::string > | macros |
パスのコンパイル時に定義されるマクロ, MACRO=value の形式で=区切りでマクロを指定する | |
FXSize | outputSize = {} |
シェーダの出力サイズの指定 | |
std::vector< FXRTV > | RTV |
RTVでアクセスされるテクスチャ群 | |
std::vector< FXUAV > | UAV |
UAVでアクセスされるリソース群 | |
FXDSV | DSV |
DSVでアクセスされるテクスチャ(最大1つ) | |
std::vector< std::string > | conditions |
実行時の条件式。要素数が1以上の時、式がすべて真ならばパスが実行される | |
FXBlendDesc | blendDesc |
αブレンディングについての設定(rasterizerパス・postprocessパス用) | |
FXRasterizerDesc | rasterizerDesc |
プリミティブの描画方法についての設定(rasterizerパス用) | |
FXDepthStencilDesc | depthStencilDesc |
デプスステンシルバッファの使用法についての設定(rasterizerパス用) | |
std::string | primitiveTopologyType = "triangle" |
プリミティブの種類についての設定(rasterizerパス用) D3D12_PRIMITIVE_TOPOLOGY_TYPEを参照 | |
UINT | sampleMask = D3D12_DEFAULT_SAMPLE_MASK |
rasterizerパス用(現在のMikuMikuDayoの実装では未対応) | |
std::string | rasterModelTarget = "all" |
ラスタライザのターゲットになるモデル(デフォーマ・ポストプロセス用) "all":シーン内のモデルとエフェクト起動元に割り当てられたモデル "other":シーン内のモデル "self":エフェクト起動元に割り当てられたモデルのみ "buffer":rasterVB、rasterIBで指定されるリソースによって定義されるモデル | |
std::string | rasterVB |
rasterModelTarget=="buffer"の場合に使われるVertexBufferとなるリソース名 | |
std::string | rasterIB |
rasterModelTarget=="buffer"の場合に使われるIndexBufferとなるリソース名 | |
std::vector< FXInputElementDesc > | layout |
rasterVB, rasterIBがセットされている時はこのレイアウトを使う。空の場合はraterIBのみ参照される | |
std::string | src |
コピー元リソース名 copyパス用 コピー元とコピー先のリソースのサイズ・フォーマット・mipレベル数は同一でなければならない | |
std::string | dest |
コピー先リソース名 copyパス用 コピー元とコピー先のリソースのサイズ・フォーマット・mipレベル数は同一でなければならない | |
std::string | target |
対象リソース名 clearRTV, clearUAV, mipmapgenパス用 | |
XMFLOAT4 | value = { 0,0,0,1 } |
クリアする場合に使用する値 clearRTV, clearUAVパス用 |
パスを定義するための構造体