ランタイム
Mix::Scene::IMaterial Class Referenceabstract

マテリアルインターフェース More...

#include <IMaterial.h>

Inheritance diagram for Mix::Scene::IMaterial:
Collaboration diagram for Mix::Scene::IMaterial:

Public Types

enum  TYPE { DEFAULT = 0 }
 タイプ列挙定数 More...
 
enum  TRANSFORM_TYPE { TR_SIMPLE = 0, TR_SKINNING = 1, TR_MAX = 2 }
 トランスフォームタイプ列挙定数 More...
 
enum  TRANSPARENCY_METHOD { TM_LUMP = 0, TM_INDIVIDUAL = 1 }
 半透明メソッド列挙定数 More...
 

Public Member Functions

virtual Mix::Scene::IMaterial::TYPE GetType (void) const =0
 種類を取得します More...
 
virtual Boolean IsTransformable (Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
 指定したタイプのトランスフォームを実行できるかどうかを確認します More...
 
virtual UInt32 GetVertexStride (Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
 1頂点のサイズを取得します More...
 
virtual UInt32 GetVertexInputSigunature (Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
 頂点の入力シグネチャを取得します More...
 
virtual Boolean NeedsUpdate (void) const =0
 更新( Update )が必要かどうかを確認します More...
 
virtual Boolean IsShadowing (void) const =0
 影を落とすかどうかを確認します More...
 
virtual Boolean IsLighting (void) const =0
 ライティングをするかどうかを確認します More...
 
virtual Boolean IsRefractive (void) const =0
 屈折するかどうかを確認します More...
 
virtual Boolean IsTransparency (void) const =0
 不透明かどうかを確認します More...
 
virtual Mix::Scene::IMaterial::TRANSPARENCY_METHOD GetTransparencyMethod (void) const =0
 不透明メソッドを取得します More...
 
virtual void Update (Float32 dt)=0
 更新される際の呼び出されます More...
 
virtual void RenderShadow (Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
 影の描画設定をします More...
 
virtual void RenderMask (Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
 マスクの描画設定をします More...
 
virtual void RenderColor (Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
 カラーの描画設定をします More...
 
virtual Boolean BeginConstant (void)=0
 定数の変更を開始します More...
 
virtual Boolean EndConstant (void)=0
 定数の変更を終了します More...
 
virtual Boolean Clone (Mix::Scene::IMaterial **ppMaterial)=0
 自身のクローンを作成します More...
 
- Public Member Functions inherited from Mix::Reference
void AddRef (void)
 参照数を 1 増やします More...
 
void Release (void)
 参照数を 1 減らします More...
 
Long32 GetRefCount (void)
 参照数を取得します More...
 

Protected Member Functions

virtual ~IMaterial (void)
 デストラクタ More...
 
- Protected Member Functions inherited from Mix::Reference
 MIX_DECLARE_ALLOCATOR ()
 
 Reference (void)
 コンストラクタ More...
 
 Reference (Long32 count)
 コンストラクタ More...
 
virtual ~Reference (void)
 デストラクタ More...
 

Detailed Description

マテリアルインターフェース

Member Enumeration Documentation

タイプ列挙定数

Enumerator
DEFAULT 

デフォルト( Mix::Scene::IDefaultMaterial )

トランスフォームタイプ列挙定数

Enumerator
TR_SIMPLE 

モデルに設定されているワールド行列でトランスフォーム

TR_SKINNING 

ボーンのワールド行列でトランスフォーム

TR_MAX 

トランスフォームタイプの最大数

半透明メソッド列挙定数

Enumerator
TM_LUMP 

一括描画

TM_INDIVIDUAL 

ポリゴン単位描画

Constructor & Destructor Documentation

virtual Mix::Scene::IMaterial::~IMaterial ( void  )
inlineprotectedvirtual

デストラクタ

Member Function Documentation

virtual Mix::Scene::IMaterial::TYPE Mix::Scene::IMaterial::GetType ( void  ) const
pure virtual

種類を取得します

Returns
Mix::Scene::IMaterial::TYPE 列挙定数を返します
virtual Boolean Mix::Scene::IMaterial::IsTransformable ( Mix::Scene::IMaterial::TRANSFORM_TYPE  type) const
pure virtual

指定したタイプのトランスフォームを実行できるかどうかを確認します

Returns
実行できる場合は True を返します
virtual UInt32 Mix::Scene::IMaterial::GetVertexStride ( Mix::Scene::IMaterial::TRANSFORM_TYPE  type) const
pure virtual

1頂点のサイズを取得します

Returns
サイズを返します
virtual UInt32 Mix::Scene::IMaterial::GetVertexInputSigunature ( Mix::Scene::IMaterial::TRANSFORM_TYPE  type) const
pure virtual

頂点の入力シグネチャを取得します

Returns
Mix::Graphics::IVertexLayout::GetElementSemanticFlags で取得できる値を返します
virtual Boolean Mix::Scene::IMaterial::NeedsUpdate ( void  ) const
pure virtual

更新( Update )が必要かどうかを確認します

Returns
必要な場合は True を返します
virtual Boolean Mix::Scene::IMaterial::IsShadowing ( void  ) const
pure virtual

影を落とすかどうかを確認します

Returns
影を落とす場合は True を返します
Note
このメソッドが True を返す場合は RenderShadow が実行されます。
virtual Boolean Mix::Scene::IMaterial::IsLighting ( void  ) const
pure virtual

ライティングをするかどうかを確認します

Returns
ライティングをする場合は True を返します
Note
このメソッドが True を返す場合は ポイントライト、スポットライトの収集をします。
virtual Boolean Mix::Scene::IMaterial::IsRefractive ( void  ) const
pure virtual

屈折するかどうかを確認します

Returns
屈折する場合は True を返します
Note
このメソッドが True を返す場合は RenderMask RenderColor が実行されます。
virtual Boolean Mix::Scene::IMaterial::IsTransparency ( void  ) const
pure virtual

不透明かどうかを確認します

Returns
不透明である場合は True を返します
Note
このメソッドが True を返す場合は 半透明として処理します。
virtual Mix::Scene::IMaterial::TRANSPARENCY_METHOD Mix::Scene::IMaterial::GetTransparencyMethod ( void  ) const
pure virtual

不透明メソッドを取得します

Returns
不透明メソッドを表す Mix::Scene::IDefaultMaterial::TRANSPARENCY_METHOD 列挙定数を返します
virtual void Mix::Scene::IMaterial::Update ( Float32  dt)
pure virtual

更新される際の呼び出されます

Parameters
[in]dtデルタタイム
virtual void Mix::Scene::IMaterial::RenderShadow ( Mix::Graphics::IDevice pDevice,
Mix::Scene::IMaterial::TRANSFORM_TYPE  trType 
)
pure virtual

影の描画設定をします

Parameters
[in]pDeviceグラフックスデバイスを表す Mix::Graphics::IDevice インターフェースのポインタ
[in]trTypeトランスフォームタイプを表す Mix::Scene::IMaterial::TRANSFORM_TYPE 列挙定数
virtual void Mix::Scene::IMaterial::RenderMask ( Mix::Graphics::IDevice pDevice,
Mix::Scene::IMaterial::TRANSFORM_TYPE  trType 
)
pure virtual

マスクの描画設定をします

Parameters
[in]pDeviceグラフックスデバイスを表す Mix::Graphics::IDevice インターフェースのポインタ
[in]trTypeトランスフォームタイプを表す Mix::Scene::IMaterial::TRANSFORM_TYPE 列挙定数
virtual void Mix::Scene::IMaterial::RenderColor ( Mix::Graphics::IDevice pDevice,
Mix::Scene::IMaterial::TRANSFORM_TYPE  trType 
)
pure virtual

カラーの描画設定をします

Parameters
[in]pDeviceグラフックスデバイスを表す Mix::Graphics::IDevice インターフェースのポインタ
[in]trTypeトランスフォームタイプを表す Mix::Scene::IMaterial::TRANSFORM_TYPE 列挙定数
virtual Boolean Mix::Scene::IMaterial::BeginConstant ( void  )
pure virtual

定数の変更を開始します

Returns
変更の開始が成功した場合は True を返します
Note
複数のパラメータを変更する際に、BeginConstant EndConstant で括ることで、
シェーダー定数( Mix::Graphics::IShaderConstant )のロックを減らし、パフォーマンスを向上させることができます。
またこの処理は、シェーダーモデル4、5に対して有効です。
virtual Boolean Mix::Scene::IMaterial::EndConstant ( void  )
pure virtual

定数の変更を終了します

Returns
変更の終了が成功した場合は True を返します
virtual Boolean Mix::Scene::IMaterial::Clone ( Mix::Scene::IMaterial **  ppMaterial)
pure virtual

自身のクローンを作成します

Parameters
[out]ppMaterial自身のクローンを渡す Mix::Scene::IMaterial インターフェースのポインタのアドレス
Returns
成功した場合は True を返します

The documentation for this class was generated from the following file: