G2_SetOBJAttr

構文

#include <iris/gx/g2_oam.h>
void G2_SetOBJAttr( GXOamAttr * oam, int x, int y, int priority, GXOamMode mode, BOOL mosaic, GXOamEffect effect, GXOamShape shape, GXOamColor color, int charName, int cParam, int rsParam );

引数

oam OAMデータの格納場所へのポインタ
x X座標
y Y座標
priority 表示優先順位
mode OBJモード
mosaic モザイクの有無
effect エフェクトの種類を指定
shape OBJの形状
color カラーモード
charName 先頭キャラクタネーム
cParam カラーパラメータ
rsParam アフィン変換パラメータ

返り値

なし。

説明

OBJの属性を一括設定します。

GX_OAM_MODE_NORMAL ノーマルOBJ
GX_OAM_MODE_XLU 半透明OBJ
GX_OAM_MODE_OBJWND OBJウィンドウ
GX_OAM_MODE_BITMAPOBJ ビットマップOBJ

GX_OAM_EFFECT_NONE effectなし
GX_OAM_EFFECT_FLIP_H Hフリップ
GX_OAM_EFFECT_FLIP_V Vフリップ
GX_OAM_EFFECT_FLIP_HV HVフリップ
GX_OAM_EFFECT_AFFINE アフィン
GX_OAM_EFFECT_NODISPLAY 非表示
GX_OAM_EFFECT_AFFINE_DOUBLE アフィン(倍角表示)

GX_OAM_SHAPE_8x8 8x8ドット
GX_OAM_SHAPE_16x16 16x16ドット
GX_OAM_SHAPE_32x32 32x32ドット
GX_OAM_SHAPE_64x64 64x64ドット
GX_OAM_SHAPE_16x8 16x8ドット
GX_OAM_SHAPE_32x8 32x8ドット
GX_OAM_SHAPE_32x16 32x16ドット
GX_OAM_SHAPE_64x32 64x32ドット
GX_OAM_SHAPE_8x16 8x16ドット
GX_OAM_SHAPE_8x32 8x32ドット
GX_OAM_SHAPE_16x32 16x32ドット
GX_OAM_SHAPE_32x64 32x64ドット

GX_OAM_COLOR_16 16色モード
GX_OAM_COLOR_256 256色モード


以下に引数に使用される列挙型の型定義を示しておきます。

typedef enum
{
    GX_OAM_MODE_NORMAL = 0,
    GX_OAM_MODE_XLU = 1,
    GX_OAM_MODE_OBJWND = 2,
    GX_OAM_MODE_BITMAPOBJ = 3
}
GXOamMode;

typedef enum
{
    GX_OAM_EFFECT_NONE =
        (0 << GX_OAM_ATTR01_RSENABLE_SHIFT) | (0 << GX_OAM_ATTR01_HF_SHIFT) | (0 << GX_OAM_ATTR01_VF_SHIFT),
    GX_OAM_EFFECT_FLIP_H =
        (0 << GX_OAM_ATTR01_RSENABLE_SHIFT) | (1 << GX_OAM_ATTR01_HF_SHIFT) | (0 << GX_OAM_ATTR01_VF_SHIFT),
    GX_OAM_EFFECT_FLIP_V =
        (0 << GX_OAM_ATTR01_RSENABLE_SHIFT) | (0 << GX_OAM_ATTR01_HF_SHIFT) | (1 << GX_OAM_ATTR01_VF_SHIFT),
    GX_OAM_EFFECT_FLIP_HV =
        (0 << GX_OAM_ATTR01_RSENABLE_SHIFT) | (1 << GX_OAM_ATTR01_HF_SHIFT) | (1 << GX_OAM_ATTR01_VF_SHIFT),
    GX_OAM_EFFECT_AFFINE = (1 << GX_OAM_ATTR01_RSENABLE_SHIFT),
    GX_OAM_EFFECT_NODISPLAY = (2 << GX_OAM_ATTR01_RSENABLE_SHIFT),
    GX_OAM_EFFECT_AFFINE_DOUBLE = (3 << GX_OAM_ATTR01_RSENABLE_SHIFT)
}
GXOamEffect;

typedef enum
{
    GX_OAM_SHAPE_8x8 = (0 << GX_OAM_ATTR01_SHAPE_SHIFT) | (0 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_16x16 = (0 << GX_OAM_ATTR01_SHAPE_SHIFT) | (1 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_32x32 = (0 << GX_OAM_ATTR01_SHAPE_SHIFT) | (2 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_64x64 = (0 << GX_OAM_ATTR01_SHAPE_SHIFT) | (3 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_16x8 = (1 << GX_OAM_ATTR01_SHAPE_SHIFT) | (0 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_32x8 = (1 << GX_OAM_ATTR01_SHAPE_SHIFT) | (1 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_32x16 = (1 << GX_OAM_ATTR01_SHAPE_SHIFT) | (2 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_64x32 = (1 << GX_OAM_ATTR01_SHAPE_SHIFT) | (3 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_8x16 = (2 << GX_OAM_ATTR01_SHAPE_SHIFT) | (0 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_8x32 = (2 << GX_OAM_ATTR01_SHAPE_SHIFT) | (1 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_16x32 = (2 << GX_OAM_ATTR01_SHAPE_SHIFT) | (2 << GX_OAM_ATTR01_SIZE_SHIFT),
    GX_OAM_SHAPE_32x64 = (2 << GX_OAM_ATTR01_SHAPE_SHIFT) | (3 << GX_OAM_ATTR01_SIZE_SHIFT)
}
GXOamShape;

typedef enum
{
    GX_OAM_COLOR_16 = 0,
    GX_OAM_COLOR_256 = 1
}
GXOamColor;

参照

履歴

Ver. 2004/01/19