Ninjaライブラリ - ビュー関数

njRotateViewXYZRelative

ビューの視線をXYZの各軸を中心にして回転(相対的な回転)

書式

void njRotateViewXYZRelative( *v, angx, angy, angz )
NJS_VIEW *v
Angle angx
Angle angy
Angle angz

引数

*vビュー構造体のポインタ
angxX軸に対しての回転角度(相対値)
angyY軸に対しての回転角度(相対値)
angzZ軸に対しての回転角度(相対値)

戻値

なし

解説

ビューの視線をX、Y、Zの各軸を中心にして相対的に回転させます。 回転はX軸、Y軸、Z軸の順番で掛かります。

用例

(0, 0, 3000)に位置し、(0, 0, -1)(画面奥)に向いているビューを位置をそのままに、
視線だけX、Y、Zの各軸を中心にしてそれぞれ30度、60度、90度回転させます。
#define VIEW_PX 0.f
#define VIEW_PY 0.f
#define VIEW_PZ 3000.f
#define VIEW_VX 0.f
#define VIEW_VY 0.f
#define VIEW_VZ -1.f
#define VIEW_ROLL 0
NJS_VIEW v;
v.px = VIEW_PX;
v.py = VIEW_PY;
v.pz = VIEW_PZ;
v.vx = VIEW_VX;
v.vy = VIEW_VY;
v.vz = VIEW_VZ;
v.roll = NJM_DEG_ANG(VIEW_ROLL);
njRotateViewXYZRelative(&v, NJM_DEG_ANG(30), NJM_DEG_ANG(60), NJM_DEG_ANG(90));
njSetView( &v );

備考

引数 v が NULL の場合にはカレントビューを対象とします。

参照

njSetView()

njRotateViewXYZRelative
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998