Silk.NET is a high-speed, advanced library, providing bindings to popular low-level APIs such as OpenGL and OpenAL. Use Silk.NET to add cross-platform 3D graphics, audio, compute and haptics to your C# application.
Silk.NET works on any .NET Standard 2.0 compliant platform. This includes Xamarin, .NET Framework 4.6.1+, and .NET Core 2.0+.
- Performance: We use lesser-known techniques for our native interop which makes our bindings blazing fast.
- Up-to-date: We've built Silk.NET around the latest versions of the Khronos specifications. This means that Silk.NET includes OpenGL 4.6 (and its NVIDIA ray-tracing extensions), OpenGLES 3.2.
- High-level utilities: We provide high-level abstractions around Windowing and Input APIs, which means you apps can run on any platform without changing a single line.
- Game-ready: Making games or game engines with Silk.NET is a breeze as you already have everything a game needs - Graphics, Audio, Input, and Windowing; all in one product!
We currently have 3 maintainers:
As well as 2 community members who we consult with to influence Silk.NET's design:
- devvoid, a Silk.NET contributor who basically wrote half the library
- BlackCentipede, a low-level genius/madman
Building from source
- Make sure you have the .NET Core SDK installed
- Clone the repository
generator.sh(to generate the bindings)
Silk.NET uses and encourages Early Pull Requests. Please don't wait until you're done to open a PR!
- Install Git and the .NET Core SDK
- Fork Silk.NET
- Create a branch on your fork.
- Add an empty commit to start your work off (and let you open a PR):
git commit --allow-empty -m "start of [thing you're working on]"
- Open a Pull request with
[WIP]in the title. Do this before you actually start working.
- Make your commits in small, incremental steps with clear descriptions.
- Tag a maintainer when you're done and ask for a review!
Nothing here yet, but don't worry - we're working on it.
Join the conversation
Come chat with us on Discord!
Silk.NET is distributed under the very permissive MIT/X11 license. Note that some third party libraries such as AdvancedDLSupport are compatible with the MIT license under one or more custom agreements, but have additional conditions.