Об этом проекте

Silk.NET — это библиотека .NET-привязок для низкоуровневых мультимедийных, графических и вычислительных API. Она нацелена на OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, WebGPU и DirectX и предназначена для создания кроссплатформенных 3D-графических, аудио-, вычислительных и тактильных приложений на C#. Ключевые характеристики, описанные проектом: - Производительность: сгенерированный код C# и его JIT-сборка были проанализированы для минимизации накладных расходов на привязки. - Актуальные привязки: эффективный механизм регенерации создает привязки из исходных источников с частыми обновлениями. - Высокоуровневые утилиты: помимо прямых привязок, предлагаются обертки и платформонезависимые абстракции для окон и ввода, что позволяет приложениям работать на многих платформах без изменения кода. - Все-в-одном: графика, вычисления, аудио, ввод и оконная система в одном решении. Совместимость: работает на любой платформе, соответствующей .NET Standard 2.0, включая .NET 6.0, Xamarin, .NET Framework 4.6.1+ и .NET Core 2.0+. Статус проекта: Silk.NET 3.0 находится в разработке, сфокусирован на переработке способа генерации C#-привязок и устранении проблемных мест. Обслуживание Silk.NET 2.X ограничено, так как команда состоит из волонтеров; обновления 2.X выпускаются по мере необходимости. README приглашает участников и сопровождающих помочь поддерживать 2.X. Сборка из исходного кода требует .NET 6 и .NET 7 SDK, рабочие нагрузки Android/iOS/Mac Catalyst, Android SDK версий 31, 33 и 34 с инструментами NDK, Java JDK 11+ и, опционально, Visual Studio 2022 17.0+. Сборка выполняется через build.sh, build.cmd, build.ps1 или nuke compile; nuke pack создает NuGet-пакеты. Другие действия сборки, такие как FullBuild, Pack и FullPack, доступны через nuke --plan. Вклад в проект следует подходу ранних pull request: форкните репозиторий, создайте ветку с пустым коммитом, откройте черновой pull request до начала работы, коммитьте небольшими порциями, затем запросите ревью. Решение очень большое, и CONTRIBUTING.md объясняет, как процесс сборки помогает управлять этим. Управление и лицензирование: Silk.NET — официальный проект .NET Foundation под лицензией MIT/X11, с зависимостями под MIT-совместимыми лицензиями, и принимает Кодекс поведения Contributor Covenant. Проект принимает финансовую поддержку и отмечает поддержку JetBrains с открытыми лицензиями IDE. Примеры доступны в папке examples репозитория, а команда общается через Discord.