stringtranslate.com

DirectX

Microsoft DirectX — это набор интерфейсов прикладного программирования (API) для обработки задач, связанных с мультимедиа , особенно игровым программированием и видео, на платформах Microsoft . Первоначально названия всех этих API начинались с «Direct», например , Direct3D , DirectDraw , DirectMusic , DirectPlay , DirectSound и т. д. Название DirectX было придумано как сокращенное название для всех этих API ( X заменял конкретные имена API) и вскоре стало названием коллекции. Когда Microsoft позже приступила к разработке игровой консоли , X была использована в качестве основы названия Xbox , чтобы указать, что консоль основана на технологии DirectX. [3] Инициал X был перенесен в наименования API, разработанных для Xbox, таких как XInput и Cross-platform Audio Creation Tool (XACT), в то время как шаблон DirectX был продолжен для API Windows, таких как Direct2D и DirectWrite .

Direct3D (API 3D-графики в DirectX) широко используется в разработке видеоигр для Microsoft Windows и линейки консолей Xbox . Direct3D также используется другими программными приложениями для визуализации и графических задач, таких как проектирование CAD/CAM. Поскольку Direct3D является наиболее широко разрекламированным компонентом DirectX, часто можно увидеть, как названия «DirectX» и «Direct3D» используются взаимозаменяемо.

Комплект средств разработки программного обеспечения DirectX (SDK) состоит из библиотек времени выполнения в распространяемой двоичной форме, а также сопроводительной документации и заголовков для использования в кодировании. Первоначально среды выполнения устанавливались только играми или явно пользователем. Windows 95 не запускалась с DirectX, но DirectX был включен в Windows 95 OEM Service Release 2. [4] Windows 98 и Windows NT 4.0 поставлялись с DirectX, как и каждая версия Windows, выпущенная с тех пор. SDK доступен для бесплатной загрузки. Хотя среды выполнения являются проприетарным программным обеспечением с закрытым исходным кодом, для большинства образцов SDK предоставляется исходный код. Начиная с выпуска Windows 8 Developer Preview, DirectX SDK был интегрирован в Windows SDK. [5]

История развития

В конце 1994 года Microsoft была готова выпустить Windows 95 , свою следующую операционную систему . Важным фактором ее ценности для потребителей были программы, которые могли бы работать на ней. Сотрудник Microsoft Алекс Сент-Джон вел переговоры с различными разработчиками игр, спрашивая, насколько вероятно, что они будут переносить свои игры MS-DOS на Windows 95, и нашел ответы в основном отрицательными, поскольку программисты обнаружили, что среда Windows не предоставляет необходимых функций, которые были доступны в MS-DOS с использованием процедур BIOS или прямого доступа к оборудованию. [6] Также были сильные опасения по поводу совместимости; ярким примером этого была Disney's Animated Storybook: The Lion King , которая была основана на программном интерфейсе WinG . [7] Из-за многочисленных несовместимых графических драйверов от новых компьютеров Compaq , которые не были протестированы с интерфейсом WinG, который поставлялся в комплекте с игрой, она так часто вылетала на многих настольных системах, что родители заполонили телефонные линии поддержки Disney. [ 8] [9]

Сент-Джон осознал, что сопротивление разработке игр под Windows будет ограничением, и нанял двух дополнительных инженеров, Крейга Эйслера и Эрика Энгстрома , чтобы разработать лучшее решение, чтобы привлечь больше программистов для разработки игр для Windows. Проект имел кодовое название Manhattan Project, как и одноименный проект времен Второй мировой войны , и идея заключалась в том, чтобы заменить разработанные в Японии игровые консоли персональными компьютерами под управлением операционной системы Microsoft. [8] Первоначально в качестве логотипа использовался символ радиации , но Microsoft попросила команду изменить логотип. [8] Руководство не согласилось на проект, поскольку они уже списывали Windows как игровую платформу, но трое взяли на себя обязательство по разработке этого проекта. [9] Их мятежный характер побудил Брэда Сильверберга , старшего вице-президента по офисным продуктам Microsoft, назвать трио «Beastie Boys». [10]

Большая часть работы этих троих была проделана среди других назначенных проектов, начиная с конца 1994 года. [9] В течение четырех месяцев и при участии нескольких производителей оборудования команда разработала первый набор интерфейсов прикладного программирования (API), которые они представили на конференции разработчиков игр 1995 года . [9] SDK включал библиотеки, реализующие DirectDraw для растровой графики, [11] DirectSound для звука, [12] и DirectPlay для связи между игроками по сети. [13] Кроме того, расширенный API джойстика, уже присутствующий в Windows 95, был впервые задокументирован как DirectInput, [14] в то время как описание того, как реализовать немедленный запуск процедуры установки программного обеспечения после вставки его CD-ROM, функция, называемая AutoPlay, также была частью SDK. [15] «Прямая» часть библиотеки была так названа, поскольку эти процедуры обходили существующие основные процедуры Windows 95 и получали доступ к компьютерному оборудованию только через уровень абстракции оборудования (HAL). [16] Хотя команда назвала его «Game SDK» ( комплект для разработки программного обеспечения ), название «DirectX» пришло от одного журналиста, который высмеял схему именования различных библиотек. Команда решила продолжить использовать эту схему именования и назвать проект DirectX. [8]

