#include <iris/g3.h>void G3_PolygonAttr(G3_POLYGON_ATTR_L light, G3_POLYGON_ATTR_POLYMODE polyMode,
G3_POLYGON_ATTR_CULL cullMode, int polyognID, int alpha, int misc);void G3B_PolygonAttr(G3DLInfo* info, G3_POLYGON_ATTR_POLYMODE polyMode,
G3_POLYGON_ATTR_CULL cullMode, int polyognID, int alpha, int misc);void G3C_PolygonAttr(G3DLInfo* info, G3_POLYGON_ATTR_POLYMODE polyMode,
G3_POLYGON_ATTR_CULL cullMode, int polyognID, int alpha, int misc);void G3BS_PolygonAttr(G3DLInfo* info, G3_POLYGON_ATTR_POLYMODE polyMode,
G3_POLYGON_ATTR_CULL cullMode, int polyognID, int alpha, int misc);void G3CS_PolygonAttr(G3DLInfo* info, G3_POLYGON_ATTR_POLYMODE polyMode,
G3_POLYGON_ATTR_CULL cullMode, int polyognID, int alpha, int misc);| info | コマンドリスト情報 |
| light | どのライトを点灯するかを指定します。 |
| polyMode | ポリゴンモードを指定します。 |
| cullMode | どの面をカリングするかを指定します。 |
| polygonID | ポリゴンIDを指定します |
| alpha | α値を指定します。 |
| misc | その他のポリゴン属性を指定するためのビットフィールドです。G3BIT_POLYGON_ATTR_MISCの値をorで組みあわせてください。 |
なし。
ポリゴン関連属性値を設定します。
ポリゴンID はレンダリングエンジンにおいて不透明ポリゴンと半透明ポリゴンの描画時に、それぞれ別々のアトリビュートバッファへ格納されます。格納されたポリゴンID
は、半透明ポリゴン、シャドウポリゴンおよびエッジマーキング描画時に使用されます。
アルファ値は、1〜30 の場合は半透明ポリゴン、31 の場合は不透明ポリゴン、0
の場合はワイヤーフレーム表示となります。
フォグイネーブルフラグは、イネーブルの場合、レンダリングエンジンでフォグブレンディングが行われます。
デプステスト条件は、1に設定されている場合、フラグメントのデプス値がデプスバッファのデプス値と等しい場合に描画します。
0に設定されている場合、フラグメントのデプス値はデプスバッファのデプス値よりも小さい場合に描画します。
ポリゴン表示指定jは、1ドットポリゴンの表示指定に関する設定で、0の場合、1ドットになったら消去し、1の場合、1ドットになっても表示します。
FAR面交差ポリゴン表示指定は、0 の場合FAR面と交差したら消去し、1 の場合FAR面と交差したらクリッピングします。FAR面でクリッピングを行う場合、ジオメトリエンジンの負荷が大きくなります。
半透明ポリゴンのデプス値更新イネーブルフラグは、α値が1〜30 のポリゴンを描画する際、デプスバッファを更新するかどうかを選択します。1を設定すると更新しますが、こうすることにより半透明ポリゴンの描画領域にフォグがかかりすぎる状況を改ざんできる場合があります。ただし背後のエッジマーキングが正しく描画されないことがあります。
ポリゴン描画面指定は頂点を反時計回りに辿った面を表(おもて)面とし、表面の描画指定、裏面の描画指定を行います。
ポリゴンモードは、モジュレーションモード、デカルモード、トゥーン/ハイライトシェーディング、シャドウポリゴンの中から選択します。トゥーンおよびハイライトシェーディングに使用するテーブルは共通であるため、同一の描画フレーム内において両者を混在させることは出来ません。DISP3DCNT
レジスタによってどちらか一方を選択してください。
ライトイネーブルフラグは、ライト0〜3について個別に設定するフラグです。1に設定されるとイネーブルとなります。
PolygonAttr コマンドの設定値は Beginコマンド発行時に有効になり、その後に続く頂点の属性として使用されます。このため、PolygonAttr
コマンドはBegin-End 間では発行しないで下さい、
G3*_End
G3*_VertexShort
G3*_VertexXY
G3*_VertexXZ
G3*_VertexYZ
G3*_VertexDiff
G3*_Color
G3*_Normal
G3*_TexCoord
2003/12/01 初版