クラス fk_Fog

シーン中の霧効果を制御するクラス [詳細]

fk_Fogに対する継承グラフ
Inheritance graph
[凡例]
fk_Fogのコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

Public メソッド

 fk_Fog (void)
 コンストラクタ
 ~fk_Fog ()
 デストラクタ
void setFogMode (const fk_FogMode mode)
 減衰関数設定関数
void setFogOption (const fk_FogOption opt)
 霧効果処理オプション設定関数
void setFogDensity (const double d)
 指数式係数設定関数
void setFogLinearMap (const double S, const double E)
 線形式係数設定関数
void setFogColor (const fk_Color col)
 霧色設定関数1
void setFogColor (const float r, const float g, const float b, const float a)
 霧色設定関数2
void setFogColor (const double r, const double g, const double b, const double a)
 霧色設定関数3
fk_FogMode getFogMode (void) const
 減衰関数取得関数
fk_FogOption getFogOption (void) const
 霧効果処理オプション取得関数
double getFogDensity (void) const
 指数式係数取得関数
double getFogLinearStart (void) const
 線形式係数取得関数1
double getFogLinearEnd (void) const
 線形式係数取得関数1
fk_Color getFogColor (void) const
 霧色取得関数

説明

シーン中の霧効果を制御するクラス

このクラスは、シーン内の霧効果を制御する機能を提供します。 実際の利用時には、インスタンスは本クラスのものではなく 派生クラスの fk_Scene によるものを利用することになります。

参照:
fk_Scene, fk_DisplayLink, fk_Color

コンストラクタとデストラクタ

fk_Fog::fk_Fog ( void   ) 

コンストラクタ

fk_Fog::~fk_Fog (  ) 

デストラクタ


関数

void fk_Fog::setFogMode ( const fk_FogMode  mode  ) 

減衰関数設定関数

霧効果の減衰関数を設定します。設定できる関数の種類は以下のとおりです。 各数式中の $ z $ はカメラからの距離を意味します。

  • FK_LINEAR_FOG
    減衰関数として線形式を設定します。具体的には以下の数式を用います。

    \[ \frac{E-z}{E-S} \]

    式中の $ E, S $setFogLinearMap() で設定します。
  • FK_EXP_FOG
    減衰関数として指数式を設定します。具体的には以下の数式を用います。

    \[ e^{-dz} \]

    式中の $ d $setFogDensity() で設定します。
  • FK_EXP2_FOG
    減衰関数として指数(2乗)式を設定します。具体的には以下の数式を用います。

    \[ e^{-\left(dz\right)^2} \]

    式中の $ d $setFogDensity() で設定します。
  • FK_NONE_FOG
    この値を設定した場合、霧効果を無効にします。

デフォルトでは FK_NONE_FOG が設定されています。

引数:
[in] mode 減衰関数を表す値
void fk_Fog::setFogOption ( const fk_FogOption  opt  ) 

霧効果処理オプション設定関数

霧効果処理に対するオプションを設定します。 実際の効果の程度についてはハードウェアやOSに依存します。 設定できるオプションの種類は以下のとおりです。

  • FK_FASTEST_FOG
    処理の際に、実行速度を優先します。
  • FK_NICEST_FOG
    処理の際に、品質を優先します。
  • FK_NOOPTION_FOG
    特に優先度を設定しません。

デフォルトでは FK_NOOPTION_FOG が設定されています。

引数:
[in] opt オプションを表す値
void fk_Fog::setFogDensity ( const double  d  ) 

指数式係数設定関数

減衰関数として指数式か指数(2乗)式を選択した場合の、 指数部の係数 d を設定します。 数式の詳細は setFogMode() を参照して下さい。

引数:
[in] d 指数部係数
void fk_Fog::setFogLinearMap ( const double  S,
const double  E 
)

線形式係数設定関数

減衰関数として線形式を選択した場合の、 係数 S, E を設定します。 意味的には、霧効果が始まる最低距離が S、 霧によって完全に物体が見えなくなる距離を E とすることになります。 数式の詳細は setFogMode() を参照して下さい。

引数:
[in] S 霧効果開始距離
[in] E 霧効果完全距離
void fk_Fog::setFogColor ( const fk_Color  col  ) 

霧色設定関数1

霧の色を設定します。通常はシーンの背景色と同色とします。

引数:
[in] col 霧色
参照:
fk_Scene::setBGColor()
void fk_Fog::setFogColor ( const float  r,
const float  g,
const float  b,
const float  a 
)

霧色設定関数2

霧の色を設定します。通常はシーンの背景色と同色とします。 色設定に関しての詳細は fk_Color を参照して下さい。

引数:
[in] r 霧色のR(赤)要素値
[in] g 霧色のG(緑)要素値
[in] b 霧色のB(青)要素値
[in] a 霧色のA(透過)要素値
参照:
fk_Scene::setBGColor()
void fk_Fog::setFogColor ( const double  r,
const double  g,
const double  b,
const double  a 
)

霧色設定関数3

霧の色を設定します。通常はシーンの背景色と同色とします。 色設定に関しての詳細は fk_Color を参照して下さい。

引数:
[in] r 霧色のR(赤)要素値
[in] g 霧色のG(緑)要素値
[in] b 霧色のB(青)要素値
[in] a 霧色のA(透過)要素値
参照:
fk_Scene::setBGColor()
fk_FogMode fk_Fog::getFogMode ( void   )  const

減衰関数取得関数

霧効果の減衰関数として何が選択されているのかを取得します。 関数の種類および詳細は setFogMode() を参照して下さい。

戻り値:
減衰関数を表す値
fk_FogOption fk_Fog::getFogOption ( void   )  const

霧効果処理オプション取得関数

霧効果処理に対して現在設定されているオプションを取得します。 オプションの種類および詳細は setFogOption() を参照して下さい。

戻り値:
オプションを表す値
double fk_Fog::getFogDensity ( void   )  const

指数式係数取得関数

減衰関数として指数式か指数(2乗)式を選択した場合の、 指数部の係数 d を参照します。 数式の詳細は setFogMode() を参照して下さい。

戻り値:
指数部係数
double fk_Fog::getFogLinearStart ( void   )  const

線形式係数取得関数1

減衰関数として線形式を選択した場合の、 係数 S を参照します。 数式の詳細は setFogMode() を参照して下さい。

戻り値:
霧効果開始距離
double fk_Fog::getFogLinearEnd ( void   )  const

線形式係数取得関数1

減衰関数として線形式を選択した場合の、 係数 E を参照します。 数式の詳細は setFogMode() を参照して下さい。

戻り値:
霧効果完全距離
fk_Color fk_Fog::getFogColor ( void   )  const

霧色取得関数

現在設定されている霧の色を参照します。

戻り値:
霧色

FineKernelToolKitに対してSat Sep 26 20:35:29 2009に生成されました。  doxygen 1.6.1