Первая версия DirectX была выпущена в сентябре 1995 года как Windows Game SDK. Ее компонент DirectDraw был заменой Win32 для DCI [17] и WinG API для Windows 3.1 . [18] DirectX позволял всем версиям Microsoft Windows, начиная с Windows 95, включать высокопроизводительные мультимедиа. Эйслер писал о безумии по созданию DirectX 1–5 в своем блоге. [19]

Чтобы привлечь больше разработчиков на борт DirectX, Microsoft обратилась к Джону Кармаку из id Software и предложила бесплатно перенести Doom и Doom 2 из MS-DOS в DirectX, при этом id сохранит все права на публикацию игры. Кармак согласился, и Гейб Ньюэлл из Microsoft возглавил проект по переносу. Первая игра была выпущена под названием Doom 95 в августе 1996 года, став первой опубликованной игрой DirectX. Microsoft активно продвигала игру, а Билл Гейтс появлялся в рекламе для нее. [8]

DirectX 2.0 стал встроенным компонентом Windows с выпуском Windows 95 OSR2 и Windows NT 4.0 в середине 1996 года. Поскольку сама Windows 95 была еще новой и для нее было выпущено мало игр, Microsoft занялась активным продвижением DirectX среди разработчиков, которые в целом не доверяли способности Microsoft создать игровую платформу в Windows. Алекс Сент-Джон, евангелист DirectX, организовал на конференции разработчиков компьютерных игр 1996 года тщательно продуманное мероприятие , которое разработчик игр Джей Барнсон описал как мероприятие в римской тематике, включающее настоящих львов , тоги и что-то напоминающее крытый карнавал. [20] Именно на этом мероприятии Microsoft впервые представила Direct3D и продемонстрировала многопользовательский MechWarrior 2, играемый через Интернет.

Команда DirectX столкнулась со сложной задачей тестирования каждого выпуска DirectX на массиве компьютерного оборудования и программного обеспечения . Различные графические карты, звуковые карты, материнские платы, процессоры, устройства ввода, игры и другие мультимедийные приложения были протестированы с каждой бета-версией и финальным выпуском. Команда DirectX также создала и распространила тесты, которые позволили индустрии оборудования подтвердить, что новые аппаратные разработки и выпуски драйверов будут совместимы с DirectX.

До DirectX Microsoft добавила OpenGL в свою платформу Windows NT . [21] OpenGL был разработан как кроссплатформенный, независимый от оконной системы программный интерфейс для графического оборудования компанией Silicon Graphics, Inc., чтобы вывести программирование 3D-графики в русло прикладного программирования. Кроме того, его можно было использовать для 2D-графики и обработки изображений, и он контролировался Советом по архитектурному обзору (ARB), в который входила компания Microsoft. [22] [23] Direct3D должен был стать контролируемой Microsoft альтернативой OpenGL, изначально ориентированной на использование в играх. По мере роста популярности 3D-игр разработчики игр обнаружили, что OpenGL можно эффективно использовать для разработки игр. [24] В этот момент началась «битва» между сторонниками кроссплатформенного OpenGL и Direct3D, предназначенного только для Windows. [25] Кстати, OpenGL в Microsoft поддерживался командой DirectX. Если разработчик решал использовать API трехмерной графики OpenGL в компьютерных играх , другие API DirectX, помимо Direct3D, часто объединялись с OpenGL, поскольку OpenGL не включает в себя все функциональные возможности DirectX (например, поддержку звука или джойстика).

В версии для консолей DirectX использовался в качестве основы для API консолей Xbox , Xbox 360 и Xbox One от Microsoft . API был разработан совместно Microsoft и Nvidia , которые разработали собственное графическое оборудование, используемое в оригинальной Xbox. API Xbox был похож на DirectX версии 8.1, но не поддавался обновлению, как и другие консольные технологии. Xbox имел кодовое название DirectXbox, но оно было сокращено до Xbox для его коммерческого названия. [26]

В 2002 году Microsoft выпустила DirectX 9 с поддержкой использования гораздо более длинных шейдерных программ, чем раньше, с пиксельным и вершинным шейдером версии 2.0. С тех пор Microsoft продолжила обновлять набор DirectX, представив Shader Model 3.0 в DirectX 9.0c, выпущенном в августе 2004 года.

С апреля 2005 года DirectShow был удален из DirectX и перемещен в Microsoft Platform SDK .

Подтверждено, что DirectX присутствует в Windows Phone 8 от Microsoft . [27]

Трассировка лучей в реальном времени была анонсирована как DXR в 2018 году. Поддержка компиляции HLSL в SPIR-V была также добавлена ​​в компилятор шейдеров DirectX в том же году. [28]

Компоненты

DirectX состоит из нескольких API:

Microsoft объявила устаревшими следующие компоненты:

Функциональность DirectX предоставляется в виде объектов и интерфейсов в стиле COM . Кроме того, хотя сами по себе они не являются компонентами DirectX, управляемые объекты были построены поверх некоторых частей DirectX, таких как Managed Direct3D [31] и графическая библиотека XNA [32] поверх Direct3D 9.

