SPIRV-Cross.NET
1.0.2
dotnet add package SPIRV-Cross.NET --version 1.0.2
NuGet\Install-Package SPIRV-Cross.NET -Version 1.0.2
<PackageReference Include="SPIRV-Cross.NET" Version="1.0.2" />
paket add SPIRV-Cross.NET --version 1.0.2
#r "nuget: SPIRV-Cross.NET, 1.0.2"
// Install SPIRV-Cross.NET as a Cake Addin #addin nuget:?package=SPIRV-Cross.NET&version=1.0.2 // Install SPIRV-Cross.NET as a Cake Tool #tool nuget:?package=SPIRV-Cross.NET&version=1.0.2
SPIRV-Cross.NET: cross-platform C# wrapper for SPIRV-Cross
A cross-platform .NET 8.0 wrapper for Khronos Group's SPIR-V cross compiler, written in C#.
Usage
For a brief showcase of how SPIRV-Cross.NET works, check the Example folder. At the moment, the object structure maps relatively close to SPIRV-Cross's C++ API, and the library's documentation can generally be used in most cases. However, if there is not a direct mapping for a given field, property, or function, please consult the source files in Source/Managed/.. for more info.
Native Details
To facilitate cross-platform releases, the native SPIRV-Cross library is built using zig instead of CMake/GN. As Zig's compiler supports cross-compilation out of the box, it allows SPIRV-Cross to build easily from most desktop platforms, for most platforms. The libraries produced by building this repository are what SPIRV-Cross.NET uses in its releases.
Building Native Libraries
To build native libraries, run the BuildNative.cs
file inside the Native folder, specicying your target architecture [x64, arm64, all] with -A and your target platform [windows, linux, macos, all] with -P.
Native build requirements:
- Zig compiler version present on your
PATH
of at least version 0.14.0+. You can get the compiler from Zig's download page or from a package manager
Pre-built binaries are bundled in the NuGet package for the following operating systems:
- Windows x64
- Windows arm64
- OSX x64
- OSX arm64
- Linux x64
- Linux arm64
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.