今回はSDLというライブラリを使ってゲームを作る方法について解説していきたいと思います。
そもそもSDLとは
SDLとはSimple DirectMedia Layerの略称で、ゲーム開発用のAPIです。基本的にC言語とかC++を使って書かれます。LinuxとかWindowsとかを考えなくても書けるようになっていて、非常に簡単なAPIです。C言語とかC++がわかれば書けると断言できます。
SDL導入方法
ダウンロード
Unity編と同様にまずは導入からしていきましょう!今回はVisualStudio2019+Windowsの環境の導入を前提に話して行きますので注意してください。また、2019と2017は大した違いではないのでそのまま出来ると思いますが、Linux+VisualStudioCodeではやり方がかなり異なるので無理です。
↓このURLを踏んでダウンロードしてください(SDL公式のダウンロードリンク)
ダウンロードして展開したら、VisualStudioで空のプロジェクトを作成しましょう!ここからこの空のプロジェクトでどうやってSDLを使えるようにするのかやっていきたいと思います。
SDL設定方法
まずは、ソースファイルを右クリックして、cppファイルを追加しましょう。私の場合はmain.cppとしておきました。それが出来たらソリューションエクスプローラーのプロジェクトを右クリックします。したら下のような感じのウィンドウが生成されると思います。

そしたら、右でいう色が変わっている部分であるプロパティをクリックします。
そうすると、この下のようなウィンドウが表示されると思います。赤く囲んでいる所がすべての構成になっているか、プラットフォームがX86かWin32になっているかを確認してください。なっていなかったら該当部分をクリックして変更しましょう。

変更したら追加のライブラリディレクトリの赤く囲んでいる部分をクリックして、
解凍したSDLのファイル→lib→x86を指定してあげます。
こんどは入力で追加の依存ファイルから以下のようにSDL2.lib,SDL2main.libを追加してあげましょう。

指定が終わったら、今度は下の通りC/C++の場所に移動して追加のインクルードディレクトリをしていしてあげます。

解凍したSDLのファイル→includeをしていあげましょう!
最後にSDLのファイル→lib→x86の中にあるSDL2.dllをプロジェクトに移してあげましょう
これで設定は完了です!
動作確認
#include <SDL.h>
#define SCREEN_X 1280
#define SCREEN_Y 720
int main(int argc, char** argv) {
if (SDL_Init(SDL_INIT_VIDEO)) {
SDL_Quit();
return 1;
}
SDL_Window* window = SDL_CreateWindow("TestWindow",SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,SCREEN_X,SCREEN_Y, 0);
if (window == NULL) {
SDL_Quit();
return 1;
}
SDL_Delay(2000);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
だいぶ前に作っていたcppファイルに上のコードをコピー&ペーストしてください。下の画像のようになれば導入成功です!エラーが表示される場合は特に赤い部分があっているか特に確認しましょう。私が間違えた部分です(笑)

上のコードの意味ナニコレという感じだと思いますが、次回から解説していきますので少々お待ちください。
コメント