Visual Studio 2019でDXライブラリを使う

VisualStudio2017を長いこと使っていたのだが先日v15.9未満のバージョンは今後サポートの対象外となるのを聞いた。v15.9にすればまだまだ使えるがVisual Studio 2019がすでにリリースされているのでそちらに切り替えることにした。ついでにDXライブラリも最新のものにすることにした。

以下Visual Studio 2019のインストールからDXライブラリが使えるようにするまでの流れ。

Visual Studio 2019をインストールする

こちらの公式サイトにアクセスして、Community版をダウンロードする。

f:id:antique088b:20191028160640p:plain

ダウンロードしたファイルを実行、その後に出てくる画面で「続行」をクリックするとインストール画面になる。ワークロード一覧から「C++によるデスクトップ開発」にチェックを入れて、インストールをクリックする。

f:id:antique088b:20191028160820p:plain

Visual Studio 2019のインストールが始まる。環境にもよるがけっこう時間がかかる。インストールが完了した後は一度再起動する必要がある。

これでVisual Studio 2019が使えるようになる。

DXライブラリをダウンロードする

こちらのサイトから「DXライブラリ windows版 VisualStudio(C++)用(Ver***)をダウンロードする」をクリックし、ダウンロードする。2019年10月29日時点での最新版は3.21b。

f:id:antique088b:20191028161530p:plain

ダウンロードしたファイルを解凍して中を見ると次のようになっている。

f:id:antique088b:20191028162325p:plain

この中にある「プロジェクトに追加すべきファイル_VC用」フォルダをローカルディスク(C:)に移動してフォルダ名を「DxLib」に変更する。

f:id:antique088b:20191028162824p:plain

フォルダ名は別に何でもかまわないがわかりやすいのにしておくのが無難。上の画像では「DxLib3_21b」とバージョン名まで含めたものとした(古いバージョンのがあるので)。

フォルダの場所も実はどこでもいいらしいのだが深い階層のところに置いたりするとパスの指定がめんどくさいのでできるだけ浅い階層のところに置く。

Visual Studio 2019でプロジェクトを作成する

Visual Studio 2019を起動する。初めてに起動の場合はサインインを求められるのでアカウントがある場合はサインインを、ない場合は作ってサインインする。

f:id:antique088b:20191028163458p:plain

サインインしたら「新しいプロジェクトの作成」をクリックする。

f:id:antique088b:20191028163616p:plain

「すべてのプラットフォーム」の右側にある下矢印マークをクリックし、出てきたリストから「Windows」を選択する。次に下のリストから「Windowsデスクトップウィザード」を選択して、次へをクリックする。

f:id:antique088b:20191028164646p:plain

プロジェクト名を入力して作成をクリックする。プロジェクトの場所を指定したい場合は任意で入力する。

f:id:antique088b:20191028165237p:plain

Windowsデスクトッププロジェクトのダイアログが出てきたら「アプリケーションの種類(T)」の項目を「デスクトップアプリケーション(.exe)」に変更し、空のプロジェクト(E)にチェックを入れてOKをクリックする。

f:id:antique088b:20191028165939p:plain

これで新規プロジェクトが作成される。

f:id:antique088b:20191028170006p:plain

プロジェクトの作成はこれで終了だがプログラムファイルがないので追加する。上のメニューから「プロジェクト(P)」を選択し、出てきたリストから「新しい項目の追加(W)」をクリックする。

f:id:antique088b:20191029085314p:plain

次の画面が出てきたら「インストール済み」から「VisualC++」を選択し、右の項目から「C++ファイル」を選択する。最後に名前を入力して追加をクリックする。

f:id:antique088b:20191029085523p:plain

これでプログラムファイルが追加される。

DXライブラリを使えるようにする

ここまで来たらもうひと踏ん張り。

上のメニューから「プロジェクト(P)」を選択し、出てきたリストから「プロパティ(E)」をクリックする。

f:id:antique088b:20191029091015p:plain

出てきたダイアログ画面で構成(C):から「すべての構成」を、プラットフォーム(P):から「すべてのプラットフォーム」を選択する。