Microsoft распространяет отладочный инструмент для DirectX под названием «PIX». [33]

Версии

DirectX9

Представленный Microsoft в 2002 году, DirectX 9 стал значимым релизом в семействе DirectX. Он принес много важных функций и улучшений в графические возможности Windows. На момент своего выпуска он поддерживал Windows 98 , Windows Me , Windows 2000 и Windows XP . По состоянию на август 2024 года он продолжает поддерживаться всеми последующими версиями Windows для обратной совместимости.

Одной из ключевых функций, представленных в DirectX 9, была Shader Model 2.0, которая включала Pixel Shader 2.0 и Vertex Shader 2.0. Они позволяли выполнять более сложную и реалистичную визуализацию графики. Она также принесла столь необходимые улучшения производительности за счет лучших возможностей аппаратного ускорения и лучшего использования ресурсов графического процессора. Она также представила HLSL , который предоставил разработчикам более доступный способ создания шейдеров.

DirectX 9.0c был обновлением оригинала и постоянно менялся на протяжении многих лет, что влияло на его совместимость со старыми операционными системами. С января 2007 года Windows 2000 и Windows XP стали минимально необходимыми операционными системами. Это означает, что поддержка Windows 98 и Windows Me была официально прекращена. С августа 2024 года DirectX 9.0c по-прежнему регулярно обновляется.

Windows XP SP2 и более поздние версии включают DirectX 9.0c, [34] но могут потребовать более новую установку распространяемого пакета среды выполнения DirectX для приложений DirectX 9.0c, скомпилированных с помощью пакета SDK DirectX 9.0 от февраля 2005 года или более поздней версии.

DirectX 9 оказал значительное влияние на разработку игр. Многие игры с середины 2000-х до начала 2010-х годов были разработаны с использованием DirectX 9, и он стал стандартной целью для разработчиков. Даже сегодня некоторые игры все еще используют DirectX 9 в качестве опции для старого или менее мощного оборудования.

DirectX10

Словесный логотип Microsoft DirectX 10

Крупное обновление DirectX API, DirectX 10 поставляется с Windows Vista (выпущенной в конце 2006 года) и более поздними версиями и доступно только в них. Предыдущие версии Windows, такие как Windows XP, не могут запускать эксклюзивные приложения DirectX 10. Вместо этого программы, работающие в системе Windows XP с оборудованием DirectX 10, просто прибегают к кодовому пути DirectX 9.0c, последнему из доступных для компьютеров Windows XP. [35]

Изменения для DirectX 10 были обширными. Многие бывшие части DirectX API были устарели в последнем DirectX SDK и сохранены только для совместимости: DirectInput был устарел в пользу XInput , DirectSound был устарел в пользу Cross-platform Audio Creation Tool system (XACT) и, кроме того, потерял поддержку аппаратно ускоренного звука, поскольку аудиостек Vista рендерит звук программно на ЦП. DirectPlay DPLAY.DLL также был удален и заменен на dplayx.dll; игры, которые полагаются на эту DLL, должны дублировать ее и переименовывать в dplay.dll.

Для достижения обратной совместимости DirectX в Windows Vista содержит несколько версий Direct3D: [36]

Direct3D 10.1 — это инкрементное обновление Direct3D 10.0, которое поставлялось с Windows Vista Service Pack 1 , выпущенным в феврале 2008 года, и требовало его . [37] Этот выпуск в основном устанавливает несколько дополнительных стандартов качества изображения для поставщиков графики, предоставляя разработчикам больше контроля над качеством изображения. [38] Он также добавляет поддержку массивов кубических карт, отдельных режимов смешивания для каждого MRT, экспорта маски покрытия из пиксельного шейдера, возможности запускать пиксельный шейдер для каждого образца, доступа к многовыборочным буферам глубины [39] и требует, чтобы видеокарта поддерживала Shader Model 4.1 или выше и 32-битные операции с плавающей точкой. Direct3D 10.1 по-прежнему полностью поддерживает оборудование Direct3D 10, но для использования всех новых функций требуется обновленное оборудование. [40]

DirectX11

Словесный логотип Microsoft DirectX 11

Microsoft представила DirectX 11 на мероприятии Gamefest 08 в Сиэтле. Финальное обновление платформы было выпущено для Windows Vista 27 октября 2009 года, через неделю после первоначального выпуска Windows 7 , которая была запущена с Direct3D 11 в качестве базового стандарта.

Основные запланированные функции, включая поддержку GPGPU ( DirectCompute ) и Direct3D 11 с поддержкой тесселяции [41] [42] и улучшенной поддержкой многопоточности , чтобы помочь разработчикам видеоигр в разработке игр, которые лучше используют многоядерные процессоры. [43] Части нового API, такие как многопоточная обработка ресурсов, могут поддерживаться на оборудовании класса Direct3D 9/10/10.1. Аппаратная тесселяция и Shader Model 5.0 требуют оборудования с поддержкой Direct3D 11. [44] С тех пор Microsoft выпустила Direct3D 11 Technical Preview. [45] Direct3D 11 является строгим надмножеством Direct3D 10.1 — все аппаратные и API-функции версии 10.1 сохраняются, а новые функции добавляются только при необходимости для предоставления новой функциональности. Это помогает поддерживать обратную совместимость с предыдущими версиями DirectX.

