Silk.NET
2.20.0
Prefix Reserved
See the version list below for details.
dotnet add package Silk.NET --version 2.20.0
NuGet\Install-Package Silk.NET -Version 2.20.0
<PackageReference Include="Silk.NET" Version="2.20.0" />
<PackageVersion Include="Silk.NET" Version="2.20.0" />
<PackageReference Include="Silk.NET" />
paket add Silk.NET --version 2.20.0
#r "nuget: Silk.NET, 2.20.0"
#:package Silk.NET@2.20.0
#addin nuget:?package=Silk.NET&version=2.20.0
#tool nuget:?package=Silk.NET&version=2.20.0
Silk.NET is your one-stop-shop for high-speed .NET multimedia, graphics, and compute; providing bindings to popular low-level APIs such as OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, WebGPU, and DirectX.
Use Silk.NET to spruce up applications with cross-platform 3D graphics, audio, compute and haptics!
Silk.NET works on any .NET Standard 2.0 compliant platform, including .NET 6.0, Xamarin, .NET Framework 4.6.1+, and .NET Core 2.0+.
Proud to be an official project under the benevolent .NET Foundation umbrella.
About This Package
Core functionality for the Silk.NET library. You likely never need to reference this package yourself, nor is it generally useful without another Silk.NET package.
Features
Performance
Having poured lots of hours into examining generated C# code and its JIT assembly, you can count on us to deliver blazing fast bindings with negligible overhead induced by Silk.NET!
Up-to-date
With an efficient bindings regeneration mechanism, we are committed to ensuring our bindings reflect the latest specifications with frequent updates generated straight from the upstream sources.
High-level utilities
In addition to providing high-speed, direct, and transparent bindings, we provide high-level utilities and wrappers to maximise productivity in common workloads such as platform-agnostic abstractions around Windowing and Input, bringing your apps to a vast number of platforms without changing a single line!
Good-to-go
Silk.NET caters for anything you could need in swift development of multimedia, graphics, compute applications. Silk.NET is an all-in-one solution, complete with Graphics, Compute, Audio, Input, and Windowing.
Funding
Silk.NET requires significant effort to maintain, as such we greatly appreciate any financial support you are able to provide!
This helps ensure Silk.NET's long term viability, and to help support the developers who maintain Silk.NET in their free time. Kai is accepting GitHub Sponsorships.
Further resources
- Several examples can be found in the examples folder
- Come chat with us on Discord!
Licensing and governance
Silk.NET is distributed under the very permissive MIT/X11 license and all dependencies are distributed under MIT-compatible licenses.
Silk.NET is a .NET Foundation project, and has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.1
- Silk.NET.Core (>= 2.20.0)
- Silk.NET.GLFW (>= 2.20.0)
- Silk.NET.Input (>= 2.20.0)
- Silk.NET.OpenAL (>= 2.20.0)
- Silk.NET.OpenGL (>= 2.20.0)
- Silk.NET.Vulkan (>= 2.20.0)
- Silk.NET.Vulkan.Extensions.KHR (>= 2.20.0)
- Silk.NET.Windowing (>= 2.20.0)
-
.NETStandard 2.0
- Silk.NET.Core (>= 2.20.0)
- Silk.NET.GLFW (>= 2.20.0)
- Silk.NET.Input (>= 2.20.0)
- Silk.NET.OpenAL (>= 2.20.0)
- Silk.NET.OpenGL (>= 2.20.0)
- Silk.NET.Vulkan (>= 2.20.0)
- Silk.NET.Vulkan.Extensions.KHR (>= 2.20.0)
- Silk.NET.Windowing (>= 2.20.0)
-
.NETStandard 2.1
- Silk.NET.Core (>= 2.20.0)
- Silk.NET.GLFW (>= 2.20.0)
- Silk.NET.Input (>= 2.20.0)
- Silk.NET.OpenAL (>= 2.20.0)
- Silk.NET.OpenGL (>= 2.20.0)
- Silk.NET.Vulkan (>= 2.20.0)
- Silk.NET.Vulkan.Extensions.KHR (>= 2.20.0)
- Silk.NET.Windowing (>= 2.20.0)
-
net5.0
- Silk.NET.Core (>= 2.20.0)
- Silk.NET.GLFW (>= 2.20.0)
- Silk.NET.Input (>= 2.20.0)
- Silk.NET.OpenAL (>= 2.20.0)
- Silk.NET.OpenGL (>= 2.20.0)
- Silk.NET.Vulkan (>= 2.20.0)
- Silk.NET.Vulkan.Extensions.KHR (>= 2.20.0)
- Silk.NET.Windowing (>= 2.20.0)
NuGet packages (20)
Showing the top 5 NuGet packages that depend on Silk.NET:
| Package | Downloads |
|---|---|
|
Meadow.Linux
Linux .NET libraries for Wilderness Labs Meadow |
|
|
Meadow.Windows
An implementation of the Meadow software stack for Windows targets |
|
|
DotFeather
A lightweight, extensible and easy game engine. |
|
|
Meadow.Foundation.Displays.Silk
Display driver for Meadow using Silk.NET and SkiaSharp |
|
|
ktsu.ImGuiApp
A comprehensive .NET library that provides complete application scaffolding for Dear ImGui applications, featuring window management, DPI-aware rendering, precision PID-controlled frame limiting with comprehensive auto-tuning, advanced font handling with Unicode/emoji support, texture management, and debug tooling. Built on Silk.NET for cross-platform OpenGL support and Hexa.NET.ImGui for modern Dear ImGui bindings. |
GitHub repositories (11)
Showing the top 11 popular GitHub repositories that depend on Silk.NET:
| Repository | Stars |
|---|---|
|
elevenyellow/handcrafted-persona-engine
An AI-powered interactive avatar engine using Live2D, LLM, ASR, TTS, and RVC. Ideal for VTubing, streaming, and virtual assistant applications.
|
|
|
ikpil/DotRecast
DotRecast - a C# port of Recast & Detour, Industry-standard navigation mesh toolset for .NET, Unity3D, games, servers
|
|
|
ZacharyPatten/Towel
Throw in the towel.
|
|
|
JasonBock/Rocks
A mocking library based on the Compiler APIs (Roslyn + Mocks)
|
|
|
lindexi/lindexi_gd
博客用到的代码
|
|
|
dfkeenan/SilkVulkanTutorial
C# Silk.NET port of the Vulkan tutorial by Alexander Overvoorde.
|
|
|
ikpil/Box2D.NET
Box2D.NET - a C# port of Box2D, is a 2D physics engine for games, .NET, Unity3D, servers
|
|
|
MS2Community/Maple2
Server emulator for MapleStory2.
|
|
|
WildernessLabs/Meadow.Foundation
Unified driver and library framework for Meadow applications.
|
|
|
CeSun/Aura3D
Aura3D is a lightweight, extensible, and high-performance 3D rendering control
|
|
|
KinsonDigital/Velaptor
2D game development framework
|
| Version | Downloads | Last Updated |
|---|---|---|
| 2.23.0 | 11,985 | 1/23/2026 |
| 2.22.0 | 47,973 | 11/5/2024 |
| 2.21.0 | 33,663 | 4/23/2024 |
| 2.20.0 | 17,017 | 12/12/2023 |
| 2.19.0 | 3,936 | 11/14/2023 |
| 2.18.0 | 2,408 | 10/21/2023 |
| 2.17.1 | 13,293 | 4/9/2023 |
| 2.17.0 | 1,999 | 4/6/2023 |
| 2.16.0 | 10,771 | 8/2/2022 |
| 2.15.0 | 4,185 | 4/2/2022 |
| 2.14.0 | 1,471 | 3/15/2022 |
| 2.13.0 | 1,391 | 2/6/2022 |
| 2.12.0 | 1,205 | 1/7/2022 |
| 2.11.0 | 1,638 | 12/5/2021 |
| 2.10.1 | 978 | 11/10/2021 |
| 2.10.0 | 835 | 11/6/2021 |
| 2.9.0 | 1,218 | 10/5/2021 |
| 2.8.0 | 1,159 | 9/4/2021 |
| 2.7.0 | 1,057 | 8/9/2021 |
| 2.6.0 | 2,173 | 7/3/2021 |
Silk.NET December 2023 Update
- Added support for UTF-8 file paths in GLFW and SDL windows (thanks @WinstonMao)
- Updated to OpenXR 1.0.32.1
- Updated to Vulkan 1.3.273
- Updated to latest OpenGL specifications
- Updated to latest OpenCL specifications
- Fixed Matrix2X2.GetDeterminant returning incorrect values
- Fixed ALC_SOFT_reopen_device being a non-context extension (thanks @okaniku, @doobah)