Chapter4. 拡張関数


4.6 3Dグラフィックス関数

関数名
G3@FRMSETSHADOW
機能
シャドウの描画を指定する。
書式
G3@FRMSETSHADOW(Frm,mode)
《パラメーター》
Frmint。フレーム(G3@FRMMAKE の戻り値)を指定する
modefloat。シャドウの影響を指定する(初期値:0)

0:シャドウの発生源とはならない。他のシャドウの影響を受けない
1:シャドウの発生源となる。他のシャドウの影響を受けない
2:シャドウの発生源とはならない。他のシャドウの影響を受ける
3:シャドウの発生源となる。他のシャドウの影響を受ける
解説
シャドウを描画する。自分自身がシャドウの発生源となるかどうか、他のシャドウの影響を受けるかどうかを指定する。シャドウを発生させる光源はG3@LIGHTMAKEで生成し、G3@LIGHTSETDIRで光源の方向を指定する。光源の色を白色に近づける程、シャドウは透明になる。より影らしく地面の色と調和させるには光源のアルファ値を下げる。
なお、光源の方向とカメラの方向が近づく(破錠角度)とシャドウの解像度が極端に落ちる問題があるため、破錠角度に注意して利用してください。
用例
シャドウを発生させる。
FD=G3@FRMLOAD("sample.x")

G3@FRMSETSHADOW( FD , 3 )

LD=G3@LIGHTMAKE( 6 , 0.0 , 0.0 , 0.0 , 0.5 )
G3@ADD( LD , FD )
G3@LIGHTSETDIR( LD,  0, -1, -1 )