FineKernelToolKit: FK_CLI::fk_Material クラス

FineKernelToolKit 4.3.0

読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 静的公開メンバ関数 | 静的公開変数類 | プロパティ | 全メンバ一覧
FK_CLI::fk_Material クラス

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

`#include <CLI/FK_CLI/include/Material_CLI.h>`

FK_CLI::fk_Material 連携図
[凡例]

## 公開メンバ関数

| fk_Material ()
| コンストラクタ1
| fk_Material (fk_Material^ mat)
| コンストラクタ2
| ~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 = gcnew fk_Material(&::FK::Material::AshGray)
static fk_Material ^ | BambooGreen = gcnew fk_Material(&::FK::Material::BambooGreen)
static fk_Material ^ | Blue = gcnew fk_Material(&::FK::Material::Blue)
static fk_Material ^ | Brown = gcnew fk_Material(&::FK::Material::Brown)
static fk_Material ^ | BurntTitan = gcnew fk_Material(&::FK::Material::BurntTitan)
static fk_Material ^ | Coral = gcnew fk_Material(&::FK::Material::Coral)
static fk_Material ^ | Cream = gcnew fk_Material(&::FK::Material::Cream)
static fk_Material ^ | Cyan = gcnew fk_Material(&::FK::Material::Cyan)
static fk_Material ^ | DarkBlue = gcnew fk_Material(&::FK::Material::DarkBlue)
static fk_Material ^ | DarkGreen = gcnew fk_Material(&::FK::Material::DarkGreen)
static fk_Material ^ | DarkPurple = gcnew fk_Material(&::FK::Material::DarkPurple)
static fk_Material ^ | DarkRed = gcnew fk_Material(&::FK::Material::DarkRed)
static fk_Material ^ | DarkYellow = gcnew fk_Material(&::FK::Material::DarkYellow)
static fk_Material ^ | DimYellow = gcnew fk_Material(&::FK::Material::DimYellow)
static fk_Material ^ | Flesh = gcnew fk_Material(&::FK::Material::Flesh)
static fk_Material ^ | GlossBlack = gcnew fk_Material(&::FK::Material::GlossBlack)
static fk_Material ^ | GrassGreen = gcnew fk_Material(&::FK::Material::GrassGreen)
static fk_Material ^ | Gray1 = gcnew fk_Material(&::FK::Material::Gray1)
static fk_Material ^ | Gray2 = gcnew fk_Material(&::FK::Material::Gray2)
static fk_Material ^ | Green = gcnew fk_Material(&::FK::Material::Green)
static fk_Material ^ | HolidaySkyBlue = gcnew fk_Material(&::FK::Material::HolidaySkyBlue)
static fk_Material ^ | IridescentGreen = gcnew fk_Material(&::FK::Material::IridescentGreen)
static fk_Material ^ | Ivory = gcnew fk_Material(&::FK::Material::Ivory)
static fk_Material ^ | LavaRed = gcnew fk_Material(&::FK::Material::LavaRed)
static fk_Material ^ | LightBlue = gcnew fk_Material(&::FK::Material::LightBlue)
static fk_Material ^ | LightCyan = gcnew fk_Material(&::FK::Material::LightCyan)
static fk_Material ^ | LightGreen = gcnew fk_Material(&::FK::Material::LightGreen)
static fk_Material ^ | LightViolet = gcnew fk_Material(&::FK::Material::LightViolet)
static fk_Material ^ | Lilac = gcnew fk_Material(&::FK::Material::Lilac)
static fk_Material ^ | MatBlack = gcnew fk_Material(&::FK::Material::MatBlack)
static fk_Material ^ | Orange = gcnew fk_Material(&::FK::Material::Orange)
static fk_Material ^ | PaleBlue = gcnew fk_Material(&::FK::Material::PaleBlue)
static fk_Material ^ | PearWhite = gcnew fk_Material(&::FK::Material::PearWhite)
static fk_Material ^ | Pink = gcnew fk_Material(&::FK::Material::Pink)
static fk_Material ^ | Purple = gcnew fk_Material(&::FK::Material::Purple)
static fk_Material ^ | Red = gcnew fk_Material(&::FK::Material::Red)
static fk_Material ^ | TrueWhite = gcnew fk_Material(&::FK::Material::TrueWhite)
static fk_Material ^ | UltraMarine = gcnew fk_Material(&::FK::Material::UltraMarine)
static fk_Material ^ | Violet = gcnew fk_Material(&::FK::Material::Violet)
static fk_Material ^ | White = gcnew fk_Material(&::FK::Material::White)
static fk_Material ^ | Yellow = gcnew fk_Material(&::FK::Material::Yellow)
static fk_Material ^ | WhiteLight = gcnew fk_Material(&::FK::Material::WhiteLight)
static fk_Material ^ | Raw = gcnew fk_Material(&::FK::Material::Raw)

