FineKernelToolKit  3.1.0
公開メンバ関数 | 静的公開メンバ関数 | 静的公開変数類 | プロパティ | 全メンバ一覧
FK_CLI::fk_Material クラス

マテリアル(質感)を管理するクラス [詳解]

+ FK_CLI::fk_Material 連携図

公開メンバ関数

 fk_Material ()
 コンストラクタ [詳解]
 
 ~fk_Material ()
 デストラクタ [詳解]
 
 !fk_Material ()
 ファイナライザ [詳解]
 
bool Equals (fk_Material^ M)
 同値比較メソッド1 [詳解]
 
virtual bool Equals (Object^ M) override
 同値比較メソッド2 [詳解]
 
void Init (void)
 初期化メソッド [詳解]
 

静的公開メンバ関数

static void InitDefault (void)
 デフォルトマテリアル初期化メソッド [詳解]
 

静的公開変数類

static fk_Material^ AshGray
 
static fk_Material^ BambooGreen
 
static fk_Material^ Blue
 
static fk_Material^ Brown
 
static fk_Material^ BurntTitan
 
static fk_Material^ Coral
 
static fk_Material^ Cream
 
static fk_Material^ Cyan
 
static fk_Material^ DarkBlue
 
static fk_Material^ DarkGreen
 
static fk_Material^ DarkPurple
 
static fk_Material^ DarkRed
 
static fk_Material^ DarkYellow
 
static fk_Material^ DimYellow
 
static fk_Material^ Flesh
 
static fk_Material^ GlossBlack
 
static fk_Material^ GrassGreen
 
static fk_Material^ Gray1
 
static fk_Material^ Gray2
 
static fk_Material^ Green
 
static fk_Material^ HolidaySkyBlue
 
static fk_Material^ IridescentGreen
 
static fk_Material^ Ivory
 
static fk_Material^ LavaRed
 
static fk_Material^ LightBlue
 
static fk_Material^ LightCyan
 
static fk_Material^ LightGreen
 
static fk_Material^ LightViolet
 
static fk_Material^ Lilac
 
static fk_Material^ MatBlack
 
static fk_Material^ Orange
 
static fk_Material^ PaleBlue
 
static fk_Material^ PearWhite
 
static fk_Material^ Pink
 
static fk_Material^ Purple
 
static fk_Material^ Red
 
static fk_Material^ TrueWhite
 
static fk_Material^ UltraMarine
 
static fk_Material^ Violet
 
static fk_Material^ White
 
static fk_Material^ Yellow
 

プロパティ

float Alpha [get, set]
 透明度プロパティ [詳解]
 
fk_Color^  Ambient [get, set]
 環境反射係数プロパティ [詳解]
 
fk_Color^  Diffuse [get, set]
 拡散反射係数プロパティ [詳解]
 
fk_Color^  Specular [get, set]
 鏡面反射係数プロパティ [詳解]
 
fk_Color^  Emission [get, set]
 放射光反射係数プロパティ [詳解]
 
float Shininess [get, set]
 鏡面反射ハイライトプロパティ [詳解]
 

詳解

マテリアル(質感)を管理するクラス

このクラスは、マテリアル(質感)を管理、制御する機能を提供します。 FKにおけるマテリアルは、以下の要素によって成り立っています。

これらのうち、前者4つは fk_Color による RGBA 色表現であり、 後者2つは float 型によるスカラー値となっています。 各要素についての詳細はユーザーズマニュアルやCGの解説文献を参照して下さい。

マテリアルには、最初から定義されているグローバル変数があります。 これらのリストはユーザーズマニュアルの付録Aに記されています。 利用するには、 InitDefault() メソッドを呼ぶ必要があります。

インスタンス生成時の初期状態は以下のような値となります。

なお、透過色を設定した場合でも、 シーンで透過処理設定を有効としなければ、透過処理が行われません。 詳細は fk_Scene::BlendStatus の説明を参照して下さい。

参照
fk_Color, fk_Palette, fk_Scene

構築子と解体子

FK_CLI::fk_Material::fk_Material ( )

コンストラクタ

FK_CLI::fk_Material::~fk_Material ( )

デストラクタ

FK_CLI::fk_Material::!fk_Material ( )

ファイナライザ

関数詳解

bool FK_CLI::fk_Material::Equals ( fk_Material^  M)

