DXライブラリとは
directXやWindowsなどのゲーム製作に必要なエンジンを簡単に利用できるようにまとめたライブラリです。
画像や音楽の出力やキーボードからの入力を受け取ることができます。
directXは画像や音楽の出力を行う機能をまとめたもので、WindowsはコンソールではなくウィンドウでのGUIを提供するライブラリです。
それぞれ使うことも可能ですが、面倒な初期設定や煩雑な仕様で使いにくくなっています。
DXライブラリはそれらの機能をまとめ、使いやすいライブラリとして提供されています。
詳しくはDXライブラリのホームページをご覧ください。
DXライブラリのダウンロード
ここでは、DXライブラリをダウンロードし、Visual Studioに導入するまでを解説します。
公式サイトにも導入方法が記載されていますが、ここでは実際に設定をしている画像を使ってわかりやすく説明します。
http://dxlib.o.oo7.jp/dxdload.htmlより「DXライブラリ Windows版 VisualStudio( C++ )用(Ver3.19b)をダウンロードする(zip圧縮形式(約148MB))」をクリックしてダウンロードしてください。
Visual Studio以外の環境で使う場合はその環境にあったものをダウンロードしてください。
zip形式のダウンロードファイルを解凍して好きなフォルダに保存してください。
通信環境にもよりますが、数分時間がかかります。
なるべく浅い階層に置いておくと次の導入作業が楽になります。
この作業は始めて導入するときに1度のみ行います。
DXライブラリのをVisual Studioに導入する
※この記事はVisual Studio Community 2017版での情報です。
以下の作業をプロジェクトごとに行ってください。
まずは、普段プログラムを書くときと同様にプロジェクトを作成します。
詳しくはVisual Studio 2017の導入を参照してください。
プロジェクトが作成できたら、まずはソースコードを追加します。
これを先に行わないと、この後に行う設定項目が表示されません。
この作業も同様にVisual Studio 2017の導入に記載しています。
ここから設定項目に入ります。
プロジェクト名(画像では隠れていますが、ここでは「DXLib_test」としています。)を右クリックし、一番下の「プロパティ(R)」からプロパティウィンドウを開きます。
上記のようなウィンドゥが開きます。
左上にある「構成(C)」のプルダウンメニューから「全ての構成」を選択します。デフォルトでは「Debug」となっているはずです。
次に左側のメニューから「構成プロパティ」>「全般」を選択し、右側のリストから「文字セット」を「マルチバイト文字セットを使用する」を選択し、右下の「適用(A)」をクリックしてください。
この作業は、デフォルトでそうなっている場合がありますが、念のため確認してください。
続いて左側のメニューから「構成プロパティ」>「C/C++」>「全般」を選択し、右側のリストから「追加のインクルードディレクトリ」の右端にあるプルダウンメニューから「<編集…>」をクリックします。
そうすると、以下のようなウィンドウが現れます。
右上にあるファイルマークのボタンをクリックすると下のボックスにテキスト入力と「…」と書いたボタンが出てきます。
テキストボックスに直接入力するか、ボタンを押すとファイル選択のウィンドウが出てくるので、先ほどダウンロードしたライブラリの中にある「プロジェクトに追加すべきファイル_VC用」を追加し、OKを押してください。
ウィンドウが閉じるので「適用(A)」を押してセーブしましょう。
「構成プロパティ」>「リンカー」>「全般」の「追加のライブラリディレクトリ」にも同様の作業を行います。
今度は「構成(C)」のプルダウンメニューから「Release」を選択します。
左側のメニューから「構成プロパティ」>「C/C++」>「コード生成」を選択し、右側のリストから「ランタイム ライブラリ」を「マルチスレッド(/MT)」を選択し、右下の「適用(A)」をクリックしてください。
最後に「構成(C)」のプルダウンメニューから「Debug」を選択します。
左側のメニューから「構成プロパティ」>「C/C++」>「コード生成」を選択し、右側のリストから「ランタイム ライブラリ」を「マルチスレッド デバッグ(/MTd)」を選択し、右下の「OK」を押して終了します。
これで設定は終了ですが、ライブラリが正常に動作しているか確かめるためにサンプルコードを実行しましょう。
dx_lib_sample.cpp
#include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { ChangeWindowMode(TRUE); if(DxLib_Init() == -1) return -1 ; DrawBOX(0, 0, 100, 100, 0xFFFFFF, TRUE); WaitKey(); DxLib_End(); return 0; }
これをコンパイルして実行すると、画面左上に白い正方形が描かれます。
これが表示できれば設定は完了です。