SDL2# - C# Wrapper for SDL2
Go to file
Mary 8807bcc1b2 Rework CI
This rework current CI to build on all standard platform and architectures.

The following changes were made:
- Adds support for Windows x86, x64 and ARM64 builds
- Adds support for macOS arm64
- Use cmake instead of autoconf
- All artifacts are now build in Release insead of Debug
- A matrix is now used instead of individual steps to deduplicate steps and to allow adding new target architecture with a single line
- If build of one job fails, it will now let others continue instead of cancelling them
- The action can now be triggered via a manual workflow
2021-04-05 17:34:55 +02:00
.github/workflows Rework CI 2021-04-05 17:34:55 +02:00
linux-build Check out SDL sources only once 2020-05-06 16:07:55 -04:00
native Use locally build macOS libSDL to fix macOS 10.14 compatibility 2021-04-02 16:18:46 +09:00
src Merge branch 'flibitijibibo/master' 2021-03-30 11:21:03 +09:00
.gitignore Update .gitignore 2014-05-31 19:55:44 -04:00
app.config Add native libraries 2020-04-15 17:36:20 +09:30
appveyor.yml Add alpha suffix to release as prerelease package 2021-04-02 13:35:55 +09:00
LICENSE Happy New Year! 2021-01-01 11:32:54 -05:00
README Add note about VS debugger silent exit 2016-10-24 17:12:49 -04:00
SDL2-CS.csproj Support SDL2-CS.Settings.props for both project types 2021-03-01 09:20:52 -05:00
SDL2-CS.sln Change SDL2# project names. 2013-11-04 14:51:28 -05:00

This is SDL2#, a C# wrapper for SDL2.

Project Website: https://github.com/flibitijibibo/SDL2-CS

License
-------
SDL2 and SDL2# are released under the zlib license. See LICENSE for details.

About SDL2
----------
For more information about SDL2, visit the SDL wiki:

http://wiki.libsdl.org/moin.fcg/FrontPage

About the C# Wrapper
--------------------
The C# wrapper was written to be used for FNA's platform support. However, this
is written in a way that can be used for any general C# application.

The wrapper provides bindings for the following libraries:
- SDL2
- SDL2_image
- SDL2_mixer
- SDL2_ttf

Note that SDL2# will not provide every single SDL2 function. This is due to
limitations in the C# language that would cause major conflicts with the native
SDL2 library and its extensions.

SDL2# is a pure port of the C headers. The naming schemes for this library will
be exactly as they are done in the C library, with little-to-no concern for
"appropriate" C# style. The namespace indicates that this is SDL2, the class
names will indicate which library file the function/type/value exists in, and
everything else will be as close to the C version as technically possible.

About the Visual Studio Debugger
--------------------------------
When running C# applications under the Visual Studio debugger, native code that
names threads with the 0x406D1388 exception will silently exit. To prevent this
exception from being thrown by SDL, add this line before your SDL_Init call:

SDL.SDL_SetHint(SDL.SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING, "1");

Roadmap
-------
To see the current roadmap for SDL2#, visit the GitHub issues page:

https://github.com/flibitijibibo/SDL2-CS/issues