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におけるマテリアルは、以下の要素によって成り立っています。

- 環境反射係数 (Ambient)
- 拡散反射係数 (Diffuse)
- 鏡面反射係数 (Specular)
- 放射光係数 (Emission)
- 鏡面反射ハイライト (Shininess)
- 透明度 (alpha)

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

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

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

- 環境反射係数: (0.3, 0.3, 0.3)
- 拡散反射係数: (0.0, 0.0, 0.0)
- 鏡面反射係数: (0.2, 0.2, 0.2)
- 放射光係数: (0.0, 0.0, 0.0)
- 鏡面反射ハイライト: 17.0
- 透明度: 1.0

なお、透過色を設定した場合でも、 シーンで透過処理設定を有効としなければ、透過処理が行われません。 詳細は 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 | ) |
| override virtual

同値比較メソッド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
| get set

透明度プロパティ

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

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

参照
  fk_Scene::BlendStatus

fk_Color^ FK_CLI::fk_Material::Ambient
| get set

環境反射係数プロパティ

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

fk_Color^ FK_CLI::fk_Material::Diffuse
| get set

拡散反射係数プロパティ

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

fk_Color^ FK_CLI::fk_Material::Specular
| get set

鏡面反射係数プロパティ

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

fk_Color^ FK_CLI::fk_Material::Emission
| get set

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

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

float FK_CLI::fk_Material::Shininess
| get set

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

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