Было выпущено четыре обновления для DirectX 11:

DirectX12

DirectX 12 был анонсирован Microsoft на конференции GDC 20 марта 2014 года и официально выпущен вместе с Windows 10 29 июля 2015 года.

Главной особенностью нового выпуска DirectX стало введение передовых низкоуровневых программных API для Direct3D 12 , которые могут снизить накладные расходы драйвера. Теперь разработчики могут реализовывать собственные списки команд и буферы для графического процессора, что позволяет более эффективно использовать ресурсы за счет параллельных вычислений . Ведущий разработчик Макс МакМаллен заявил, что главная цель Direct3D 12 — достичь «эффективности консольного уровня на телефоне, планшете и ПК». [55] Выпуск Direct3D 12 сопровождается другими инициативами для графических API с низкими накладными расходами, включая Mantle от AMD для видеокарт AMD, Metal от Apple для iOS и macOS и кроссплатформенный Vulkan от Khronos Group .

Поддержка нескольких адаптеров будет реализована в DirectX 12, что позволит разработчикам использовать несколько графических процессоров в системе одновременно; ранее поддержка нескольких графических процессоров зависела от реализаций поставщиков, таких как AMD CrossFireX или NVIDIA SLI . [56] [57] [58] [59]

DirectX 12 поддерживается всеми графическими процессорами Fermi и более поздними моделями Nvidia, чипами AMD на базе GCN , а также графическими блоками процессоров Intel Haswell и более поздних моделей. [60]

На конференции SIGGRAPH 2014 компания Intel выпустила демонстрационную версию, демонстрирующую сгенерированное компьютером поле астероидов , в которой DirectX 12, как утверждается, на 50–70% эффективнее DirectX 11 по скорости рендеринга и энергопотреблению процессора. [61] [62]

Ashes of the Singularity была первой общедоступной игрой, использующей DirectX 12. Тестирование, проведенное Ars Technica в августе 2015 года, выявило небольшое снижение производительности в DirectX 12 по сравнению с режимом DirectX 11 для Nvidia GeForce 980 Ti , в то время как AMD Radeon R9 290x достигла постоянного улучшения производительности до 70% под DirectX 12, а в некоторых сценариях AMD превзошла более мощную Nvidia под DirectX 12. Различия в производительности могут быть связаны с плохой оптимизацией драйвера Nvidia для DirectX 12 или даже с аппаратными ограничениями карты, которая была оптимизирована для последовательного выполнения DirectX 11; однако точная причина остается неясной. [63]

Улучшения производительности DirectX 12 на Xbox не столь существенны, как на ПК. [64]

В марте 2018 года была анонсирована технология DirectX Raytracing (DXR), способная выполнять трассировку лучей в реальном времени на поддерживаемом оборудовании [65] , а API DXR был добавлен в обновление Windows 10 за октябрь 2018 года.

В 2019 году Microsoft объявила о появлении DirectX 12 в Windows 7, но только в качестве подключаемого модуля для определенных игр. [66]

DirectX 12 Ultimate

Microsoft представила DirectX 12 Ultimate в марте 2020 года. DirectX 12 Ultimate будет объединена в общую библиотеку как на компьютерах с Windows 10, так и на Xbox Series X и других консолях Xbox девятого поколения. Среди новых функций Ultimate — DirectX Raytracing 1.1 , Variable Rate Shading, которая дает программистам контроль над уровнем детализации затенения в зависимости от выбора дизайна, Mesh Shaders и Sampler Feedback. [67] [68]

История версий

Номер версии, сообщаемый инструментом Microsoft DxDiag (версия 4.09.0000.0900 и выше), использует формат x.xx.xxxx.xxxx для номеров версий. Однако на странице DirectX и Windows XP MSDN утверждается, что реестр всегда был в формате x.xx.xx.xxxx. Поэтому, когда в приведенной выше таблице указана версия как «4.09.00.0904», инструмент Microsoft DxDiag может иметь ее как «4.09.0000.0904». [96]

Совместимость

Различные выпуски Windows включали и поддерживали различные версии DirectX, что позволяло более новым версиям операционной системы продолжать запускать приложения, разработанные для более ранних версий DirectX, пока эти версии не будут постепенно заменены на более новые API, драйверы и оборудование. [97]

API, такие как Direct3D и DirectSound, должны взаимодействовать с оборудованием, и они делают это через драйвер устройства . Производители оборудования должны писать эти драйверы для интерфейса драйвера устройства конкретной версии DirectX (или DDI) и тестировать каждую отдельную часть оборудования, чтобы сделать их совместимыми с DirectX. Некоторые устройства имеют только совместимые с DirectX драйверы (другими словами, необходимо установить DirectX, чтобы использовать это оборудование). Ранние версии DirectX включали актуальную библиотеку всех совместимых с DirectX драйверов, доступных в настоящее время. Однако эта практика была прекращена в пользу веб- системы обновления драйверов Windows Update , которая позволяла пользователям загружать только драйверы, соответствующие их оборудованию, а не всю библиотеку.

