Coder Social home page Coder Social logo

dystudio / silk.net Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dotnet/silk.net

0.0 1.0 0.0 137.09 MB

The high-speed OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, and DirectX bindings library your mother warned you about.

License: MIT License

C# 98.92% Batchfile 0.01% Shell 0.01% GLSL 0.01% PowerShell 0.01% C 0.25% C++ 0.62% Makefile 0.01% CMake 0.01% Java 0.20% HLSL 0.01%

silk.net's Introduction


NuGet Version Preview Feed CI Build Join our Discord

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, 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 5.0, Xamarin, .NET Framework 4.6.1+, and .NET Core 2.0+.


.NET Foundation
Proud to be an official project under the benevolent .NET Foundation umbrella.

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 monthly 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.

The team

We currently have the following maintainers:

In addition, the Silk.NET working group help drive larger user-facing changes providing key consultation from the perspective of dedicated users and professionals.

Building from source

  • Make sure you have at least the .NET 5 SDK installed, preferably with Visual Studio's .NET Framework and Xamarin workloads too.
  • Clone the repository
  • Run build.sh, build.cmd, build.ps1, or nuke build. To build for iOS and Android, add the --feature-sets ios android arguments.

There are more advanced build actions you can do too, such as FullBuild, Pack, FullPack, among others which you can view by doing nuke --plan.

Some projects may not build properly without being configured to use Desktop MSBuild (i.e. the MSBuild shipped with Visual Studio). As a result, you will ideally need to be on Windows and have Visual Studio 2019 Community (or greater) installed with .NET Core and Xamarin workloads. If you don't have this (i.e. because you're on Linux or Mac), you can still develop Silk.NET in a limited capacity but you will not be able to work on mobile workloads.

Contributing

Silk.NET uses and encourages Early Pull Requests. Please don't wait until you're done to open a PR!

  1. Fork Silk.NET
  2. Add an empty commit to a new branch to start your work off: git commit --allow-empty -m "start of [thing you're working on]"
  3. Once you've pushed a commit, open a draft pull request. Do this before you actually start working.
  4. Make your commits in small, incremental steps with clear descriptions.
  5. Tag a maintainer when you're done and ask for a review!

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. Dylan and Kai are accepting GitHub Sponsorships.

Further resources

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.


JetBrains

Special thanks to JetBrains for supporting us with open-source licenses for their IDEs.

silk.net's People

Contributors

alexrp avatar azyyyyyy avatar calvinwilkinson avatar devvoid avatar dinolek avatar dmsch avatar frederikja163 avatar github-actions[bot] avatar hjred avatar hurricankai avatar joffarex avatar jsm174 avatar kylegalvin avatar martinhorcicka avatar matijabrown avatar mcavanagh avatar moozzyk avatar perksey avatar philt avatar pyrdacor avatar radobot avatar rhyswhy avatar saculrennorb avatar thargy avatar theprotonfactor avatar thomasmiz avatar toby-lawrance avatar tyler-in avatar vbousquet avatar vincenzoml avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.