同値比較メソッド1

二つのマテリアル値が同値かどうかを判定します。 単純に == 演算子を用いた場合はインスタンスが同一であるかどうかの判定となるため、 異なるインスタンスで同値かどうかを判定する場合はこのメソッドを利用して下さい。

引数
[in]M同値かどうかを判定するマテリアル値
戻り値
同値であれば true を、そうでなければ false を返します。
virtual bool FK_CLI::fk_Material::Equals ( Object^  M)
overridevirtual

同値比較メソッド2

二つのマテリアル値が同値かどうかを判定します。 単純に == 演算子を用いた場合はインスタンスが同一であるかどうかの判定となるため、 異なるインスタンスで同値かどうかを判定する場合はこのメソッドを利用して下さい。

引数
[in]M同値かどうかを判定するマテリアル値
戻り値
同値であれば true を、そうでなければ false を返します。
void FK_CLI::fk_Material::Init ( void  )

初期化メソッド

変数を初期状態に戻します。

static void FK_CLI::fk_Material::InitDefault ( void  )
static

デフォルトマテリアル初期化メソッド

このメソッドを呼ぶと、 ユーザーズマニュアルに掲載しているマテリアル変数の値を、 マニュアルに記載してある値に初期化します。 このメソッドを呼んだ後、該当マテリアル変数を 別のマテリアル値に設定することが可能です。

このメソッドは static 宣言されているため、 クラスのインスタンスを生成しなくても呼ぶことができます。

メンバ詳解

fk_Material ^ FK_CLI::fk_Material::AshGray
static

(0.2, 0.2, 0.2), (0.4, 0.4, 0.4), (0.01, 0.01, 0.01), (10.0)

fk_Material ^ FK_CLI::fk_Material::BambooGreen
static

(0.15, 0.28, 0.23), (0.23, 0.47, 0.19), (0.37, 0.68, 0.28), (20.0)

fk_Material ^ FK_CLI::fk_Material::Blue
static

(0.0, 0.0, 0.0), (0.0, 0.0, 0.7), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Brown
static

