FineKernelToolKit  3.1.0
公開メンバ関数 | プロパティ | 全メンバ一覧
FK_CLI::fk_Texture クラス

テクスチャ用基底クラス [詳解]

+ FK_CLI::fk_Texture の継承関係図
+ FK_CLI::fk_Texture 連携図

公開メンバ関数

bool ReadBMP (String^ fileName)
 BMP ファイル入力メソッド [詳解]
 
bool ReadPNG (String^ fileName)
 PNG ファイル入力メソッド [詳解]
 
bool ReadJPG (String^ fileName)
 JPEG ファイル入力メソッド [詳解]
 
void FillColor (fk_Color^ color)
 一様色初期化メソッド1 [詳解]
 
- 基底クラス FK_CLI::fk_Shape に属する継承公開メンバ関数
void ClearMaterial (void)
 パレット初期化メソッド [詳解]
 
void PushPalette (fk_Material^ mat)
 マテリアル追加メソッド [詳解]
 
void SetPalette (fk_Material^ mat, int ID)
 マテリアル設定メソッド [詳解]
 
fk_MaterialGetMaterial (int ID)
 マテリアル取得メソッド [詳解]
 
- 基底クラス FK_CLI::fk_Attribute に属する継承公開メンバ関数
bool SetAttrII (int key, int value)
 キーが int 型、値が int 型である属性設定メソッド [詳解]
 
bool SetAttrID (int key, double value)
 キーが int 型、値が double 型である属性設定メソッド [詳解]
 
bool SetAttrIS (int key, String^ value)
 キーが int 型、値が String 型である属性設定メソッド [詳解]
 
bool SetAttrSI (String^ key, int value)
 キーが String 型、値が int 型である属性設定メソッド [詳解]
 
bool SetAttrSD (String^ key, double value)
 キーが String 型、値が double 型である属性設定メソッド [詳解]
 
bool SetAttrSS (String^ key, String^ value)
 キーが String 型、値が String 型である属性設定メソッド [詳解]
 
int GetAttrII (int key)
 キーが int 型、値が int 型である属性参照メソッド [詳解]
 
double GetAttrID (int key)
 キーが int 型、値が double 型である属性参照メソッド [詳解]
 
String^ GetAttrIS (int key)
 キーが int 型、値が String 型である属性参照メソッド [詳解]
 
int GetAttrSI (String^ key)
 キーが String 型、値が int 型である属性参照メソッド [詳解]
 
double GetAttrSD (String^ key)
 キーが String 型、値が double 型である属性参照メソッド [詳解]
 
String^ GetAttrSS (String^ key)
 キーが String 型、値が String 型である属性参照メソッド [詳解]
 
bool ExistAttrII (int key)
 キーが int 型、値が int 型である属性存在参照メソッド [詳解]
 
bool ExistAttrID (int key)
 キーが int 型、値が double 型である属性存在参照メソッド [詳解]
 
bool ExistAttrIS (int key)
 キーが int 型、値が String 型である属性存在参照メソッド [詳解]
 
bool ExistAttrSI (String^ key)
 キーが String 型、値が int 型である属性存在参照メソッド [詳解]
 
bool ExistAttrSD (String^ key)
 キーが String 型、値が double 型である属性存在参照メソッド [詳解]
 
bool ExistAttrSS (String^ key)
 キーが String 型、値が String 型である属性存在参照メソッド [詳解]
 
bool DeleteAttrII (int key)
 キーが int 型、値が int 型である属性消去メソッド [詳解]
 
bool DeleteAttrID (int key)
 キーが int 型、値が double 型である属性消去メソッド [詳解]
 
bool DeleteAttrIS (int key)
 キーが int 型、値が String 型である属性消去メソッド [詳解]
 
bool DeleteAttrSI (String^ key)
 キーが String 型、値が int 型である属性消去メソッド [詳解]
 
bool DeleteAttrSD (String^ key)
 キーが String 型、値が double 型である属性消去メソッド [詳解]
 
bool DeleteAttrSS (String^ key)
 キーが String 型、値が String 型である属性消去メソッド [詳解]
 

プロパティ

fk_Image^  Image [get, set]
 画像データプロパティ [詳解]
 
fk_Dimension^  ImageSize [get]
 画像サイズプロパティ [詳解]
 
fk_Dimension^  BufferSize [get]
 画像バッファサイズプロパティ [詳解]
 
fk_TexMode TextureMode [get, set]
 テクスチャモードプロパティ [詳解]
 
fk_TexRendMode RendMode [get, set]
 テクスチャ描画品質プロパティ [詳解]
 
fk_TexWrapMode WrapMode [get, set]
 テクスチャ外周部設定プロパティ [詳解]
 
- 基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeType^  RealShapeType [get]
 形状データ構造プロパティ [詳解]
 
fk_Palette^  Palette [get]
 パレットプロパティ [詳解]
 
