ランタイム: Mix/Scene/IMaterial.h Source File

ランタイム

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List
- File Members

IMaterial.h
Go to the documentation of this file.
1 #pragma once
2
5
6 #include "Mix/Reference.h"
7
8 namespace Mix{ namespace Scene{
9
12 class IMaterial : public Mix::Reference
13 {
14 public:
17 enum TYPE
18 {
19 DEFAULT = 0,
20 };
21
24 enum TRANSFORM_TYPE
25 {
26 TR_SIMPLE = 0,
27 TR_SKINNING = 1,
28
29 TR_MAX = 2,
30 };
31
34 enum TRANSPARENCY_METHOD
35 {
36 TM_LUMP = 0,
37 TM_INDIVIDUAL = 1,
38 };
39
40 protected:
42 virtual ~IMaterial( void ){}
43
44 public:
47 virtual Mix::Scene::IMaterial::TYPE GetType( void ) const = 0;
48
51 virtual Boolean IsTransformable( Mix::Scene::IMaterial::TRANSFORM_TYPE type ) const = 0;
52
55 virtual UInt32 GetVertexStride( Mix::Scene::IMaterial::TRANSFORM_TYPE type ) const = 0;
58 virtual UInt32 GetVertexInputSigunature( Mix::Scene::IMaterial::TRANSFORM_TYPE type ) const = 0;
59
62 virtual Boolean NeedsUpdate( void ) const = 0;
63
67 virtual Boolean IsShadowing( void ) const = 0;
71 virtual Boolean IsLighting( void ) const = 0;
75 virtual Boolean IsRefractive( void ) const = 0;
79 virtual Boolean IsTransparency( void ) const = 0;
82 virtual Mix::Scene::IMaterial::TRANSPARENCY_METHOD GetTransparencyMethod( void ) const = 0;
83
86 virtual void Update( Float32 dt ) = 0;
87
91 virtual void RenderShadow( Mix::Graphics::IDevice* pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType ) = 0;
95 virtual void RenderMask( Mix::Graphics::IDevice* pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType ) = 0;
99 virtual void RenderColor( Mix::Graphics::IDevice* pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType ) = 0;
100
107 virtual Boolean BeginConstant( void ) = 0;
110 virtual Boolean EndConstant( void ) = 0;
111
115 virtual Boolean Clone( Mix::Scene::IMaterial** ppMaterial ) = 0;
116 };
117
118 }}
Mix::Scene::IMaterial::IsTransparency
virtual Boolean IsTransparency(void) const =0
不透明かどうかを確認します
Mix::Scene::IMaterial::TRANSPARENCY_METHOD
TRANSPARENCY_METHOD
半透明メソッド列挙定数
Definition: IMaterial.h:34
Mix::Scene::IMaterial::TYPE
TYPE
タイプ列挙定数
Definition: IMaterial.h:17
Mix::Scene::IMaterial::BeginConstant
virtual Boolean BeginConstant(void)=0
定数の変更を開始します
Mix::Scene::IMaterial::RenderShadow
virtual void RenderShadow(Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
影の描画設定をします
Mix::Scene::IMaterial::IsLighting
virtual Boolean IsLighting(void) const =0
ライティングをするかどうかを確認します
Mix::Scene::IMaterial::EndConstant
virtual Boolean EndConstant(void)=0
定数の変更を終了します
Mix::Scene::IMaterial::GetTransparencyMethod
virtual Mix::Scene::IMaterial::TRANSPARENCY_METHOD GetTransparencyMethod(void) const =0
不透明メソッドを取得します
Mix::Scene::IMaterial::TR_SIMPLE
モデルに設定されているワールド行列でトランスフォーム
Definition: IMaterial.h:26
Mix::Scene::IMaterial::RenderColor
virtual void RenderColor(Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
カラーの描画設定をします
Mix::Scene::IMaterial::TM_INDIVIDUAL
ポリゴン単位描画
Definition: IMaterial.h:37
Mix::Scene::IMaterial::DEFAULT
デフォルト( Mix::Scene::IDefaultMaterial )
Definition: IMaterial.h:19
Mix::Scene::IMaterial::~IMaterial
virtual ~IMaterial(void)
デストラクタ
Definition: IMaterial.h:42
UInt32
unsigned int UInt32
符号無し32ビット整数
Definition: Common.h:68
Mix::Scene::IMaterial::IsTransformable
virtual Boolean IsTransformable(Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
指定したタイプのトランスフォームを実行できるかどうかを確認します
Mix::Scene::IMaterial::IsRefractive
virtual Boolean IsRefractive(void) const =0
屈折するかどうかを確認します
Mix::Scene::IMaterial::IsShadowing
virtual Boolean IsShadowing(void) const =0
影を落とすかどうかを確認します
Mix
ミックス
Definition: AtomicValue.h:6
Mix::Scene::IMaterial::GetType
virtual Mix::Scene::IMaterial::TYPE GetType(void) const =0
種類を取得します
Mix::Scene::IMaterial
マテリアルインターフェース
Definition: IMaterial.h:12
Mix::Scene::IMaterial::NeedsUpdate
virtual Boolean NeedsUpdate(void) const =0
更新( Update )が必要かどうかを確認します
Mix::Scene::IMaterial::RenderMask
virtual void RenderMask(Mix::Graphics::IDevice *pDevice, Mix::Scene::IMaterial::TRANSFORM_TYPE trType)=0
マスクの描画設定をします
Float32
float Float32
32ビット浮動小数点
Definition: Common.h:83
Mix::Reference
リファレンスクラス
Definition: Reference.h:12
Mix::Scene::IMaterial::TRANSFORM_TYPE
TRANSFORM_TYPE
トランスフォームタイプ列挙定数
Definition: IMaterial.h:24
Mix::Graphics::IDevice
グラフィックスデバイスインターフェース
Definition: IDevice.h:12
Mix::Scene::IMaterial::GetVertexInputSigunature
virtual UInt32 GetVertexInputSigunature(Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
頂点の入力シグネチャを取得します
Reference.h
リファレンスクラスインクルードファイル
Mix::Scene::IMaterial::TR_SKINNING
ボーンのワールド行列でトランスフォーム
Definition: IMaterial.h:27
Mix::Scene::IMaterial::GetVertexStride
virtual UInt32 GetVertexStride(Mix::Scene::IMaterial::TRANSFORM_TYPE type) const =0
１頂点のサイズを取得します
Mix::Scene::IMaterial::Update
virtual void Update(Float32 dt)=0
更新される際の呼び出されます
Boolean
BOOL Boolean
32ビットブーリアン
Definition: Common.h:102
Mix::Scene::IMaterial::TM_LUMP
一括描画
Definition: IMaterial.h:36
Mix::Scene::IMaterial::Clone
virtual Boolean Clone(Mix::Scene::IMaterial **ppMaterial)=0
自身のクローンを作成します
Mix::Scene::IMaterial::TR_MAX
トランスフォームタイプの最大数
Definition: IMaterial.h:29