BuddhaLibExample::ExampleCamera Class Reference

非常にシンプルなカメラ More...

#include <BuddhaExampleCamera.h>

List of all members.

Public Member Functions

 ExampleCamera (void)
 コンストラクタ
virtual ~ExampleCamera (void)
 デストラクタ
void SetPosition (const Vector3 &pos)
 カメラ座標の設定
void SetPosition (FLOAT x, FLOAT y, FLOAT z)
 カメラ座標の設定
const Vector3GetPosition (void) const
 カメラ座標の取得
void SetFOV (FLOAT fov)
 FOVの設定.
void SetAspectRatio (FLOAT ratio)
 アスペクト・レシオの設定
void SetNearDistance (FLOAT nearDistance)
 ニア・クリップ・ディスタンスの設定
void SetFarDistance (FLOAT farDistance)
 ファー・クリップ・ディスタンスの設定
void SetLookAt (const Vector3 &lookAt)
 注視点へカメラを向ける
void SetLookAt (FLOAT x, FLOAT y, FLOAT z)
 注視点へカメラを向ける
void Yaw (FLOAT angle)
 指定角度(ラジアン)にヨー回転
void Pitch (FLOAT angle)
 指定角度(ラジアン)にピッチ回転
void Roll (FLOAT angle)
 指定角度(ラジアン)にロール回転
void Translate (const Vector3 &transVec)
 指定ベクトルの方向へカメラ位置を移動(カメラの姿勢の影響を受ける...ローカル座標)
const MatrixGetViewMatrix (void) const
 ビューマトリクスの取得
const MatrixGetProjectionMatrix (void) const
 プロジェクションマトリクスの取得

Protected Attributes

Vector3 mPosition
 カメラ座標
Quaternion mOrientation
 カメラの姿勢
FLOAT mNDistance
 ニア・クリップ・ディスタンス(初期値1.0f)
FLOAT mFDistance
 ファー・クリップ・ディスタンス(初期値1000.0f)
FLOAT mFOV
 フィールド・オブ・ビュー(初期値 45度)
FLOAT mAspectRatio
 アスペクト・レシオ(初期値 1.33)
Matrix mView
 ビューマトリクスのキャッシュ
Matrix mProj
 プロジェクションマトリクスのキャッシュ
bool mOutOfDateViewMatrix
 ビューマトリクスのキャッシュ有/無効フラグ
bool mOutOfDateProjMatrix
 プロジェクションマトリクスのキャッシュ有/無効フラグ
BoundingFrustum mFrustum
 ビューフラスタムのキャッシュ
bool mOutOfDateFrustum
 ビューフラスタムのキャッシュ有/無効フラグ


Detailed Description

非常にシンプルなカメラ

カメラ座標と注視点を設定し、二つのマトリクスを取得して使用します。

   BuddhaXNAExample::ExampleCamera* pCamera = new BuddhaXNAExample::ExampleCamera();

   pCamera->SetPosition(0, 50.0f, 100.0f);
   pCamera->SetLookAt(0, 0, 0);

   // パン、ティルトなどは回転で
   pCamera->pitch((FLOAT)MathHelper::ToRadians(45.0f));

   Matrix viewMat = pCamera->GetViewMatrix();
   Matrix projMat = pCamera->GetProjectionMatrix();

Attention:
BuddhaXNAExample 名前空間の特性から、このクラスはデストラクタ以外で仮想関数を持っていない。


Generated on Fri Jun 29 16:49:21 2007 for BuddhaLib by  doxygen 1.5.2