fk_MaterialMode MaterialMode [get, set]
 マテリアルモード設定メソッド [詳解]
 
int MaterialID [get, set]
 オブジェクトマテリアル ID プロパティ [詳解]
 
int PaletteSize [get]
 パレット中のマテリアル格納数プロパティ [詳解]
 
cli::array< fk_Material^ >^ MaterialVector [get]
 マテリアル配列取得メソッド [詳解]
 

詳解

テクスチャ用基底クラス

このクラスは、テクスチャを表すクラスの基底クラスです。 様々なテクスチャクラスの共通機能を提供します。 クラス自体の主な機能はテクスチャ画像の生成や入力です。

参照
fk_Image, fk_RectTexture, fk_TriTexture, fk_MeshTexture, fk_IFSTexture, fk_Dimension

関数詳解

bool FK_CLI::fk_Texture::ReadBMP ( String^  fileName)

BMP ファイル入力メソッド

BMP (Windows Bitmap) 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。
bool FK_CLI::fk_Texture::ReadPNG ( String^  fileName)

PNG ファイル入力メソッド

PNG 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。
bool FK_CLI::fk_Texture::ReadJPG ( String^  fileName)

JPEG ファイル入力メソッド

JPEG 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。
void FK_CLI::fk_Texture::FillColor ( fk_Color color)

一様色初期化メソッド1

内部の画像ピクセルを、すべて同じ色で初期化します。

引数
[in]color初期化色
参照
fk_Color

プロパティ詳解

fk_Image^ FK_CLI::fk_Texture::Image
getset

画像データプロパティ

画像データの参照・設定を行います。

覚え書き
fk_Texture (およびその派生クラス) では、 最初から自前の画像データ領域を保持しています。 このプロパティでの設定は、あくまで外部で用意した画像データを テクスチャとして利用したい場合に使用するためのものであり、 必ず設定しなければならないというわけではありません。
fk_Dimension^ FK_CLI::fk_Texture::ImageSize
get

画像サイズプロパティ

画像サイズを fk_Dimension 型で参照します。

参照
BufferSize
fk_Dimension^ FK_CLI::fk_Texture::BufferSize
get

画像バッファサイズプロパティ

実際に画像用データバッファとして確保されているサイズを、 fk_Dimension 型で参照します。

覚え書き
実画像サイズとデータバッファサイズの違いについては、 fk_Image::BufferSize の覚え書きを参照して下さい。
参照
ImageSize, fk_Image::BufferSize
fk_TexMode FK_CLI::fk_Texture::TextureMode
getset

テクスチャモードプロパティ

テクスチャの描画時における描画色処理モードの参照・設定を行います。 これは、ポリゴンに設定されているマテリアルによる発色と、 テクスチャ画像の色をどのように混成するかを制御するものです。 それぞれのモードの概要と厳密な計算式を以下に記載します。 なお、数式中の $ C_f $ はポリゴン色、 $ C_\alpha $ ポリゴンの透明度、 $ T_f $ はテクスチャピクセル色、 $ T_\alpha $ はテクスチャの透明度を表します。

  • fk_TexMode.MODULATE
    この設定では、ポリゴンの色とテクスチャの色を積算します。 そのため、光源による陰影効果が生じます。 透明度に関しても積算となります。 数式として表すと、色と透明度はそれぞれ

    \[ (C_f T_f, \; C_\alpha T_\alpha) \]

    となります。
  • fk_TexMode.REPLACE
    この設定では、ポリゴンの色は完全に無視され、 テクスチャのピクセル色がそのまま表示されます。 そのため、光源による陰影効果が生じません。 また、テクスチャ画像の透明度はそのまま描画に反映されます。 数式として表すと、色と透明度はそれぞれ

    \[ (T_f, \; T_\alpha) \]

    となります。
  • fk_TexMode.DECAL
    この設定では、各ピクセルの透明度に応じて、 ポリゴン色とピクセル色の混合が行われます。 光源による陰影効果は、ピクセルの透明度が低い場合に強くなります。 透明度は、ポリゴンの透明度がそのまま適用されます。 これを数式として表すと、色と透明度はそれぞれ

    \[ (C_f (1-T_\alpha) + T_f T_\alpha, \; C_\alpha) \]

    となります。

なお、デフォルトでは fk_TexMode.MODULATE が設定されています。

fk_TexRendMode FK_CLI::fk_Texture::RendMode
getset

テクスチャ描画品質プロパティ

テクスチャの描画品質の参照・設定を行います。 設定可能なモードは以下の通りです。

なお、デフォルトでは fk_TexRendMode.NORMAL が設定されています。

引数
[in]mode品質モード
fk_TexWrapMode FK_CLI::fk_Texture::WrapMode
getset

テクスチャ外周部設定プロパティ

テクスチャ描画の際、外周部についてどのように描画するかを設定します。 設定できる種類は以下のとおりです。

デフォルトでは fk_TexWrapMode.REPEAT に設定されています。