## プロパティ

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_Material() [1/2]

FK_CLI::fk_Material::fk_Material | ( |  | ) |

コンストラクタ1

概要に述べた初期値に従ってインスタンスの生成を行います。

## ◆ fk_Material() [2/2]

FK_CLI::fk_Material::fk_Material | ( | fk_Material^ | mat | ) |

コンストラクタ2

他の fk_Material 型インスタンスより値をコピーしてインスンタスを生成します。

引数

  [in] | mat | 別の fk_Material 型インスタンス

## ◆ ~fk_Material()

FK_CLI::fk_Material::~fk_Material | ( |  | ) |

デストラクタ

## ◆ !fk_Material()

FK_CLI::fk_Material::!fk_Material | ( |  | ) |

ファイナライザ

## 関数詳解

## ◆ Equals() [1/2]

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

同値比較メソッド1

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

引数

  [in] | M | 同値かどうかを判定するマテリアル値

戻り値
  同値であれば true を、そうでなければ false を返します。

## ◆ Equals() [2/2]

virtual bool FK_CLI::fk_Material::Equals | ( | Object^ | M | ) |

overridevirtual

同値比較メソッド2

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

引数

  [in] | M | 同値かどうかを判定するマテリアル値

戻り値
  同値であれば true を、そうでなければ false を返します。

## ◆ Init()

void FK_CLI::fk_Material::Init | ( | void |  | ) |

初期化メソッド

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

## ◆ InitDefault()

void FK_CLI::fk_Material::InitDefault | ( | void |  | ) |

static

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

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

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

## メンバ詳解

## ◆ AshGray

fk_Material ^ FK_CLI::fk_Material::AshGray = gcnew fk_Material(&::FK::Material::AshGray)

static

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

## ◆ BambooGreen

fk_Material ^ FK_CLI::fk_Material::BambooGreen = gcnew fk_Material(&::FK::Material::BambooGreen)

static

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

## ◆ Blue

fk_Material ^ FK_CLI::fk_Material::Blue = gcnew fk_Material(&::FK::Material::Blue)

static

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

## ◆ Brown

fk_Material ^ FK_CLI::fk_Material::Brown = gcnew fk_Material(&::FK::Material::Brown)

static

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

## ◆ BurntTitan

fk_Material ^ FK_CLI::fk_Material::BurntTitan = gcnew fk_Material(&::FK::Material::BurntTitan)

static

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

## ◆ Coral

fk_Material ^ FK_CLI::fk_Material::Coral = gcnew fk_Material(&::FK::Material::Coral)

static

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

## ◆ Cream

fk_Material ^ FK_CLI::fk_Material::Cream = gcnew fk_Material(&::FK::Material::Cream)

static

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

## ◆ Cyan

fk_Material ^ FK_CLI::fk_Material::Cyan = gcnew fk_Material(&::FK::Material::Cyan)

static

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

## ◆ DarkBlue

fk_Material ^ FK_CLI::fk_Material::DarkBlue = gcnew fk_Material(&::FK::Material::DarkBlue)

static

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

## ◆ DarkGreen

fk_Material ^ FK_CLI::fk_Material::DarkGreen = gcnew fk_Material(&::FK::Material::DarkGreen)

static

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

## ◆ DarkPurple

fk_Material ^ FK_CLI::fk_Material::DarkPurple = gcnew fk_Material(&::FK::Material::DarkPurple)

static

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

## ◆ DarkRed

fk_Material ^ FK_CLI::fk_Material::DarkRed = gcnew fk_Material(&::FK::Material::DarkRed)

static

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

## ◆ DarkYellow

fk_Material ^ FK_CLI::fk_Material::DarkYellow = gcnew fk_Material(&::FK::Material::DarkYellow)

static

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

## ◆ DimYellow

fk_Material ^ FK_CLI::fk_Material::DimYellow = gcnew fk_Material(&::FK::Material::DimYellow)

static

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

## ◆ Flesh

fk_Material ^ FK_CLI::fk_Material::Flesh = gcnew fk_Material(&::FK::Material::Flesh)

static

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

## ◆ GlossBlack

fk_Material ^ FK_CLI::fk_Material::GlossBlack = gcnew fk_Material(&::FK::Material::GlossBlack)

static

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

## ◆ GrassGreen

fk_Material ^ FK_CLI::fk_Material::GrassGreen = gcnew fk_Material(&::FK::Material::GrassGreen)

static

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

## ◆ Gray1

fk_Material ^ FK_CLI::fk_Material::Gray1 = gcnew fk_Material(&::FK::Material::Gray1)

static

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

## ◆ Gray2

fk_Material ^ FK_CLI::fk_Material::Gray2 = gcnew fk_Material(&::FK::Material::Gray2)

