クイックスタート

 

クイックスタートでは、ここに書いている文章のほかに、全ての項目をまとめて実演したビデオもあります。

文章で分かりにくい時でもビデオを見ると理解できることもあると思います。(その逆もあるでしょう)

ビデオ クイックスタート

 

準備

VisualStudio(VisualC++)を用意してください。また、DirectX SDKも必要です。

VisualC++が、DirectXのプログラムをビルドできるようにしてください。その方法は、DirectXSDK等を参照してください。現在、DirectXSDKをインストールすると、VisualStudio側のDirectX設定が自動的に行われるはずですので、ユーザーがおこなう設定は特に無いはずです。

学習開始用のプロジェクトがあります。”ゲームプログラミング簡単学習”というフォルダがそうです。そのプロジェクトをVisual C++で開いてください。

開いたら、ソリューションエクスプローラー内に、Start.cppというファイルがありますので、それを開いてください。

 

ソースを書き始める場所

Start.cppファイルからソースコードを書き始めます。

プログラムが実行されると、まず最初の1回だけStart.cppのVOID MY_NEGAA::OneTime()関数が実行され、それ以降はVOID MY_NEGAA::Main()関数が実行されますので、そこからコードを書いてください。

例)

BOX box;

void MY_NEGAA::OneTime()
{
 box.Load();
}

VOID MY_NEGAA::Main()
{
 box.Draw();
}

Main()関数は、ループしています。(毎フレーム 呼び出されます)

 

3D物体を表示する

まず、3D物体のインスタンスを作成します。インスタンスの作成は非常に簡単です。C言語の変数宣言のように、

BOX box;

などと書けばいいだけです。 boxの部分(インスタンス名)はもちろん自由に決めることが出来ます。

次に、Load()関数を実行します。

box.Load();

次に、描画ですが、これも至極簡単です。インスタンスからメソッドを呼び出せばいいだけです。この場合では、

box.Draw();

これだけです。画面には、四角形が見えるでしょう!ボックスをZ手前方向から見ているので、単なる四角形に見えますが、方向を変えるとボックスと確認できます。

 

3D物体を回転させる

RotateYaw()、RotatePitch()、RotateRoll()関数で回転を指定します。引数は360度単位の度数です。

例) Y軸周りで毎フレーム1度ずつ回転させたい場合は次のように書きます。

box.RotateYaw(1);

RotatePitch()はX軸周り、RotateRoll()Z軸周りになります。

 

NEGAAとアプリケーションの関係

NEGAAは、スタティックリンクライブラリの形態をとっています。NEGAAが必要になるのは開発時だけであり、いったんアプリの実行ファイルが出来上がれば、もはや必要はありません。(アプリケーション内部にNEGAAメソッドが埋め込まれます)

したがって、いったんあなたのアプリケーション(ゲーム等)のビルドを完了すれば、そのアプリケーションにNEGAAが使用されたのかは外見上は分からなくなります。

なお、著作権は放棄していません。NEGAAを使用した旨をどこかに表記していただけると嬉しいですが、特に義務ではないので、表示しなくても構いません。