# GX_SetGraphicsMode

## 構文

  `#include <nitro/gx/gx.h>`
  `void GX_SetGraphicsMode(GXDispMode dispMode, GXBGMode bgMode, GXBG0As bg0_2d3d);`

## 引数

dispMode | ディスプレイモード(グラフィクス表示モード・VRAM表示モード・メインメモリ表示モードから選択)
bgMode | BGモードを選択
bg0_2d3d | BG0を3Dに割り当てるかどうかを選択

## 返り値

なし。

## 説明

メイングラフィックスエンジンの表示モードを設定します。dispModeにより、グラフィクス表示モード・VRAM表示モード・メインメモリ表示モードを選択します。bgModeは、BGモードを選択するための引数です。bg0_2d3dはBG0を2D面として使用するか、3D面として使用するかを選択するための引数です。
bgModeとbg0_2d3dの値はdispModeでグラフィクス表示モード以外を選択している場合には、グラフィックス表示画面のキャプチャでのみ利用されます。

`GX_DISPMODE_GRAPHICS` | 2D/3Dグラフィックス表示
`GX_DISPMODE_VRAM_A` | VRAM表示モード（VRAM-Aを表示）
`GX_DISPMODE_VRAM_B` | VRAM表示モード（VRAM-Bを表示）
`GX_DISPMODE_VRAM_C` | VRAM表示モード（VRAM-Cを表示）
`GX_DISPMODE_VRAM_D` | VRAM表示モード（VRAM-Dを表示）
`GX_DISPMODE_MMEM` | メインメモリ表示モード(MI_DispMemDmaCopy() で転送)

`GX_BGMODE_0` | BG0=テキスト／3D, BG1=テキスト, BG2=テキスト, BG3=テキスト
`GX_BGMODE_1` | BG0=テキスト／3D, BG1=テキスト, BG2=テキスト, BG3=アフィン
`GX_BGMODE_2` | BG0=テキスト／3D, BG1=テキスト, BG2=アフィン, BG3=アフィン
`GX_BGMODE_3` | BG0=テキスト／3D, BG1=テキスト, BG2=テキスト, BG3=アフィン拡張BG
`GX_BGMODE_4` | BG0=テキスト／3D, BG1=テキスト, BG2=アフィン, BG3=アフィン拡張BG
`GX_BGMODE_5` | BG0=テキスト／3D, BG1=テキスト, BG2=アフィン拡張BG, BG3=アフィン拡張BG
`GX_BGMODE_6` | BG0=3D, BG1=なし, BG2=大画面256色ビットマップ, BG3=なし

`GX_BG0_AS_2D` | BG0をテキスト表示にします。`GX_BGMODE_6`を選択した場合は無視されます。
`GX_BG0_AS_3D` | BG0を3D表示にします。`GX_BGMODE_6`を選択した場合は無視されます。

以下にGXDispMode型とGXBGMode型とGXBG0As型の型定義を示しておきます。

    typedef enum
    {
        GX_DISPMODE_GRAPHICS = 0x01,
        GX_DISPMODE_VRAM_A = 0x02,
        GX_DISPMODE_VRAM_B = 0x06,
        GX_DISPMODE_VRAM_C = 0x0a,
        GX_DISPMODE_VRAM_D = 0x0e,
        GX_DISPMODE_MMEM = 0x03
    }
    GXDispMode;

    typedef enum
    {
        GX_BGMODE_0 = 0,
        GX_BGMODE_1 = 1,
        GX_BGMODE_2 = 2,
        GX_BGMODE_3 = 3,
        GX_BGMODE_4 = 4,
        GX_BGMODE_5 = 5,
        GX_BGMODE_6 = 6
    }
    GXBGMode;

    typedef enum
    {
        GX_BG0_AS_2D = 0,
        GX_BG0_AS_3D = 1
    }
    GXBG0As;

## 参照

## 履歴

Ver. 2004/08/03

- `GX_DISPMODE_GRAPHICS以外の場合にもbgMode, bg0_2d3dの値をレジスタに反映するように変更`。

Ver. 2004/02/09

- `GX_DISPMODE_OFF`を削除。GX_DispOff() を使用するようにしてください。

Ver. 2004/01/19