mirror of
https://github.com/Ryubing/SharpMetal.git
synced 2025-05-12 18:50:37 +01:00
Package README
This commit is contained in:
parent
5db45620a2
commit
06f4d5b8ff
2 changed files with 20 additions and 1 deletions
19
Package_README.md
Normal file
19
Package_README.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
## 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` not `DllImport`
|
||||
- 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
|
|
@ -12,7 +12,7 @@
|
|||
<RepositoryType>git</RepositoryType>
|
||||
<PackageTags>Metal Graphics macOS</PackageTags>
|
||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||
<PackageReadmeFile>Package_README.md</PackageReadmeFile>
|
||||
<Title>SharpMetal</Title>
|
||||
<Authors>Isaac Marovitz</Authors>
|
||||
</PropertyGroup>
|
||||
|
|
Loading…
Reference in a new issue