SharpMetal 1.0.0-preview21
dotnet add package SharpMetal --version 1.0.0-preview21
NuGet\Install-Package SharpMetal -Version 1.0.0-preview21
<PackageReference Include="SharpMetal" Version="1.0.0-preview21" />
paket add SharpMetal --version 1.0.0-preview21
#r "nuget: SharpMetal, 1.0.0-preview21"
// Install SharpMetal as a Cake Addin #addin nuget:?package=SharpMetal&version=1.0.0-preview21&prerelease // Install SharpMetal as a Cake Tool #tool nuget:?package=SharpMetal&version=1.0.0-preview21&prerelease
Why?
The .NET ecosystem is very much lacking a good Metal binding package. Existing options are outdated or don't integrate well into cross-platform projects. This project aims to be a complete, up-to-date package that stays true to the original API while making the API easy to use and integrate into C#.
What can you make with it?
Progress is underway to build a full set of working reimplementations of the metal-cpp samples. Thanks to the generator, the entire Metal API, from compute shaders to raytracing, should be available, although specific things may take further tweaking.
I want to contribute!
Wonderful! SharpMetal is built with .NET 8.0, and follows a couple of specific guidelines:
- Block Namespaces
- Source Generated P/Invokes
LibraryImport
notDllImport
- Use C# types where possible
NSInteger
→long
NSUInteger
→ulong
- Mark structs and classes with
SupportedOSPlatform
attribute - SharpMetal is built for macOS primarily, so when there are platform-specific differences, use the macOS option
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.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.
Version | Downloads | Last updated |
---|---|---|
1.0.0-preview21 | 17,445 | 12/28/2024 |
1.0.0-preview20 | 2,279 | 8/12/2024 |
1.0.0-preview19 | 71 | 8/12/2024 |
1.0.0-preview18 | 157 | 7/22/2024 |
1.0.0-preview14 | 514 | 5/23/2024 |
1.0.0-preview13 | 72 | 5/21/2024 |
1.0.0-preview12 | 251 | 3/20/2024 |
1.0.0-preview11 | 152 | 3/18/2024 |
1.0.0-preview10 | 81 | 3/4/2024 |