Popularity
6.5
Growing
Activity
8.8
Growing
1,131
35
124

Programming language: C#
License: MIT License
Tags: Graphics    
Latest version: v2.0.0-preview4

Silk.NET alternatives and similar packages

Based on the "Graphics" category.
Alternatively, view Silk.NET alternatives based on common mentions on social networks and blogs.

  • Live-Charts

    Simple, flexible, interactive & powerful charts, maps, and gauges for .Net, LiveCharts2 can now practically run everywhere WPF, WinForms, Xamarin, Avalonia, WinUI, UWP.
  • Oxyplot

    A cross-platform plotting library for .NET
  • Syncfusion Xamarin components and frameworks are constantly being developed and updated to meet the growing needs of a changing digital world. This suite has controls from basic editors to powerful, advanced controls like DataGrid, Charts, ListView, and RTE. Free 30-day Trial.
  • OpenTK

    The Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL. It also includes windowing, mouse, keyboard and joystick input and a robust and fast math library, giving you everything you need to write your own renderer or game engine. OpenTK can be used standalone or inside a GUI on Windows, Linux, Mac.
  • Helix Toolkit

    Helix Toolkit is a collection of 3D components for .NET.
  • Win2D

    Win2D is an easy-to-use Windows Runtime API for immediate mode 2D graphics rendering with GPU acceleration. It is available to C#, C++ and VB developers writing apps for the Windows Universal Platform (UWP). It utilizes the power of Direct2D, and integrates seamlessly with XAML and CoreWindow.
  • Veldrid

    A low-level, portable graphics library for .NET.
  • ScottPlot

    Interactive Plotting Library for .NET
  • Interactive Data Display for WPF

    Interactive Data Display for WPF is a set of controls for adding interactive visualization of dynamic data to your application. It allows to create line graphs, bubble charts, heat maps and other complex 2D plots which are very common in scientific software. Interactive Data Display for WPF integrates well with Bing Maps control to show data on a geographic map in latitude/longitude coordinates. The controls can also be operated programmatically.
  • LibVLCSharp

    Cross-platform .NET/Mono bindings for LibVLC
  • NGraphics

    NGraphics is a cross platform library for rendering vector graphics on .NET. It provides a unified API for both immediate and retained mode graphics using high quality native renderers.
  • LiveCharts2

    Simple, flexible, interactive & powerful charts, maps and gauges for .Net, LiveCharts2 can now practically run everywhere WPF, WinForms, Xamarin, Avalonia, WinUI, UWP, MAUI (WIP), Blazor-wasm (WIP)
  • LibTessDotNet

    C# port of the famous GLU Tessellator - prebuilt binaries now available in "releases" tab
  • SciChart

    Examples, tutorials, and sandbox for SciChart WPF: High Performance Realtime Charts
  • RealTimeGraphX

    High performance real-time graph for WPF & UWP
  • Aspose.Drawing

    Aspose.Drawing for .NET Examples
  • AssimpNet

    A cross-platform .NET Standard wrapper for the Open Asset Importer ("Assimp"). The library enables importing, processing, and exporting of 3D models for rendering in graphics/game applications. Over 40 formats are supported for importing (e.g. OBJ, FBX, GLTF, 3DS, Collada) and a subset of those formats can be exported to (e.g. OBJ, GLTF, 3DS, Collada). Mesh processing features allow for mesh data to be generated or optimized for real-time rendering.

Do you think we are missing an alternative of Silk.NET or a related project?

Add another 'Graphics' Package

README

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

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

Prerequisites

  • Must: .NET 6 SDK
  • Should: Android (w/ AOT), iOS, and MAUI .NET 6 workloads (use dotnet workload install android android-aot ios maui to install them)
  • Should: Android SDK version 30 with NDK tools installed
  • Could: Java JDK (for gradle)
  • Could: Visual Studio 2019 Community version 16.10 or later

Instructions

  • Clone the repository (recursively)
  • Run build.sh, build.cmd, build.ps1, or nuke compile. By default all packages targeting .NET Core, Standard, or .NET 6 are built. To build our older Xamarin iOS and Android packages, add the --feature-sets legacy-ios legacy-android arguments.
  • Use the DLLs. To get nupkgs you can use with NuGet instead, use nuke pack.

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.

The older Xamarin projects will 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 (v16.10 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 won't be able to build the older Xamarin packages.

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.


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


*Note that all licence references and agreements mentioned in the Silk.NET README section above are relevant to that project's source code only.