Об этом проекте
DirectX Tool Kit для DirectX 11 — это поддерживаемая Microsoft коллекция вспомогательных классов C++ для написания кода Direct3D 11. Она ориентирована на настольные приложения Win32 для Windows 8.1 или новее, Xbox One и приложения универсальной платформы Windows (UWP) для Windows 10 и Windows 11. Код предназначен для сборки с помощью Visual Studio 2022 или 2026, clang для Windows версии 12 или новее, или MinGW, и требует Windows 11 SDK (22000) или новее для Visual Studio. Он предназначен для работы без содержимого из устаревшего DirectX SDK.
Публичные заголовки в каталоге Inc\ охватывают широкий спектр типичных задач графики и ввода: Audio.h для низкоуровневого аудио API на основе XAudio2; BufferHelpers.h для создания ресурсов D3D из данных ЦП; CommonStates.h для часто используемых объектов состояний D3D; DDSTextureLoader.h и WICTextureLoader.h для загрузки текстур; Effects.h и PostProcess.h для встроенных шейдеров; GamePad.h, Keyboard.h и Mouse.h для ввода; GeometricPrimitive.h для базовых фигур; GraphicsMemory.h для динамического выделения графической памяти; Model.h для мешей, загружаемых из файлов .CMO, .SDKMESH или .VBO; PrimitiveBatch.h для пользовательских примитивов; ScreenGrab.h для снимков экрана; SimpleMath.h как обертка для DirectXMath; SpriteBatch.h и SpriteFont.h для 2D-рендеринга и растрового текста; и VertexTypes.h для распространенных форматов вершин. XboxDDSTextureLoader.h предоставляет эксклюзивный вариант для Xbox One.
Исходные файлы находятся в каталогах Src\ и Audio\, а MakeSpriteFont и XWBTool — это инструменты командной строки для генерации бинарных ресурсов SpriteFont и волновых банков в стиле XACT. Каталог build\ содержит различные файлы и скрипты сборки, а каталог skills\ содержит опубликованные навыки CoPilot. Документация доступна в вики GitHub, а помощь через CLI CoPilot можно установить с помощью команд winget и gh skill.
Проект лицензирован под MIT. В примечаниях к выпуску описаны несколько заметных изменений: пакеты NuGet directxtk_desktop_win10 и directxtk_uwp устарели в пользу vcpkg; проекты CMake требуют версии 3.21 или новее; поддержка аппаратного уровня функций Direct3D 9.x была прекращена начиная с выпуска июля 2026 года, при этом шейдеры, построенные с использованием Shader Model 4, требуют D3D_FEATURE_LEVEL_10_0 или выше; поддержка Windows 7 и Windows 8.0 была прекращена начиная с выпуска марта 2025 года; и различные изменения API со временем, включая типизированные флаги битовых масок перечислений, встроенные пространства имен для типов DX11 и DX12, а также изменения флагов DDSTextureLoader и скиннинга DGSLEffect. Поведение относительного движения класса Mouse было обновлено в феврале 2023 года для накопления дельт между вызовами GetState, с EndOfInputFrame для явного сброса.
Поддержка предлагается через Stack Overflow с тегом directxtk и сервер Discord DirectX, а отчеты об ошибках и запросы функций отправляются в проблемы GitHub. Вклады требуют Соглашения о лицензии участника, а тесты для новых функций следует отправлять в отдельный репозиторий Test Suite. Проект следует Кодексу поведения Microsoft с открытым исходным кодом и включает рекомендации по товарным знакам. В титрах указаны Шон Харгривз и Чак Уолборн как основные авторы, с вкладом от нескольких других в форматы файлов, шейдеры, инструменты и проверку кода.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.