static

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

## ◆ Green

fk_Material ^ FK_CLI::fk_Material::Green = gcnew fk_Material(&::FK::Material::Green)

static

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

## ◆ HolidaySkyBlue

fk_Material ^ FK_CLI::fk_Material::HolidaySkyBlue = gcnew fk_Material(&::FK::Material::HolidaySkyBlue)

static

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

## ◆ IridescentGreen

fk_Material ^ FK_CLI::fk_Material::IridescentGreen = gcnew fk_Material(&::FK::Material::IridescentGreen)

static

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

## ◆ Ivory

fk_Material ^ FK_CLI::fk_Material::Ivory = gcnew fk_Material(&::FK::Material::Ivory)

static

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

## ◆ LavaRed

fk_Material ^ FK_CLI::fk_Material::LavaRed = gcnew fk_Material(&::FK::Material::LavaRed)

static

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

## ◆ LightBlue

fk_Material ^ FK_CLI::fk_Material::LightBlue = gcnew fk_Material(&::FK::Material::LightBlue)

static

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

## ◆ LightCyan

fk_Material ^ FK_CLI::fk_Material::LightCyan = gcnew fk_Material(&::FK::Material::LightCyan)

static

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

## ◆ LightGreen

fk_Material ^ FK_CLI::fk_Material::LightGreen = gcnew fk_Material(&::FK::Material::LightGreen)

static

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

## ◆ LightViolet

fk_Material ^ FK_CLI::fk_Material::LightViolet = gcnew fk_Material(&::FK::Material::LightViolet)

static

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

## ◆ Lilac

fk_Material ^ FK_CLI::fk_Material::Lilac = gcnew fk_Material(&::FK::Material::Lilac)

static

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

## ◆ MatBlack

fk_Material ^ FK_CLI::fk_Material::MatBlack = gcnew fk_Material(&::FK::Material::MatBlack)

static

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

## ◆ Orange

fk_Material ^ FK_CLI::fk_Material::Orange = gcnew fk_Material(&::FK::Material::Orange)

static

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

## ◆ PaleBlue

fk_Material ^ FK_CLI::fk_Material::PaleBlue = gcnew fk_Material(&::FK::Material::PaleBlue)

static

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

## ◆ PearWhite

fk_Material ^ FK_CLI::fk_Material::PearWhite = gcnew fk_Material(&::FK::Material::PearWhite)

static

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

## ◆ Pink

fk_Material ^ FK_CLI::fk_Material::Pink = gcnew fk_Material(&::FK::Material::Pink)

static

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

## ◆ Purple

fk_Material ^ FK_CLI::fk_Material::Purple = gcnew fk_Material(&::FK::Material::Purple)

static

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

## ◆ Red

fk_Material ^ FK_CLI::fk_Material::Red = gcnew fk_Material(&::FK::Material::Red)

static

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

## ◆ TrueWhite

fk_Material ^ FK_CLI::fk_Material::TrueWhite = gcnew fk_Material(&::FK::Material::TrueWhite)

static

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

## ◆ UltraMarine

fk_Material ^ FK_CLI::fk_Material::UltraMarine = gcnew fk_Material(&::FK::Material::UltraMarine)

static

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

## ◆ Violet

fk_Material ^ FK_CLI::fk_Material::Violet = gcnew fk_Material(&::FK::Material::Violet)

static

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

## ◆ White

fk_Material ^ FK_CLI::fk_Material::White = gcnew fk_Material(&::FK::Material::White)

static

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

## ◆ Yellow

fk_Material ^ FK_CLI::fk_Material::Yellow = gcnew fk_Material(&::FK::Material::Yellow)

static

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

## ◆ WhiteLight

fk_Material ^ FK_CLI::fk_Material::WhiteLight = gcnew fk_Material(&::FK::Material::WhiteLight)

static

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

## ◆ Raw

fk_Material ^ FK_CLI::fk_Material::Raw = gcnew fk_Material(&::FK::Material::Raw)

static

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

## プロパティ詳解

## ◆ Alpha

float FK_CLI::fk_Material::Alpha

getset

透明度プロパティ

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

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

参照
  fk_Scene::BlendStatus

## ◆ Ambient

fk_Color^ FK_CLI::fk_Material::Ambient

getset

環境反射係数プロパティ

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

## ◆ Diffuse

fk_Color^ FK_CLI::fk_Material::Diffuse

getset

拡散反射係数プロパティ

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

## ◆ Specular

fk_Color^ FK_CLI::fk_Material::Specular

getset

鏡面反射係数プロパティ

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

## ◆ Emission

fk_Color^ FK_CLI::fk_Material::Emission

getset

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

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

## ◆ Shininess

float FK_CLI::fk_Material::Shininess

getset

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

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