You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
C# bindings for raylib, a simple and easy-to-use library to learn videogames programming (www.raylib.com)
Raylib-cs targets net6.0 and uses the official 5.5 release to build the native libraries.
Status
Raylib-cs is passively maintained. Occasional updates may be released from time to time. Pull requests may be
accepted if they don't have a large maintainence burden.
Installation - NuGet
This is the prefered method to get started.
Pick a folder in which you would like to start a raylib project. For example "MyRaylibCSProj".
Then from a terminal (for example a VSCode terminal), whilst in the directory you just created
run the following commands. (Please keep in mind .NET should already be installed on your system)
dotnet new console
dotnet add package Raylib-cs
If you need to edit Raylib-cs source then you will need to add the bindings as a project (see below).
If you are new to using NuGet (or you've forgotten) and are trying to run the above command in the command prompt,
remember that you need to be inside the intended project directory (not just inside the solution directory) otherwise
the command won't work.
Download/build the native libraries for the platforms you want using the official 5.5 release.
NOTE: the MSVC version is required for Windows platforms
Setup the native libraries so they are in the same directory as the executable/can be found in the search path.
Start coding!
Hello, World!
usingRaylib_cs;namespaceHelloWorld;classProgram{// STAThread is required if you deploy using NativeAOT on Windows - See https://github.com/raylib-cs/raylib-cs/issues/301[STAThread]publicstaticvoidMain(){Raylib.InitWindow(800,480,"Hello World");while(!Raylib.WindowShouldClose()){Raylib.BeginDrawing();Raylib.ClearBackground(Color.White);Raylib.DrawText("Hello, world!",12,12,20,Color.Black);Raylib.EndDrawing();}Raylib.CloseWindow();}}
Contributing
Feel free to open an issue. If you'd like to contribute, please fork the repository and make
changes as you'd like. Pull requests are welcome.
If you want to request features or report bugs related to raylib directly (in contrast to this binding), please refer to the author's project repo.