Silk.NET.BuildTools
2.18.0
Prefix Reserved
See the version list below for details.
dotnet add package Silk.NET.BuildTools --version 2.18.0
NuGet\Install-Package Silk.NET.BuildTools -Version 2.18.0
<PackageReference Include="Silk.NET.BuildTools" Version="2.18.0" />
paket add Silk.NET.BuildTools --version 2.18.0
#r "nuget: Silk.NET.BuildTools, 2.18.0"
// Install Silk.NET.BuildTools as a Cake Addin #addin nuget:?package=Silk.NET.BuildTools&version=2.18.0 // Install Silk.NET.BuildTools as a Cake Tool #tool nuget:?package=Silk.NET.BuildTools&version=2.18.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.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- ClangSharp (>= 15.0.2)
- CommandLineParser (>= 2.9.1)
- HtmlAgilityPack (>= 1.11.54)
- Humanizer.Core (>= 2.8.26)
- Microsoft.CodeAnalysis.CSharp (>= 3.11.0)
- Microsoft.Extensions.FileSystemGlobbing (>= 7.0.0)
- Microsoft.VisualStudio.Setup.Configuration.Interop (>= 3.7.2175)
- morelinq (>= 3.4.2)
- Newtonsoft.Json (>= 13.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.22.0 | 139 | 11/5/2024 |
2.21.0 | 1,580 | 4/23/2024 |
2.20.0 | 596 | 12/12/2023 |
2.19.0 | 149 | 11/14/2023 |
2.18.0 | 150 | 10/21/2023 |
2.17.1 | 232 | 4/9/2023 |
2.17.0 | 189 | 4/6/2023 |
2.16.0 | 434 | 8/2/2022 |
2.15.0 | 450 | 4/2/2022 |
2.14.0 | 431 | 3/15/2022 |
2.13.0 | 430 | 2/6/2022 |
2.12.0 | 253 | 1/7/2022 |
2.11.0 | 281 | 12/6/2021 |
2.10.1 | 320 | 11/10/2021 |
2.10.0 | 165 | 11/6/2021 |
2.9.0 | 167 | 10/5/2021 |
2.8.0 | 196 | 9/4/2021 |
2.7.0 | 152 | 8/9/2021 |
2.6.0 | 298 | 7/3/2021 |
2.5.0 | 176 | 6/8/2021 |
2.4.0 | 212 | 5/7/2021 |
2.3.0 | 170 | 4/3/2021 |
2.2.0 | 209 | 3/6/2021 |
2.1.0 | 158 | 2/16/2021 |
2.0.0 | 191 | 1/2/2021 |
2.0.0-preview5 | 166 | 12/29/2020 |
2.0.0-preview4 | 235 | 12/8/2020 |
2.0.0-preview3 | 251 | 11/17/2020 |
2.0.0-preview2 | 307 | 8/21/2020 |
2.0.0-preview | 301 | 7/16/2020 |
Silk.NET October 2023 Update
- Added SPIR-V Reflect bindings
- Added SPIR-V Cross bindings
- Added Shaderc bindings
- Added WIC/WindowsCodecs bindings (thanks @hez2010)
- Added multi-channel formats support for OpenAL (thanks @aleksrutins)
- Added EffectTarget support for OpenAL Soft (thanks @okaniku, @doobah)
- Added MoltenVK support for iOS (massive thank you to @zvasya for contributing and testing)
- Added macOS support for the CreateWebGPUSurface helper function (thanks @AsgardXIV)
- Added the ability to load MoltenVK directly as a fallback should the Vulkan Loader be unavailable on macOS
- Added trimming support with an option to enable/disable static-linking support at link time
- Added WinRT interoperability support for Direct3D 11.
- Added the ability to query extensions from specific Vulkan layers using the Silk.NET helpers
- Added extension methods on IGamepad to return Thumbstick state instead of requiring use of the indexers (thanks @jvyden)
- Added ref properties for Vulkan chain constituents (thanks @khitiara)
- Added Apple Silicon binaries for Assimp (thanks @jschieck)
- Added compatibility with Linux distributions using as early as glibc 2.16
- Added equality operators and IEquatable to Bool32 (thanks @Syncaidius)
- Added ToSystem/ToGeneric as extension methods (rather than plain static functions) to convert to/from Silk.NET.Maths types (thanks @Wafer-EX)
- Added discriminant values to PinObjectMarshaller to tie pinned handles to state to which the pin pertains
- Updated to Vulkan 1.3.266
- Updated to OpenXR 1.0.30
- Updated to SDL 2.28.1
- Updated to MoltenVK 1.2.5
- Updated to latest WebGPU headers
- Updated to latest OpenCL specifications
- Updated to latest OpenGL specifications
- Improved allocations in the Silk.NET Loader (thanks @Youssef1313)
- Improved robustness of HLU on AOT compilations
- Fixed WGPU not loading with the correct filename on Windows
- Fixed COM V-Table indices not matching the Clang-reported V-Table index in some cases (DirectWrite/D2D1/DComp)
- Fixed OpenAL throwing when loading an extension prefixed with ALC_ instead AL_
- Fixed WGL.GetApi throwing a NotImplementedException
- Fixed library loading failing on platforms that do not have a libdl.so symlink (we are now using libdl.so.2, thanks @CasualPokePlayer)
- Fixed a StackOverflowException when using SetWindowIcon in some cases with Silk.NET.Windowing
- Fixed GLFW crashing in some cases where multiple windows are used
- Fixed WebGPU using the incorrect size for booleans
- Fixed a memory leak with some string marshalling functions
If you are using Silk.NET with an iOS or Android application, please enable trimming and set TrimMode to full.