gdSPDefLights.htm
2.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<HTML>
<HEAD>
<TITLE>HTML 文書</TITLE>
<META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.0j">
</HEAD>
<BODY>
<P>
<A NAME="_Toc366998495"></A><B><FONT FACE="Arial">gdSPDefLights(3P)
<BR>
</FONT></B>
<P>
<B>関数名<BR>
</B>
<P>
gdSPDefLights
<P>
→ ライトストラクチャにライトを定義するパラメータをロードします。
<BR>
<P>
<B>構文<BR>
</B>
<P>
#include "gbi.h"
<P>
typedef struct {
<P>
Ambient a;
<p>
Light l[M];
<P>
} LightsM;
<P>
LightsM gdSPDefLightsM(<p>
signed char ar, signed char ag, signed char ab,<p>
signed char d1r, signed char d1g, signed char d1b,<p>
signed char n1x, signed char n1y, signed char n1z,<p>
・・・<p>
signed char dMr, signed char dMg, signed char dMb,<p>
signed char nMx, signed char nMy, signed char nMz)<p>
<P>
<B>パラメータ<BR>
</B>
<P>
<B>ar, ag, ab</B> アンビエントライトカラーのred、green、blue成分。
<P>
<B>d1r, d1g, d1b</B> 1番目のディフューズライトカラーのred、green、blue成分。
<P>
<B>n1x, n1y, n1z</B> 1番目のディフューズライト方向のx、y、z成分。
<P>
<B>dMr, dMg, dMb</B> M番目のディフューズライトカラーのred、green、blue成分。
<P>
<B>nMx, nMy, nMz</B> M番目のディフューズライト方向のx、y、z成分。
<P>
<P>
<B>説明<BR>
</B>
<P>
<b>gdSPDefLightsM</b>コマンドはライトストラクチャへライトを定義するパラメータをロードします。ディフューズライト方向座標は光源からライトの方向への向きです。このコマンドの最後のキャラクタには上記のようにMと表示されていますが、これはそのシーン内でのディフューズライトの数を表しています。このコマンドとLightsMストラクチャで、Mは0〜7までの整数でなければなりません。<p>
例えば、3つのディフューズライトの時は、このコマンドは<b>gdSPDefLights3</b>となり、これに相当するストラクチャはLights3となります。この場合、アンビエントライトのカラーの引数と3つのディフューズライトのためのそれぞれのカラーと方向の引数を記述しなければなりません。M = 0の時、アンビエントライトのカラーの引数だけを指定します。<p>
<p>
<b>例</b>
<p>
以下は変数名"lite"としてアンビエントと1つのディフューズライトを定義する例です。アンビエントカラーは非常に暗いグレイとし、それに対してディフューズカラーは明るい赤とします。例で示しますように、ディフューズライト方向ベクトルは正規化する必要はありません。もしモデルビューマトリクスのスケールがSでライト方向の大きさがLならば、 1 < L*S < 23040を保ってください。
<p>
<pre>
Lights1 lite = gdSPDefLights1(<br>
0x05, 0x05, 0x05, /* amb col */<br>
0xc0, 0x00, 0x00, /* col 1 */<br>
13, 25, 30); /* dir 1 */
</pre>
変数(上記の例では"lite")は<a href="../gsp/gSPSetLights.htm">gSPSetLights(3P)</a>コマンドあるいは<a href="../gsp/gSPLight.htm">gSPLight(3P)</a>コマンドでRSPのライティングステートをセットするために使用されます。
<p>
<b>参照</b></br>
<p>
<a href="../gsp/gSPSetLights.htm">gSPSetLights(3P)</a>
</BODY>
</HTML>