Springhead Users Manual

8.6 カメラ

(a) Perspective frustum
(b) Front view of screen (c) Top view of screen

Fig. 8.3: Camera parameters

カメラは描画における視点の設定と投影変換を管理します. はじめにカメラのディスクリプタを見ていきます.

GRCameraDesc

Vec2f

size

スクリーンサイズ

Vec2f

center

スクリーン中心座標

float

front

前方クリップ面

float

back

後方クリップ面

各変数の定義はFig. 8.3(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*)

GetFrameSetFrame関数はカメラフレームを取得/設定します. Fig. 8.3(a)のように,カメラフレームはカメラの視点を定義します.