元々raylibはC言語向けのライブラリなのですが、環境構築が絶望的にできなかったのと、C#の方が慣れているので、C#で使ってみようと思いました。
開発環境
- Visual Studio 2022
- .NET 6.0
- Windows 11
入れ方
NuGetにRaylib-csというC#用のraylibがあるらしいので、それを入れていきます。
Visual Studioの場合
ソリューションを右クリックしてNuGetパッケージの管理を押します
参照を押してraylib-csで調べて出てきたパッケージを入れます
.NET CLIで入れる場合
dotnet add package Raylib-cs
バージョンを指定する場合:
dotnet add package Raylib-cs --version 4.0.0
使い方
using Raylib_cs;
これを書けばあとはraylibのAPIを呼ぶときは頭にRaylib
とつけるだけでよさそうです。
raylibのサンプルコードをC#用にしてみました
using Raylib_cs;
class Program
{
public static int Main()
{
Raylib.InitWindow(800, 450, "raylib [core] example - basic window");
while (!Raylib.WindowShouldClose())
{
Raylib.BeginDrawing();
Raylib.ClearBackground(Color.RayWhite);
Raylib.DrawText("Congrats! You created your first window!", 190, 200, 20, Color.LightGray);
Raylib.EndDrawing();
}
Raylib.CloseWindow();
return 0;
}
}
色を指定するときは Raylib
ではなく Color
を使います。
- Raylib.ClearBackground(Raylib.RAYWHITE);
+ Raylib.ClearBackground(Color.RayWhite);
Escキーを使えるようにする
raylibはデフォルトだとEscキーを押すとゲームが落ちます。
これは仕様なのでSetExitKey
を使って無効化したりキーを変えたりできます。
Raylib.SetExitKey(0); //無効化
Raylib.SetExitKey(KeyboardKey.Backspace); //バックスペースに割り当て