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

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

#include <CLI/FK_CLI/include/Texture_CLI.h>

+ 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
 
void InitFrameBuffer (void)
 フレームバッファー情報初期化メソッド
 
- 基底クラス FK_CLI::fk_Shape に属する継承公開メンバ関数
void SetShaderAttribute (String^ name, int dim, IEnumerable< int >^ array)
 シェーダー内 attribute 変数設定メソッド1
 
void SetShaderAttribute (String^ name, int dim, IEnumerable< float >^ array)
 シェーダー内 attribute 変数設定メソッド2
 
void SetShaderAttribute (String^ name, int dim, IEnumerable< double >^ array)
 シェーダー内 attribute 変数設定メソッド3
 
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_Vector^>^ array)
 シェーダー内 attribute 変数設定メソッド4
 
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_TexCoord^>^ array)
 シェーダー内 attribute 変数設定メソッド5
 
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_HVector^>^ array)
 シェーダー内 attribute 変数設定メソッド6
 
- 基底クラス 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_ImageImage [get, set]
 画像データプロパティ
 
fk_DimensionImageSize [get]
 画像サイズプロパティ
 
fk_DimensionBufferSize [get]
 画像バッファサイズプロパティ
 
fk_TexMode TextureMode [get, set]
 テクスチャモードプロパティ
 
fk_TexRendMode RendMode [get, set]
 テクスチャ描画品質プロパティ
 
fk_TexWrapMode WrapMode [get, set]
 テクスチャ外周部設定プロパティ
 
fk_FrameBufferFrameBuffer [get, set]
 フレームバッファープロパティ
 
- 基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeTypeRealShapeType [get]
 形状データ構造プロパティ
 

詳解

テクスチャ用基底クラス

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

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

関数詳解

◆ ReadBMP()

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

BMP ファイル入力メソッド

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

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。

◆ ReadPNG()

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

PNG ファイル入力メソッド

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

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。

◆ ReadJPG()

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

JPEG ファイル入力メソッド

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

引数
[in]fileNameファイル名
戻り値
入力に成功すれば true、失敗すれば false を返します。

◆ FillColor()

void FK_CLI::fk_Texture::FillColor ( fk_Color color)

一様色初期化メソッド1

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

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

◆ InitFrameBuffer()

void FK_CLI::fk_Texture::InitFrameBuffer ( void  )

フレームバッファー情報初期化メソッド

設定されているフレームバッファー情報を破棄します。

参照
FrameBuffer

プロパティ詳解

◆ Image

fk_Image^ FK_CLI::fk_Texture::Image
getset

画像データプロパティ

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

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

◆ ImageSize

fk_Dimension^ FK_CLI::fk_Texture::ImageSize
get

画像サイズプロパティ

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

参照
BufferSize

◆ BufferSize

fk_Dimension^ FK_CLI::fk_Texture::BufferSize
get

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

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

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

◆ TextureMode

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 が設定されています。

◆ RendMode

fk_TexRendMode FK_CLI::fk_Texture::RendMode
getset

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

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

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

引数
[in]mode品質モード

◆ WrapMode

fk_TexWrapMode FK_CLI::fk_Texture::WrapMode
getset

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

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

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

◆ FrameBuffer

fk_FrameBuffer^ FK_CLI::fk_Texture::FrameBuffer
getset

フレームバッファープロパティ

fk_Renderer により生成されたフレームバッファーをテクスチャーデータとして設定します。 フレームバッファーの詳細は fk_Renderer および fk_FrameBuffer のマニュアルを参照して下さい。 なお、フレームバッファーが設定されていない状況で参照した場合は null を返します。

覚え書き
本プロパティを用いてフレームバッファーを設定した場合、 以前に設定されていた画像データは破棄されます。
参照
fk_Renderer, fk_FrameBuffer