f:id:antique088b:20191029091144p:plain

ダイアログ左側から「構成プロパティ」→「詳細」を選択し、ダイアログ右側から「文字セット」を選択して「マルチバイト文字を使用する」に変更し、「適用(A)」をクリックする。

f:id:antique088b:20191029091330p:plain

次にダイアログ左側から「構成プロパティ」→「C/C++」→「全般」を選択する。ダイアログ右側の「追加のインクルードファイル」の右端にある下矢印の部分をクリックして<編集…>をクリックする。

f:id:antique088b:20191029091723p:plain

次の画面が出てきたら画像の赤丸のところを一度クリックし、出てきた・・・(三点リーダ)のところをクリックする。フォルダの選択画面になるので先ほど作成したDXライブラリのフォルダを選択する。最後に「適用(A)」をクリックする。

f:id:antique088b:20191029091927p:plain

次にダイアログ左側から「構成プロパティ」→「リンカ―」→「全般」を選択する。ダイアログ右側の「追加のライブラリディレクトリ」の右端にある下矢印の部分をクリックして<編集…>をクリックする。

f:id:antique088b:20191029092730p:plain

先ほどと同じフォルダ選択画面になるので同じようにフDXライブラリのフォルダを選択し、「適用(A)」をクリックする。

次に「構成(C):」の項目を「すべての構成」から「Release」に変更し、ダイアログ左側から「構成プロパティ」→「C/C++」→「コード生成」を選択する。ダイアログ右側の項目から「ランタイムライブラリ」の項目を「マルチスレッド(/MT)」に変更し、「適用(A)」をクリックする。

f:id:antique088b:20191029093042p:plain

今度は「構成(C):」の項目を「Debug」に変更し、ダイアログ右側の項目から「ランタイムライブラリ」の項目を「マルチスレッド(/MTd)」に変更し、「適用(A)」をクリックする。

f:id:antique088b:20191029093407p:plain

これでDXライブラリが使えるようになる。

テストコードで動作確認をする

次のコードをコピペして動くかどうかチェックする。

#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// ウィンドウモードに設定
ChangeWindowMode(TRUE);
// DXライブラリ初期化処理
if (DxLib_Init() < 0) {
//エラーなら終了する
return -1;
}
//描画先を裏画面にする
SetDrawScreen(DX_SCREEN_BACK);
// 画面モードの変更
SetGraphMode(800, 600, 32);
// while(裏画面を表画面に反映, メッセージ処理, 画面クリア)
while (ScreenFlip() == 0 && ProcessMessage() == 0 && ClearDrawScreen() == 0) {
DrawFormatString(0, 0, GetColor(255, 255, 255), "ESCキーで終了します");
if (CheckHitKey(KEY_INPUT_ESCAPE) != 0) {
break;
}
}
DxLib_End();    // DXライブラリ終了処理
return 0;
}

このコードを貼り付けたあと、上のメニューから「デバッグ(D)」→「デバッグの開始」を選択。その後「このプロジェクトは変更されています(T):ビルドしますか?」と聞かれるので「はい」を選択。エラーがあれば画面下のウィンドウにエラー内容が出てくるのでそれに従って修正する。

エラーがなければ下の画像のような画面が出てくる。ESCキーを押して終了できれば完了。

f:id:antique088b:20191029154826p:plain

記事の上の方で紹介したリンク先ではWaitKey()を使ったテストコードがあるが、以前使ってたノートパソコンだとなぜかエラー落ちしたのでこれで。

たまにでいいのでアップデートを確認する

Visual Studio 2019およびDXライブラリは時折更新されるが、他のソフトと違って自動更新しないのでたまには最新バージョンを確認しておきたい(Visual Studio 2017でアップデートの存在を忘れていたらメモリなどの診断ツールが使えなくなったことがあるので…)。

DXライブラリもバグの修正およびLive2D関連の関数が今後新しく追加されるかもしれないのでそれを使う人はたまにでもいいので定期的にチェックしましょう。

コメント

タイトルとURLをコピーしました