🧑‍💻

Raylib の環境構築

に公開

概要

2Dグラフィックライブラリ Raylib の開発環境を構築する。
CMake と git を使ってなるべくモダンなプロジェクト管理を目指す。

動作確認環境

Windows 11 24H2
Visual Studio 2022

Raylib 以外の選択肢

  • DX ライブラリ
    日本語ドキュメントが充実しているが、逆に日本語以外のコミュニティはないかもしれない。
    環境を割り切るなら、かなり使いやすく、有望。

  • SFML
    シンプルかつ C++ なので割といいバランスかもしれない。

  • openFrameworks
    メディアアート向け。
    高機能な分、学習コストが少し高いらしい。

  • SDL
    上級者向け。
    カスタマイズ性が高いともいえるが、素の機能が限られており、画像ファイルの読み込みだけでも苦労する。

環境構築

  • CMake
    クロスプラットフォームのファイル構成管理で使う。
    公式 からダウンロードしてインストール。
    普通の Windows であれば Windows x64 Installer が楽。

  • git for Windows
    ソースコードのバージョン管理で使う。
    公式 からダウンロードしてインストール。

ユーザー名とメールアドレスを設定しておく。

git config --global user.name (ユーザー名)
git config --global user.email (メールアドレス)

ターミナルを管理者権限で起動してデフォルトのブランチ名を main に変更する。

git config --system init.defaultbranch main
  • vcpkg
    パッケージのインストールで使う。
    公式のインストール手順
    2-1 の環境変数の設定まで実施。
    vcpkg を継続的に使用する場合はシステム環境変数を設定しておく。

  • Raylib

Raylib のインストール

vcpkg install raylib

vcpkg と CMake や Visual Studio を連携させる。
成功すると cmake 実行時に指定すべきオプションが表示される。

vcpkg integrate install

Raylib を使うプロジェクトの作成

適当な名前のフォルダを作成してファイルを置く。

project-root/
├── main.cpp
├── CMakeLists.txt
├── .gitignore
└── build/

main.cpp
#include "raylib.h"

int main(void)
{
    SetConfigFlags(FLAG_MSAA_4X_HINT);  // anti-aliasing
    InitWindow(800, 600, "Raylib Example");

    while (!WindowShouldClose())
    {
        BeginDrawing();
        ClearBackground(RAYWHITE);
        DrawCircle(400, 300, 50, RED);
        EndDrawing();
    }

    CloseWindow();
    return 0;
}

anti-aliasing は任意。

CMakeLists.txt
cmake_minimum_required(VERSION 3.10)

project(MyRaylibProject)

find_package(raylib REQUIRED)

add_executable(MyRaylibProject main.cpp)

target_link_libraries(MyRaylibProject raylib)

if(WIN32)
    set_target_properties(MyRaylibProject PROPERTIES 
        LINK_FLAGS "/SUBSYSTEM:WINDOWS /ENTRY:\"mainCRTStartup\""
    )
endif()

LINK_FLAGS の指定を省くと、ビルドしたプログラムの実行時にコンソールが表示される。
printf でいろいろ表示できるのでデバッグには便利。

.gitignore
build

build フォルダを git の管理から除外する。

build フォルダ内で cmake を実行する。
オプションのフォルダ指定は vcpkg をインストールした場所に合わせること。

cmake .. -DCMAKE_TOOLCHAIN_FILE=C:/project/vcpkg/scripts/buildsystems/vcpkg.cmake

.sln ファイルが生成されるので、Visual Studio で開く。

"ALL_BUILD" がスタートアッププロジェクトになっているので、自分のプロジェクトに変更する。

あとはビルドして実行。

GitHub

GitHub に登録してサインインする。
GitHub 上で新しいレポジトリを作成する。
名前以外はデフォルトでいいが、気になる場合は private にしておく。

プロジェクトフォルダで以下を実行してレポジトリを初期化。

git init

git status で確認。

$ git status
On branch main

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        CMakeLists.txt
        main.cpp

nothing added to commit but untracked files present (use "git add" to track)

レポジトリにファイルを追加してコミット。

git add .
git commit -m"raylib sample"

GitHub で作成したレポジトリと対応させてプッシュ。

git remote add origin https://github.com/ssknaoya/raylibtest.git
git push origin main

GitHub 上で見えるようになる。

https://github.com/ssknaoya/raylibtest

ローカルの main と GitHub にある main を対応させる。

git branch --set-upstream-to=origin/main main

Discussion