До DirectX 10 среда выполнения DirectX была разработана с учетом обратной совместимости со старыми драйверами, что означает, что новые версии API были разработаны для взаимодействия со старыми драйверами, написанными для DDI предыдущей версии. Программисту приложений приходилось запрашивать доступные возможности оборудования, используя сложную систему «cap bits», каждый из которых был привязан к определенной аппаратной функции. Direct3D 7 и более ранние версии работали на любой версии DDI, Direct3D 8 требует минимальный уровень DDI 6, а Direct3D 9 требует минимальный уровень DDI 7. [98] Однако среда выполнения Direct3D 10 в Windows Vista не может работать на старых драйверах оборудования из-за значительно обновленного DDI, который требует унифицированного набора функций и отказывается от использования «cap bits».

Direct3D 10.1 вводит « уровни функций » 10_0 и 10_1, которые позволяют использовать только аппаратные функции, определенные в указанной версии Direct3D API. Direct3D 11 добавляет уровень 11_0 и «10 уровня 9» — подмножество Direct3D 10 API, разработанное для работы на оборудовании Direct3D 9, которое имеет три уровня функций (9_1, 9_2 и 9_3), сгруппированных по общим возможностям видеокарт «низкого», «среднего» и «высокого» класса; среда выполнения напрямую использует Direct3D 9 DDI, предоставленный во всех драйверах WDDM. Уровень функций 11_1 был введен в Direct3D 11.1 .

.NET Framework

В 2002 году Microsoft выпустила версию DirectX, совместимую с Microsoft .NET Framework , что позволило программистам использовать функциональность DirectX из приложений .NET, используя совместимые языки, такие как управляемый C++ или язык программирования C# . Этот API был известен как « Managed DirectX » (или MDX для краткости) и, как утверждалось, работал на 98% производительности базовых собственных API DirectX. В декабре 2005, феврале 2006, апреле 2006 и августе 2006 годов Microsoft выпустила последовательные обновления этой библиотеки, завершившиеся бета-версией под названием Managed DirectX 2.0. Хотя Managed DirectX 2.0 объединил функциональность, которая ранее была разбросана по нескольким сборкам, в одну сборку, тем самым упростив зависимости от нее для разработчиков программного обеспечения, разработка этой версии впоследствии была прекращена, и она больше не поддерживается. Библиотека Managed DirectX 2.0 истекла 5 октября 2006 года.

Во время GDC 2006 компания Microsoft представила XNA Framework , новую управляемую версию DirectX (похожую, но не идентичную Managed DirectX), которая призвана помочь в разработке игр, упрощая интеграцию DirectX, HLSL и других инструментов в один пакет. Она также поддерживает выполнение управляемого кода на Xbox 360. XNA Game Studio Express RTM стала доступна 11 декабря 2006 года для бесплатной загрузки для Windows XP. В отличие от среды выполнения DirectX, Managed DirectX , XNA Framework или API Xbox 360 (XInput, XACT и т. д.) не поставляются как часть Windows. Ожидается, что разработчики будут распространять компоненты среды выполнения вместе со своими играми или приложениями.

Ни один продукт Microsoft, включая последние версии XNA, не обеспечивает поддержку DirectX 10 для .NET Framework.

Другой подход к DirectX в управляемых языках заключается в использовании сторонних библиотек, таких как:

Альтернативы

Существуют альтернативы семейству API DirectX , среди которых OpenGL , его преемник Vulkan , Metal и Mantle, имеющие большинство функций, сопоставимых с Direct3D . Примерами других API являются SDL , Allegro , OpenMAX , OpenML, OpenAL , OpenCL , FMOD , SFML и т. д. Многие из этих библиотек являются кроссплатформенными или имеют открытые кодовые базы. Существуют также альтернативные реализации, направленные на предоставление того же API, например, в Wine . Кроме того, разработчики ReactOS пытаются повторно реализовать DirectX под названием «ReactX».

Смотрите также

Примечания

  1. ^ После этой версии можно установить среду выполнения за октябрь/ноябрь 2007 г. на 98/98 SE и среду выполнения за февраль 2010 г. на Me.

