|
||||
(a) Perspective frustum |
||||
|
カメラは描画における視点の設定と投影変換を管理します. はじめにカメラのディスクリプタを見ていきます.
GRCameraDesc |
||
Vec2f |
size |
スクリーンサイズ |
Vec2f |
center |
スクリーン中心座標 |
float |
front |
前方クリップ面 |
float |
back |
後方クリップ面 |
各変数の定義はFig. #.#.#(b),(c)を参照してください. 設定を変更するには以下のようにします.
GRCameraDesc desc; grScene->GetCamera()->GetDesc(&desc); desc.front = 3.0f; grScene->SetCamera(desc);
上ではGetDesc関数で既存の設定をディスクリプタにコピーし,frontを変更してから SetCamera関数で再設定しています.
一方,GRCameraの関数は以下の通りです.
GRCameraIf |
||
GRFrameIf* |
GetFrame() |
|
void |
SetFrame(GRFrameIf*) |
GetFrame,SetFrame関数はカメラフレームを取得/設定します. Fig. #.#.#(a)のように,カメラフレームはカメラの視点を定義します.