(0.2, 0.1, 0.0), (0.35, 0.15, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::BurntTitan
static

(0.1, 0.07, 0.07), (0.44, 0.17, 0.1), (0.6, 0.39, 0.1), (16.0)

fk_Material ^ FK_CLI::fk_Material::Coral
static

(0.5, 0.3, 0.4), (0.9, 0.5, 0.7), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Cream
static

(0.0, 0.0, 0.0), (0.8, 0.7, 0.6), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Cyan
static

(0.0, 0.0, 0.0), (0.0, 0.6, 0.6), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DarkBlue
static

(0.1, 0.1, 0.4), (0.0, 0.0, 0.25), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DarkGreen
static

(0.1, 0.4, 0.1), (0.0, 0.2, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DarkPurple
static

(0.3, 0.1, 0.3), (0.3, 0.0, 0.3), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DarkRed
static

(0.2, 0.0, 0.0), (0.4, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DarkYellow
static

(0.0, 0.0, 0.0), (0.4, 0.3, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::DimYellow
static

(0.18, 0.14, 0.0), (0.84, 0.86, 0.07), (0.92, 0.82, 0.49), (0.0)

fk_Material ^ FK_CLI::fk_Material::Flesh
static

(0.0, 0.0, 0.0), (0.8, 0.6, 0.4), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::GlossBlack
static

(0.0, 0.0, 0.0), (0.04, 0.04, 0.04), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::GrassGreen
static

(0.0, 0.1, 0.0), (0.0, 0.7, 0.0), (0.47, 0.98, 0.49), (0.0)

fk_Material ^ FK_CLI::fk_Material::Gray1
static

(0.0, 0.0, 0.0), (0.6, 0.6, 0.6), (0.1, 0.1, 0.1), (0.0)

fk_Material ^ FK_CLI::fk_Material::Gray2
static

(0.0, 0.0, 0.0), (0.2, 0.2, 0.2), (0.1, 0.1, 0.1), (0.0)

fk_Material ^ FK_CLI::fk_Material::Green
static

(0.0, 0.0, 0.0), (0.0, 0.5, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::HolidaySkyBlue
static

(0.01, 0.22, 0.4), (0.2, 0.66, 0.92), (0.47, 0.74, 0.74), (0.0)

fk_Material ^ FK_CLI::fk_Material::IridescentGreen
static

(0.04, 0.11, 0.07), (0.09, 0.39, 0.18), (0.08, 0.67, 0.1), (14.0)

fk_Material ^ FK_CLI::fk_Material::Ivory
static

(0.36, 0.28, 0.18), (0.56, 0.52, 0.29), (0.72, 0.45, 0.4), (33.0)

fk_Material ^ FK_CLI::fk_Material::LavaRed
static

(0.14, 0.0, 0.0), (0.62, 0.0, 0.0), (1.0, 0.46, 0.46), (18.0)

fk_Material ^ FK_CLI::fk_Material::LightBlue
static

(0.0, 0.0, 0.0), (0.4, 0.4, 0.9), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::LightCyan
static

(0.1, 0.2, 0.2), (0.0, 0.5, 0.5), (0.2, 0.2, 0.2), (60.0)

fk_Material ^ FK_CLI::fk_Material::LightGreen
static

(0.0, 0.0, 0.0), (0.5, 0.7, 0.3), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::LightViolet
static

(0.0, 0.0, 0.0), (0.5, 0.4, 0.9), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Lilac
static

(0.21, 0.09, 0.23), (0.64, 0.54, 0.6), (0.4, 0.26, 0.37), (15.0)

fk_Material ^ FK_CLI::fk_Material::MatBlack
static

(0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Orange
static

(0.0, 0.0, 0.0), (0.8, 0.3, 0.0), (0.2, 0.2, 0.2), (0.0)

fk_Material ^ FK_CLI::fk_Material::PaleBlue
static

(0.0, 0.0, 0.0), (0.5, 0.7, 0.7), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::PearWhite
static

(0.32, 0.29, 0.18), (0.64, 0.61, 0.5), (0.4, 0.29, 0.17), (15.0)

fk_Material ^ FK_CLI::fk_Material::Pink
static

(0.6, 0.2, 0.3), (0.9, 0.55, 0.55), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Purple
static

(0.0, 0.0, 0.0), (0.7, 0.0, 0.7), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::Red
static

(0.0, 0.0, 0.0), (0.7, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::TrueWhite
static

(1.0, 1.0, 1.0), (1.0, 1.0, 1.0), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::UltraMarine
static

(0.01, 0.03, 0.21), (0.07, 0.12, 0.49), (0.53, 0.52, 0.91), (11.0)

fk_Material ^ FK_CLI::fk_Material::Violet
static

(0.0, 0.0, 0.0), (0.4, 0.0, 0.8), (0.0, 0.0, 0.0), (0.0)

fk_Material ^ FK_CLI::fk_Material::White
static

(0.0, 0.0, 0.0), (0.8, 0.8, 0.8), (0.1, 0.1, 0.1), (0.0)

fk_Material ^ FK_CLI::fk_Material::Yellow
static

(0.0, 0.0, 0.0), (0.8, 0.6, 0.0), (0.0, 0.0, 0.0), (0.0)

プロパティ詳解

float FK_CLI::fk_Material::Alpha
getset

透明度プロパティ

透明度の設定・参照を行います。引数は float 型です。 設定できる値は 0 から 1 までで、 範囲外の数値については上下限に丸められます。

覚え書き
透過色を設定した場合でも、 シーンで透過処理設定を有効としなければ、透過処理が行われません。 詳細は fk_Scene::BlendStatus の説明を参照して下さい。
参照
fk_Scene::BlendStatus
fk_Color^ FK_CLI::fk_Material::Ambient
getset

環境反射係数プロパティ

環境反射係数の設定・参照を行います。 プロパティは fk_Color 型です。

fk_Color^ FK_CLI::fk_Material::Diffuse
getset

拡散反射係数プロパティ

拡散反射係数の設定・参照を行います。 プロパティは fk_Color 型です。

fk_Color^ FK_CLI::fk_Material::Specular
getset

鏡面反射係数プロパティ

鏡面反射係数の設定・参照を行います。 プロパティは fk_Color 型です。

fk_Color^ FK_CLI::fk_Material::Emission
getset

放射光反射係数プロパティ

放射光反射係数の設定・参照を行います。 プロパティは fk_Color 型です。

float FK_CLI::fk_Material::Shininess
getset

鏡面反射ハイライトプロパティ

鏡面反射ハイライトを設定します。引数は float 型です。