ゲームを作るための環境設定
SDL2のインストール
特に理由はないが、C言語+SDL2を使ってゲームを作っていこうと思った。
趣味で作るものなのであまり深く考えず使いたい言語で行こうと思う。
私は現在、Debian系のkonalinuxを使用している。調べたところ、SDL2は以下のコマンドで簡単にインストールできるようだ。
sudo apt-get install libsdl2-dev
さらに、.bmp
以外の画像ファイルを扱うときはsdl2_image
、フォントを扱うときはsdl2_ttf
などが必要なようだ。
音楽を扱う場合はsdl2_mixer
、ネットワークを扱う場合はsdl2_net
があるといいらしいので追加でインストールする。
ちなみに、インストールしなくても自力でコーディングすれば画像だろうがフォントだろうが扱えるっぽいが使えるものは使っていこうと思う。
インストールコマンドは以下。
apt-get install libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev
Debian系ではない場合は、yumからのインストールもしくはソースからのMakeが可能なようだ。他の環境に入れる時があれば追記しようと思う。
動作確認
簡単なコードを書いて動作確認を行う。 SDL2に初めて触ったので、使用する関数等が妥当かはわからないが、とりあえず以下のコードで画面を出力できた。
- コード
#include <SDL2/SDL.h> #include <stdio.h> const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480; int main( int argc, char* args[] ) { SDL_Window* window = NULL; SDL_Renderer *renderer = NULL; //Initialize SDL if( SDL_Init( SDL_INIT_VIDEO ) < 0 ) { printf( "SDL could not initialize! SDL_Error: %s\n", SDL_GetError() ); } else { //Create window window = SDL_CreateWindow( "Hello SDL", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT); if( window == NULL ) { printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() ); } else { renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED); SDL_RenderClear(renderer); SDL_RenderPresent(renderer); SDL_Delay(3000); } } SDL_DestroyRenderer(renderer); SDL_DestroyWindow(window); SDL_Quit(); return 0; }
gcc -g -o hello_sdl hello_sdl.c `sdl2-config --cflags --libs`
使用した関数は以下。メモっておく。
-> SDL_Init
-> SDL_CreateWindow
-> SDL_CreateRenderer
-> SDL_RenderClear
-> SDL_RenderPresent
-> SDL_Delay
-> SDL_DestroyRenderer
-> SDL_DestroyWindow
-> SDL_Quit
環境設定終了
とりあえずこれでSDL2が使用できるようになった。次からは、この環境でゲーム作りに必要なことを勉強していこうと思う。