GXOamAttr

定義

#include <nitro/gx/g2_oam.h>

typedef struct
{
    union
    {
        u32 attr01;
        struct
        {
            u16 attr0;
            u16 attr1;
        };
        struct
        {
            u32 y:8;
            u32 rsMode:2;
            u32 objMode:2;
            u32 mosaic:1;
            u32 colorMode:1;
            u32 shape:2;

            u32 x:9;
            u32 rsParam:5;
            u32 size:2;
        };
        struct
        {
            u32 _0:28;
            u32 flipH:1;
            u32 flipV:1;
            u32 _1:2;
        };
    };
    union
    {
        struct
        {
            u16 attr2;
            u16 _3;
        };
        u32 attr23;
        struct
        {
            u32 charNo:10;
            u32 priority:2;
            u32 cParam:4;
            u32 _2:16;
        };
    };
}
GXOamAttr;

要素

y Y座標
rsMode アフィン変換フラグ(アフィン変換のON/OFF, 倍角のON/OFF)
objMode OBJモード
GX_OAM_MODE_NORMAL ノーマルOBJ
GX_OAM_MODE_XLU 半透明OBJ
GX_OAM_MODE_OBJWND OBJウィンドウ
GX_OAM_MODE_BITMAPOBJ ビットマップOBJ
mosaic モザイクの有無
colorMode カラーモード
GX_OAM_COLORMODE_16 16色モード
GX_OAM_COLORMODE_256 256色モード
shape OBJの形状
x X座標
rsParam アフィン変換パラメータの選択
size OBJサイズ
flipH Hフリップフラグ(アフィン変換がOFFの場合)
flipV Vフリップフラグ(アフィン変換がOFFの場合)
charNo 先頭キャラクタネーム
priority 表示優先順位
cParam カラーパラメータ

説明

OAMのOBJアトリビュート0-2を操作するための構造体です。

u16及びu32のビットフィールドとして定義されていますので、実体がVRAM上に配置されている場合のメンバへのアクセスも問題ありません。

参照

G2_SetOBJAttr

履歴

2004/11/05 初版