2012年1月9日月曜日

Direct3DCreate9

思いつきで,DirectX 9から順に11に向かって,それぞれの関数なんかを対象に,それを利用したコードを書いてみようかと.というわけで,まずはDirect3DをDirectX 9で使う場合に必須の,Direct3DCreate9のコードを書いてみた.

#include <sdkddkver.h>

#define WIN32_LEAN_AND_MEAN
#include <Windows.h>

#include <tchar.h>

#include <d3d9.h>

int APIENTRY _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
    // IDirect3D9オブジェクトの生成
    LPDIRECT3D9 pD3D = Direct3DCreate9(D3D_SDK_VERSION);

    // エラーチェック
    if(pD3D != NULL){
        MessageBox(
            NULL,
            TEXT("IDirect3D9のオブジェクトを生成しました."),
            TEXT("成功"),
            MB_OK
        );
    }else{
        MessageBox(
            NULL,
            TEXT("IDirect3D9のオブジェクトを生成できませんでした."),
            TEXT("失敗"),
            MB_OK
        );
        return -1;
    }

    // IDirect3D9オブジェクトの後始末
    pD3D->Release();

    return 0;
}

Direct3DCreate9の引数は必ずD3D_SDK_VERSIONにしなくてはならない,とのこと.
Direct3DCreate9Exという関数もあるけれど,これはVista以降でないと使えないので注意,ということ.
こっちはまた今度書いてみよう.

0 件のコメント:

コメントを投稿