FineKernelToolKit 4.2.13
|
テクスチャ用基底クラス [詳解]
#include <FK/Texture.h>
公開メンバ関数 | |
void | setImage (fk_Image *image) |
画像データ設定関数 | |
fk_Image * | getImage (void) |
画像データ取得関数 | |
bool | readBMP (std::string fileName) |
BMP ファイル入力関数 | |
bool | readBMPData (fk_ImType *buf) |
BMP バッファ入力関数 | |
bool | readPNG (std::string fileName) |
PNG ファイル入力関数 | |
bool | readPNGData (fk_ImType *buf) |
PNG バッファ入力関数 | |
bool | readJPG (std::string fileName) |
JPEG ファイル入力関数 | |
const fk_Dimension * | getImageSize (void) |
画像サイズ取得関数 | |
const fk_Dimension * | getBufferSize (void) |
画像バッファサイズ取得関数 | |
void | setTextureMode (fk_TexMode mode) |
テクスチャモード設定関数 | |
fk_TexMode | getTextureMode (void) |
テクスチャモード取得関数 | |
void | setTexRendMode (fk_TexRendMode mode) |
テクスチャ描画品質設定関数 | |
fk_TexRendMode | getTexRendMode (void) |
テクスチャ描画品質取得関数 | |
void | setTexWrapMode (fk_TexWrapMode mode) |
テクスチャ外周部モード設定関数 | |
fk_TexWrapMode | getTexWrapMode (void) |
テクスチャ外周部モード取得関数 | |
void | fillColor (const fk_Color &color) |
一様色初期化関数1 | |
void | fillColor (int r, int g, int b, int a=0) |
一様色初期化関数2 | |
const fk_ImType * | getImageBuf (void) |
画像データ配列先頭アドレス取得関数 | |
void | setFrameBuffer (fk_FrameBuffer *buffer) |
フレームバッファー設定関数 | |
fk_FrameBuffer * | getFrameBuffer (void) |
フレームバッファー取得関数 | |
void | initFrameBuffer (void) |
フレームバッファー情報初期化関数 | |
![]() | |
fk_Shape (fk_Type=fk_Type::SHAPE) | |
コンストラクタ | |
virtual | ~fk_Shape () |
デストラクタ | |
fk_RealShapeType | getRealShapeType (void) |
形状データ構造取得関数 | |
void | setShaderAttribute (std::string name, int dim, std::vector< int > *array, bool self=false) |
シェーダー内 attribute 変数設定関数1 | |
void | setShaderAttribute (std::string name, int dim, std::vector< float > *array, bool self=false) |
シェーダー内 attribute 変数設定関数2 | |
void | setShaderAttribute (std::string name, int dim, std::vector< fk_Vector > *array) |
シェーダー内 attribute 変数設定関数3 | |
void | setShaderAttribute (std::string name, int dim, std::vector< fk_TexCoord > *array) |
シェーダー内 attribute 変数設定関数4 | |
void | setShaderAttribute (std::string name, int dim, std::vector< fk_HVector > *array) |
シェーダー内 attribute 変数設定関数5 | |
void | modifyAttribute (std::string name) |
attribute 変数更新関数 | |
![]() | |
fk_Attribute (void) | |
コンストラクタ | |
virtual | ~fk_Attribute () |
デストラクタ | |
bool | setAttrII (const int key, const int value) |
キーが int 型、値が int 型である属性設定関数 | |
bool | setAttrID (const int key, const double value) |
キーが int 型、値が double 型である属性設定関数 | |
bool | setAttrIS (const int key, const std::string value) |
キーが int 型、値が std::string 型である属性設定関数 | |
bool | setAttrSI (const std::string key, const int value) |
キーが std::string 型、値が int 型である属性設定関数 | |
bool | setAttrSD (const std::string key, const double value) |
キーが std::string 型、値が double 型である属性設定関数 | |
bool | setAttrSS (const std::string key, const std::string value) |
キーが std::string 型、値が std::string 型である属性設定関数 | |
int | getAttrII (const int key) const |
キーが int 型、値が int 型である属性参照関数 | |
double | getAttrID (const int key) const |
キーが int 型、値が double 型である属性参照関数 | |
std::string | getAttrIS (const int key) const |
キーが int 型、値が std::string 型である属性参照関数 | |
int | getAttrSI (const std::string key) const |
キーが std::string 型、値が int 型である属性参照関数 | |
double | getAttrSD (const std::string key) const |
キーが std::string 型、値が double 型である属性参照関数 | |
std::string | getAttrSS (const std::string key) const |
キーが std::string 型、値が std::string 型である属性参照関数 | |
bool | existAttrII (const int key) const |
キーが int 型、値が int 型である属性存在参照関数 | |
bool | existAttrID (const int key) const |
キーが int 型、値が double 型である属性存在参照関数 | |
bool | existAttrIS (const int key) const |
キーが int 型、値が std::string 型である属性存在参照関数 | |
bool | existAttrSI (const std::string key) const |
キーが std::string 型、値が int 型である属性存在参照関数 | |
bool | existAttrSD (const std::string key) const |
キーが std::string 型、値が double 型である属性存在参照関数 | |
bool | existAttrSS (const std::string key) const |
キーが std::string 型、値が std::string 型である属性存在参照関数 | |
bool | deleteAttrII (const int key) |
キーが int 型、値が int 型である属性消去関数 | |
bool | deleteAttrID (const int key) |
キーが int 型、値が double 型である属性消去関数 | |
bool | deleteAttrIS (const int key) |
キーが int 型、値が std::string 型である属性消去関数 | |
bool | deleteAttrSI (const std::string key) |
キーが std::string 型、値が int 型である属性消去関数 | |
bool | deleteAttrSD (const std::string key) |
キーが std::string 型、値が double 型である属性消去関数 | |
bool | deleteAttrSS (const std::string key) |
キーが std::string 型、値が std::string 型である属性消去関数 | |
![]() | |
fk_BaseObject (fk_Type type=fk_Type::BASEOBJECT) | |
コンストラクタ | |
fk_Type | getObjectType (void) const |
タイプ取得関数 | |
テクスチャ用基底クラス
このクラスは、テクスチャを表すクラスの基底クラスです。 様々なテクスチャクラスの共通機能を提供します。 クラス自体の主な機能はテクスチャ画像の生成や入力です。
void FK::fk_Texture::setImage | ( | fk_Image * | image | ) |
画像データ設定関数
画像データを設定します。
[in] | image | 画像データ |
fk_Image * FK::fk_Texture::getImage | ( | void | ) |
画像データ取得関数
現在設定されている画像データを取得します。
bool FK::fk_Texture::readBMP | ( | std::string | fileName | ) |
BMP ファイル入力関数
BMP (Windows Bitmap) 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。
[in] | fileName | ファイル名 |
bool FK::fk_Texture::readBMPData | ( | fk_ImType * | buf | ) |
BMP バッファ入力関数
BMP (Windows Bitmap) 形式のバッファからデータを読み込み、 テクスチャ画像として設定します。 fk_ImType 型は、OpenGL をサポートしている環境においては GLubyte、 サポートしていない環境では unsigned char 型として定義されています。
[in] | buf | データバッファ |
bool FK::fk_Texture::readPNG | ( | std::string | fileName | ) |
PNG ファイル入力関数
PNG 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。
[in] | fileName | ファイル名 |
bool FK::fk_Texture::readPNGData | ( | fk_ImType * | buf | ) |
PNG バッファ入力関数
PNG 形式のバッファからデータを読み込み、 テクスチャ画像として設定します。 fk_ImType 型は、OpenGL をサポートしている環境においては GLubyte、 サポートしていない環境では unsigned char 型として定義されています。
[in] | buf | データバッファ |
bool FK::fk_Texture::readJPG | ( | std::string | fileName | ) |
JPEG ファイル入力関数
JPEG 形式のファイルからデータを読み込み、 テクスチャ画像として設定します。
[in] | fileName | ファイル名 |
const fk_Dimension * FK::fk_Texture::getImageSize | ( | void | ) |
const fk_Dimension * FK::fk_Texture::getBufferSize | ( | void | ) |
画像バッファサイズ取得関数
実際に画像用データバッファとして確保されているサイズを、 fk_Dimension 型で返します。
void FK::fk_Texture::setTextureMode | ( | fk_TexMode | mode | ) |
テクスチャモード設定関数
テクスチャの描画時における描画色処理モードを設定します。 これは、ポリゴンに設定されているマテリアルによる発色と、 テクスチャ画像の色をどのように混成するかを制御するものです。 それぞれのモードの概要と厳密な計算式を以下に記載します。 なお、数式中の \( C_f \) はポリゴン色、 \( C_\alpha \) ポリゴンの透明度、 \( T_f \) はテクスチャピクセル色、 \( T_\alpha \) はテクスチャの透明度を表します。
\[ (C_f T_f, \; C_\alpha T_\alpha) \]
となります。\[ (T_f, \; T_\alpha) \]
となります。\[ (C_f (1-T_\alpha) + T_f T_\alpha, \; C_\alpha) \]
となります。デフォルトでは fk_TexMode::MODULATE が設定されています。 なお、同様の設定は fk_Model::setTextureMode() でも行うことが可能で、 fk_Model 側で fk_TexMode::NONE 以外が設定されている場合は fk_Model 側の設定が優先されます。 fk_Model 側で fk_TexMode::NONE が設定されている場合のみ、 この fk_Texture 側での設定が有効となります。
[in] | mode | モード |
fk_TexMode FK::fk_Texture::getTextureMode | ( | void | ) |
void FK::fk_Texture::setTexRendMode | ( | fk_TexRendMode | mode | ) |
テクスチャ描画品質設定関数
テクスチャの描画品質を設定します。 設定可能なモードは以下の通りです。
なお、デフォルトでは fk_TexRendMode::NORMAL が設定されています。
[in] | mode | 品質モード |
fk_TexRendMode FK::fk_Texture::getTexRendMode | ( | void | ) |
void FK::fk_Texture::setTexWrapMode | ( | fk_TexWrapMode | mode | ) |
テクスチャ外周部モード設定関数
テクスチャ描画の際、外周部についてどのように描画するかを設定します。 設定できる種類は以下のとおりです。
なお、デフォルトでは fk_TexWrapMode::REPEAT に設定されています。
[in] | mode | 外周部モード |
fk_TexWrapMode FK::fk_Texture::getTexWrapMode | ( | void | ) |
テクスチャ外周部モード取得関数
現在設定されているテクスチャ外周部モードを取得します。
void FK::fk_Texture::fillColor | ( | const fk_Color & | color | ) |
void FK::fk_Texture::fillColor | ( | int | r, |
int | g, | ||
int | b, | ||
int | a = 0 |
||
) |
一様色初期化関数2
内部の画像ピクセルを、すべて同じ色で初期化します。 色要素は、最小値が 0, 最大値が 255 として解釈します。
[in] | r | 初期化色の赤要素 |
[in] | g | 初期化色の緑要素 |
[in] | b | 初期化色の青要素 |
[in] | a | 初期化色の透明度要素 |
const fk_ImType * FK::fk_Texture::getImageBuf | ( | void | ) |
画像データ配列先頭アドレス取得関数
画像データを実際に格納しているデータ配列の先頭アドレスを参照します。
void FK::fk_Texture::setFrameBuffer | ( | fk_FrameBuffer * | buffer | ) |
フレームバッファー設定関数
fk_Renderer により生成されたフレームバッファーをテクスチャーデータとして設定します。 フレームバッファーの詳細は fk_Renderer および fk_FrameBuffer のマニュアルを参照して下さい。
[in] | buffer | フレームバッファー |
fk_FrameBuffer * FK::fk_Texture::getFrameBuffer | ( | void | ) |
フレームバッファー取得関数
設定されているフレームバッファー情報を取得します。
void FK::fk_Texture::initFrameBuffer | ( | void | ) |