Ссылки

  1. ^ "Технические страницы Dreamcast". Июнь 1999.
  2. ^ "Microsoft анонсирует Direct3D 12 для Linux / WSL2". 19 мая 2020 г.
  3. ^ "Microsoft: Значение Xbox - The Economist". The Economist . 24 ноября 2005 г.
  4. ^ "Справка DirectX". computerhope.com .
  5. ^ «Где находится DirectX SDK?». microsoft.com . Microsoft.
  6. ^ ДеМария, Расел (2019). "11. The Manhattan Project". GAME OF X V.2 . CRC Press . Windows должна поддерживать; ... – Перелистывание страниц – Вертикальная синхронизация пустых страниц – Плотное микширование звука – Плотная синхронизация звуковых и видеособытий – Производительность Raw blting – Возможность установки графического режима ...
  7. ^ Келли, Кристофер (1 июня 1995 г.). «Видео для Windows и WinG». Журнал доктора Добба . Получено 9 августа 2022 г. Например , программное обеспечение Lion King — это приложение WinToon. ... Как и WinToon, этот пример использует WinG для рисования на DIB.
  8. ^ abcde Willetts, Samual (27 июля 2020 г.). «Как DirectX определил компьютерные игры... с помощью вооруженного дробовиком Билла Гейтса». PC Gamer . Получено 7 декабря 2020 г.
  9. ^ abcd Крэддок, Дэвид (14 ноября 2020 г.). «Ставка на черное: как Microsoft и Xbox изменили поп-культуру, часть 1 — глава 8: сила X». Shacknews . Получено 7 декабря 2020 г. .
  10. ^ Хаггарти, Джеймс (9 декабря 2020 г.). «Microsoft Misfit Helped Lead Company Into Game Market». The Wall Street Journal . Получено 9 декабря 2020 г.
  11. ^ "Введение". DirectDraw Application Programming Interface . Microsoft. 20 апреля 1995 г.
  12. ^ "Введение". DirectSound Application Programming Interface . Microsoft. 20 апреля 1995 г.
  13. ^ "Введение". DirectPlay Application Programming Interface . Microsoft. 20 апреля 1995 г.
  14. ^ "Глава 3: Справочник API джойстика". DirectInput Application Programming Interface . Microsoft. 20 апреля 1995 г.
  15. ^ "Что такое AutoPlay?". Создание CD-ROM-заголовков и игр с поддержкой AutoPlay . Microsoft. 1 ноября 1994 г.
  16. ^ "Архитектурный обзор". DirectDraw Application Programming Interface . Microsoft. 20 апреля 1995 г.
  17. ^ "54 Что такое DCI?". stason.org .
  18. ^ Раскин, Робин (август 1995). «Пожалейте бедного разработчика». PC Magazine . Получено 7 августа 2022 г.
  19. ^ Запись в блоге Крейга Эйслера о лихорадке вокруг создания DirectX 1–5 на craig.theeislers.com
  20. Джей Барнсон (13 июля 2006 г.). «Рассказы о неистовом койоте». Архивировано из оригинала 17 июля 2006 г.
  21. ^ Миллер, Майкл Дж. (декабрь 1994 г.). «ПОБЕДИТЕЛЬ системного программного обеспечения Microsoft Windows NT Workstation, версия 3.5». PC Magazine . Получено 13 августа 2022 г. .
  22. ^ Килгард, Марк (декабрь 2008 г.). «Философия проектирования OpenGL (слайд)». SlideShare . Получено 14 августа 2022 г. .
  23. ^ Килгард, Марк Дж. (1996). Программирование OpenGL для системы X Window . Addison-Wesley . С. 1–6.
  24. ^ Беркес, Отто (12 апреля 2015 г.). «DirectX». Веблог Отто Беркеса . Получено 17 августа 2022 г.
  25. ^ Хеккер, Крис (апрель 1997 г.). «Открытое письмо Microsoft: сделайте правильные вещи для индустрии 3D-игр» (PDF) . Game Developer Magazine . Архивировано (PDF) из оригинала 26 января 2021 г. . Получено 29 августа 2022 г. .
  26. ^ Дж. Аллард, интервью с PC Pro, архивировано 11 октября 2007 г. на Wayback Machine , апрель 2004 г.
  27. ^ "Windows Phone 8 добавляет DirectX, собственную разработку, более простое портирование приложений". 20 июня 2012 г. Получено 23 июня 2012 г.
  28. ^ "Добавьте кулинарную книгу HLSL-spirv. (#1618)". GitHub . 23 октября 2018 г.
  29. ^ 3D анимация SPACE FIGHTER от DIRECT ANIMATION [ постоянная мертвая ссылка ]
  30. ^ "DirectX Media Objects". DirectShow . Microsoft Docs . 5 июня 2019 г. DMO были заменены Media Foundation Transforms (MFT).
  31. ^ «DirectX 9: использование управляемого API Direct3D Graphics в .NET». microsoft.com . Microsoft. 22 октября 2019 г.
  32. ^ "Microsoft.Xna.Framework.Graphics Namespace". microsoft.com . Microsoft. 29 сентября 2011 г.
  33. ^ "ПИКС".
  34. ^ "Руководство по программированию для DirectX SDK". msdn.microsoft.com . Архивировано из оригинала 18 октября 2010 г. Получено 11 января 2022 г.
  35. ^ «Часто задаваемые вопросы по DirectX». microsoft.com . Microsoft.
  36. ^ Чак Уолборн (август 2009 г.). «Графические API в Windows». MSDN . Получено 3 октября 2009 г.
  37. ^ Albanesius, Chloe (29 августа 2007 г.). "Microsoft выпускает первый пакет обновления для Vista". PC Magazine . Архивировано из оригинала 19 марта 2008 г. Получено 29 августа 2007 г.
  38. ^ "Microsoft представляет подробности DirectX 10.1 на SIGGRAPH". 7 августа 2007 г. Архивировано из оригинала 9 сентября 2007 г. Получено 27 августа 2007 г.
  39. ^ "Learn Network Inspire" (PDF) . AMD. Архивировано из оригинала (PDF) 10 апреля 2012 г. Получено 30 декабря 2012 г.
  40. ^ "DirectX 10.1 не требует нового графического процессора". Windows Vista: полное руководство. 5 марта 2008 г. Архивировано из оригинала 29 октября 2007 г. Получено 5 марта 2008 г.
  41. ^ "Что дальше для DirectX? Обзор DirectX 11 — Обзор DirectX 11". Elite Bastards. 1 сентября 2008 г. Архивировано из оригинала 4 сентября 2008 г. Получено 4 сентября 2008 г.
  42. ^ "DirectX 11: Взгляд на то, что нас ждет". bit-tech.net. 17 сентября 2008 г.
  43. Дата выпуска Windows 7 и D3D 11 Архивировано 2011-10-09 на Wayback Machine
  44. ^ "Блоги MSDN". msdn.com . Microsoft. 6 августа 2021 г.
  45. ^ "Загрузить DirectX Software Development Kit из официального центра загрузок Microsoft". microsoft.com . Microsoft.
  46. ^ "Windows 8 Developer Preview Guide" (PDF) . Архивировано из оригинала (PDF) 7 октября 2011 г.
  47. ^ "Обновление платформы для Windows 7 (Windows)". Msdn.microsoft.com . Получено 9 августа 2014 г. .
  48. ^ Pooya Eimandar (2013). DirectX 11.1 Программирование игр . Packt Publishing Ltd. стр. 45. ISBN 978-1-84969-481-0.
  49. ^ ab "Как установить последнюю версию DirectX". Поддержка Microsoft . Microsoft . Получено 27 октября 2017 г. .
  50. ^ «Обзор реализаций геометрии». microsoft.com . Microsoft. 19 августа 2020 г.
  51. ^ Беннетт Сорбо (26 июня 2013 г.). "Что нового в Direct3D 11.2". Channel9 - BUILD 2013 . около 20:00.
  52. ^ "Microsoft официально отказывается от Mantle". semiaccurate.com . 16 октября 2013 г.
  53. ^ Сегмент Криса Тектора с http://channel9.msdn.com/Blogs/DirectX-Developer-Blog/DirectX-Evolving-Microsoft-s-Graphics-Platform (начинается примерно с 18-й минуты)
  54. ^ Смит, Райан (18 сентября 2014 г.). "Microsoft Details Direct3D 11.3 & 12 New Rendering Features". AnandTech . Получено 6 ноября 2014 г. .
  55. ^ МакМаллен, Макс (2 апреля 2014 г.). "Предварительный просмотр API Direct3D 12". Channel 9 . Microsoft .
  56. ^ Мур, Бо (5 мая 2015 г.). «DirectX 12 сможет использовать ваш интегрированный графический процессор для повышения производительности». PC Gamer . Future US . Получено 22 августа 2015 г.
  57. ^ Мишо, Скотт (4 мая 2015 г.). «BUILD 2015: The Final DirectX 12 Reveal». PC Perspective . Архивировано из оригинала 5 сентября 2015 г. Получено 22 августа 2015 г.
  58. ^ Лэнгли, Брайан (29 июля 2015 г.). «Windows 10 и DirectX 12 выпущены!». Блог разработчиков MSDN DirectX . Microsoft. Архивировано из оригинала 2 августа 2015 г. Получено 22 августа 2015 г.
  59. ^ Йенг, Эндрю (30 апреля 2015 г.). «DirectX 12 Multiadapter: Lighting up dormant silicon and making it work for you». Блог разработчиков MSDN DirectX . Microsoft. Архивировано из оригинала 20 августа 2015 г. Получено 22 августа 2015 г.
  60. ^ Райан Смит. «AnandTech — Microsoft анонсирует DirectX 12: низкоуровневое графическое программирование приходит в DirectX». anandtech.com .
  61. ^ Йенг, Эндрю (13 августа 2014 г.). «DirectX 12 – Высокая производительность и высокая экономия энергии». Блог разработчиков DirectX . Microsoft . Архивировано из оригинала 13 августа 2014 г. Получено 6 ноября 2014 г.
  62. ^ Лауритцен, Эндрю (11 августа 2014 г.). «SIGGRAPH 2014: DirectX 12 на Intel». Developer Zone . Intel .
  63. ^ Уолтон, Марк (19 августа 2015 г.). «DirectX 12 протестирован: ранняя победа AMD и разочарование Nvidia». Ars Technica UK . Получено 19 августа 2015 г.
  64. ^ "Глава Xbox One предупреждает геймеров не ожидать кардинальных улучшений от DirectX 12 - ExtremeTech". ExtremeTech . Получено 30 сентября 2014 г.
  65. ^ «Анонсируем Microsoft DirectX Raytracing!». Microsoft. 19 марта 2018 г.
  66. ^ "Microsoft портирует DirectX 12 на Windows 7, давая некоторым старым играм для ПК прирост производительности". PCWorld . 13 марта 2019 г. Получено 17 апреля 2019 г.
  67. ^ "Анонс DirectX 12 Ultimate". Microsoft . 19 марта 2020 г. . Получено 20 марта 2020 г. .
  68. ^ Керр, Крис (20 марта 2020 г.). «Microsoft запускает DirectX 12 Ultimate для поддержки графики следующего поколения». Gamasutra . Получено 20 марта 2020 г. .
  69. ^ Чен, Рэймонд (2006). «Этимология и история». The Old New Thing (1-е изд.). Pearson Education. стр. 330. ISBN 0-321-44030-7.
  70. ^ "Что случилось с DirectX 4? - The Old New Thing - Главная страница сайта - Блоги MSDN". Blogs.msdn.com. 22 января 2004 г. Получено 30 декабря 2012 г.
  71. ^ "Microsoft Ships Final Release of DirectX 6.0". Microsoft.com . 7 августа 1998 г. Архивировано из оригинала 26 августа 2015 г. Получено 19 июля 2019 г.
  72. ^ "Microsoft Ships DirectX 6.1". Microsoft.com . 3 февраля 1999 г. Архивировано из оригинала 26 августа 2015 г. Получено 19 июля 2019 г.
  73. ^ "Microsoft DirectX – Часто задаваемые вопросы". ActiveWin.com . Архивировано из оригинала 10 февраля 2003 г. Получено 30 августа 2019 г.
  74. ^ "Microsoft Ships Final Release of DirectX 7.0". Microsoft.com . 22 сентября 1999 г. Архивировано из оригинала 19 июля 2019 г. Получено 19 июля 2019 г.
  75. Пол Терротт (21 сентября 1999 г.). «Microsoft выпускает DirectX 7.0». ITProToday . Архивировано из оригинала 17 апреля 2019 г. . Получено 19 июля 2019 г. .
  76. ^ Милевчик, Майкл. «DirectX 7.0 – Nachbrenner für Spiele». Стажер ПК . 12/1999: 124–125.
  77. ^ "Центр загрузки: DirectX / Версия - 7.0a". Microsoft.com . Архивировано из оригинала 8 апреля 2000 г. Получено 20 июля 2019 г.
  78. Maarten Goldstein (18 декабря 1999 г.). «DirectX 7A released». Shacknews . Архивировано из оригинала 20 июля 2019 г. . Получено 20 июля 2019 г. .
  79. ^ Пол Терротт (14 сентября 2000 г.). «Обзор Windows Millennium Edition (Windows Me)». ITProToday . Архивировано из оригинала 13 июня 2018 г. Получено 21 июля 2019 г.
  80. ^ Admin (10 ноября 2000 г.). "DirectX 8 просочился". Geek.com . Архивировано из оригинала 12 июля 2016 г. . Получено 20 июля 2019 г. .
  81. ^ "DirectX 8.0a Redist". Microsoft.com . 24 января 2001 г. Архивировано из оригинала 31 марта 2001 г. Получено 20 июля 2019 г.
  82. ^ Милевчик, Майкл (2001). «Brandaktuell – Новый DirectX 8.0». Windows техническая . 2001 (2). Мюнхен: MEK3 Verlag: 56-59.
  83. ^ "Загрузить веб-установщик DirectX End-User Runtime из официального центра загрузки Microsoft". microsoft.com . Microsoft.
  84. ^ "Загрузить DirectX End-User Runtimes (июнь 2010 г.) из официального центра загрузки Microsoft". microsoft.com . Microsoft.
  85. ^ «Отчет: Нет DirectX 10 для Windows XP». GameDeveloper . 30 мая 2006 г. Получено 23 декабря 2021 г.
  86. ^ "Microsoft обновляет Windows Vista с помощью DirectX 11". pcgameshardware.com . 15 сентября 2009 г. Архивировано из оригинала 31 марта 2016 г. Получено 15 сентября 2009 г.
  87. ^ "Обновление платформы для Windows 7 SP1 и Windows Server 2008 R2 SP1". Служба поддержки Microsoft . Microsoft. 27 февраля 2013 г. Архивировано из оригинала 7 мая 2019 г. Получено 7 мая 2019 г.
  88. ^ «Что нового в Windows 10, сборка 15063 — приложения UWP». 20 октября 2022 г.
  89. ^ "Анонс новых функций DirectX 12". 7 ноября 2017 г.
  90. ^ "Галерея NuGet | Microsoft.Direct3D.D3D12On7 1.1.0".
  91. ^ "DirectX-Specs".
  92. ^ «DirectX Raytracing и обновление Windows 10 October 2018». 2 октября 2018 г.
  93. ^ «Переменная скорость затенения: скальпель в мире кувалд». 18 марта 2019 г.
  94. ^ «Динамическая частота обновления — получите лучшее из обоих миров». 28 июня 2021 г.
  95. ^ "WSL Graphics Architecture". X.Org Developers Conference 2020. Архивировано из оригинала 8 октября 2021 г. Получено 8 октября 2021 г.
  96. ^ "DirectX и Windows XP". Архивировано из оригинала 18 января 2008 года.
  97. ^ «Какая версия DirectX установлена ​​на вашем ПК?». support.microsoft.com . Получено 30 сентября 2020 г. .
  98. ^ MSN. "Минимальные требования DDI". Microsoft . Получено 2 августа 2012 г. .
  99. ^ "SharpDX - Managed DirectX". Архивировано из оригинала 16 января 2023 г. Получено 30 сентября 2014 г.
  100. ^ "sharpdx/SharpDX". GitHub . Получено 30 сентября 2014 г. .

Внешние ссылки