dll dxgi dll что это

dxgi.dll

По вопросу ошибки с файлом dxgi.dll в техническую поддержку чаще всего обращаются пользователи-геймеры из числа фанатов популярного сетевого шутера от первого лица cs go. Однако данная ошибка напрямую не связана с указанной игрой, потому что файл dxgi.dll не является собственно ее компонентом, а относится к числе динамически подключаемых библиотек, входящих в пакет DirectX — приложения (правильнее сказать «набора API»), необходимого в том числе и для адекватной работы многих игровых приложений в Windows.

Если dxgi.dll был поврежден, удален либо файл не был найден, отказать могут любые приложения, обращающиеся к данному файлу за частью кода. (В этом смысл «динамически подключаемых библиотек»: они служат хранилищами компонентов, которые могут использовать различные программы. Тем самым экономится время при разработке последних и ресурсы системы в дальнейшем, при их эксплуатации.) Что делать, если имеет место ошибка с описываемым файлом? Рассмотрим два ключевых варианта.

Исправление ошибки dxgi.dll

В первом случае необходимо скачать актуальную версию DirectX, удалить предыдущую и установить новую, следя за тем, чтобы в процессе установки не было сбоев/ошибок. После этого запустить давшее сбой приложение для проверки результата.

Имеет смысл вместе с переустановкой DirectX выполнить и переустановку давшего сбой приложения. Подобный подход повышает шансы на успех.

Отметим, что переустановка материнского пакета является наиболее правильным решением. Если оно однако не помогло, Вы можете скачать dxgi.dll для windows 7/8/10 на нашем сайте. После скачивания файла Вы, без сомнения, легко установите его в системе и вернете работоспособность приложений.

Как установить DLL файл вы можете прочитать на страницы, в которой максимально подробно описан данный процесс.

Источник

Руководство по устранению ошибок поиска библиотеки Dxgi.dll

Есть несколько способов, которыми сообщения об ошибках dxgi.dll могут быть сформулированы в зависимости от причины проблемы. Вот некоторые распространенные ошибки dxgi.dll:

Сообщения об ошибках Dxgi.dll могут появляться при использовании или установке определенных программ, при запуске или завершении работы Windows, или даже при установке Windows. Некоторые ошибки dxgi.dll видны во время игры или попытки играть в определенные видеоигры.

Отмечание того, в какой момент появляется ошибка dxgi.dll, является важной информацией, которая будет полезна при устранении неполадок.

Сообщение об ошибке dxgi.dll может относиться к любой программе или системе, которая может использовать файл в любой из операционных систем Microsoft, включая Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP и Windows 2000.

Как исправить ошибку Dxgi.dll

Не загружайте dxgi.dll со сторонних сайтов. Есть много причин, почему скачивание DLL-файла – плохая идея. Если вам требуется копия файла dxgi.dll, лучше всего получить её из оригинального, «законного» источника.

Запустите Windows в безопасном режиме, чтобы выполнить любой из следующих шагов, если вы не можете получить обычный доступ к Windows из-за ошибки dxgi.dll.

Восстановление удаленной копии dxgi.dll с помощью программы восстановления файлов – это разумная идея, только если вы уверены, что удалили файл самостоятельно и что он работал должным образом до того, как вы это сделали.

Сканирование всего компьютера на наличие вирусов и других вредоносных программ. Некоторые ошибки dxgi.dll могут быть связаны с неким заражением вашего компьютера вредоносным ПО, которое повредило файл DLL. Возможно даже, что ошибка dxgi.dll связана с враждебной программой, маскирующейся под данный файл.

Выполните команду sfc/scannow, чтобы заменить отсутствующую или поврежденную копию файла dxgi.dll. К счастью, файл dxgi.dll предоставляется Microsoft, по крайней мере, в некоторых версиях Windows, поэтому инструмент проверки системных файлов должен восстановить его.

Это наиболее вероятное решение для отсутствующего или не найденного файла dxgi.dll. Приложите все усилия, чтобы завершить этот шаг, убедившись, что ваш компьютер не заражен вредоносным ПО.

Используйте «Восстановление системы», чтобы отменить последние системные изменения. Если вы подозреваете, что ошибка dxgi.dll была вызвана изменением, внесенным в важный файл или конфигурацию, и проверка системных файлов не помогла, восстановление системы должно решить проблему.

Переустановите программу, которая использует файл dxgi.dll. Если ошибка dxgi.dll DLL возникает при использовании конкретной программы, переустановка программы должна заменить файл. Этот шаг наиболее полезен для замены файлов DLL, которые не поставляются Microsoft, но может помочь с проблемой dxgi.dll, если эта программа также предоставляет копию файла и предыдущие идеи по устранению неполадок не увенчались успехом.

Скопируйте файл dxgi.dll из резервной папки. Windows должна иметь резервную копию dxgi.dll как минимум в одной или двух папках, если вы используете 64-разрядную версию Windows:

Супер простой способ найти другую копию dxgi.dll – выполнить поиск файла на вашем компьютере. Вы должны найти места указанные выше; просто скопируйте файл из папки, которую вы видите выше, и вставьте её в другую папку выше, которая соответствует первой папке.

Удалите файл dxgi.dll, если ошибка DLL связана с видеоигрой, но удаляйте только файл DLL, если он находится в папке с игрой.

Dxgi.dll является важным файлом DLL, когда он находится в правильной папке. Однако, некоторые видеоигры хранят копию в своей собственной папке в каталоге установки игры. Если у вас есть файл dxgi.dll в папке установки вашей игры, удалите его оттуда, чтобы увидеть, исправляет ли это ошибку DLL (не удаляйте файлы DLL из папок Windows, указанных выше). Возможно, вам придется повторить шаг 5 после этого.

Обновите драйверы для аппаратных устройств, которые могут быть связаны с dxgi.dll. Например, если вы получаете сообщение об ошибке «Файл dxgi.dll отсутствует» во время игры, попробуйте обновить драйверы для вашей видеокарты. Файл dxgi.dll может или не может быть связан с видеокартами – это только пример. Ключевым моментом здесь является очень пристальное внимание к контексту ошибки и соответствующее устранение неполадок.

Откатите драйвер до ранее установленной версии, если ошибки dxgi.dll начались после обновления драйвера конкретного аппаратного устройства.

Установите все доступные обновления Windows. Многие пакеты обновления и другие исправления заменяют или обновляют некоторые из сотен распределенных файлов DLL Microsoft на вашем компьютере. Файл dxgi.dll может быть включен в одно из этих обновлений.

Восстановите вашу установку Windows. Если приведенные выше рекомендации по устранению неполадок с отдельным файлом dxgi.dll не увенчались успехом, при выполнении установки обновления, восстановления при загрузке или восстановлении (в зависимости от вашей версии Windows) следует восстановить все рабочие файлы Windows DLL до их рабочих версий.

Используйте очиститель реестра, чтобы исправить проблемы dxgi.dll в реестре. Бесплатная программа очистки реестра может помочь, удалив недействительные записи реестра относительно dxgi.dll, которые могут вызывать ошибку DLL.

Я редко рекомендую использовать очистители реестра. Я включил эту опцию здесь, на случай, если она окажется полезной, и в этом случае вы можете избежать последней возможности ниже.

Источник

В Windows 11/10/7 при запуске программ или игр может возникнуть ошибка, что «Точка входа в процедуру CreateDXGIFactory2 не найдена в библиотеке DLL dxgi.dll» или «Запуск программы невозможен, так как на компьютере отсутствует dxgi.dll«.

Читайте также:  руки вверх первая песня в каком году вышла первая песня

Dxgi.dll относится к компоненту DirectX и отвечает за работу графики. Является предустановленным в системах Windows 11/10, но не в Windows 7. Сама библиотека Dxgi.dll находиться в папках syswow64 и system32, что означает, библиотека dxgi.dll имеет две разрядности: x32 и x64.

Виновником, когда библиотека dxgi.dll не найдена или отсутствует может быть повреждение самого файла, реестра или данного файла просто нет в системе и программа, игра не может обработать нужные процессы для запуска.

Скачать dxgi.dll и исправить ошибку в Windows

В данной инструкции разберем способы, как исправить ошибку dxgi.dll, и где скачать оригинальный файл dxgi.dll для Windows 11/10/7.

1. Установить DirectX

Так как библиотека dxgi.dll относиться к компоненту DirectX, то логичным будет его установить или переустановить для Windows.

2. Установка Visual C++

Для правильной взаимосвязи компонентов dxgi.dll, иногда нужен Visual C ++ последней версии, но перед этим вы должны удалить текущие установленные.

3. Проверка целостности файлов

Так как в Windows 11/10 библиотека dxgi.dll предустановлена, то она могла повредится. Проверим и восстановим системные файлы, если они повреждены.

Запустите командную строку или powershell от имени администратора и введите ниже команды по очереди, дожидаясь окончание процесса каждой.

4. Скачать оригинальный dxgi.dll

Если вам нужно скачать чисто сам файл dxgi.dll, чтобы его закинуть к себе на компьютер, то это можно сделать при помощи сервиса winbindex, который скачивает оригинальные файлы при помощи хэша манифестов обновлений.

Источник

Как обновить, скачать и исправить Dxgi.dll

Последнее обновление: 07/01/2021 [Время, требуемое для чтения: 3,5 мин.]

Файл dxgi.dll, также известный как файл DirectX Graphics Infrastructure, был создан компанией Microsoft для разработки Microsoft® Windows® Operating System. Файлы DLL относятся к категории типов файлов Win32 DLL (Библиотека динамической компоновки).

Первый выпуск файла dxgi.dll на платформе Windows Vista состоялся 11/08/2006 для Windows Vista. Последним обновлением версии [v10.0.16299.98 (WinBuild.160101.0800)] для Microsoft Office Access 2010 является 14, выпущенное 07/04/2011. Файл dxgi.dll включен в пакет ПО в Windows 10, Windows 8.1 и Windows 8.

Ниже приведены исчерпывающие сведения о файле, инструкции для простого устранения неполадок, возникших с файлом DLL, и список бесплатных загрузок dxgi.dll для каждой из имеющихся версий файла.

Рекомендуемая загрузка: исправить ошибки реестра в WinThruster, связанные с dxgi.dll и (или) Microsoft Office Access 2010.

Совместимость с Windows 10, 8, 7, Vista, XP и 2000

Средняя оценка пользователей

Обзор файла

Общие сведения ✻
Имя файла: dxgi.dll
Расширение файла: расширение DLL
Описание: DirectX Graphics Infrastructure
Тип объектного файла: Dynamic link library
Файловая операционная система: Windows NT 32-bit
Тип MIME: application/octet-stream
Пользовательский рейтинг популярности:
Сведения о разработчике и ПО
Разработчик ПО: Microsoft Corporation
Программа: Microsoft® Windows® Operating System
Авторское право: © Microsoft Corporation. All rights reserved.
Сведения о файле
Набор символов: Unicode
Код языка: English (U.S.)
Флаги файлов: (none)
Маска флагов файлов: 0x003f
Точка входа: 0x280b0
Размер кода: 451072
Информация о файле Описание
Размер файла: 577 kB
Дата и время изменения файла: 2020:03:04 14:55:40+00:00
Тип файла: Win32 DLL
Тип MIME: application/octet-stream
Предупреждение! Possibly corrupt Version resource
Тип компьютера: Intel 386 or later, and compatibles
Метка времени: 2088:10:01 16:43:31+00:00
Тип PE: PE32
Версия компоновщика: 14.10
Размер кода: 451072
Размер инициализированных данных: 133120
Размер неинициализированных данных: 0
Точка входа: 0x280b0
Версия ОС: 10.0
Версия образа: 10.0
Версия подсистемы: 10.0
Подсистема: Windows command line
Номер версии файла: 10.0.16299.98
Номер версии продукта: 10.0.16299.98
Маска флагов файлов: 0x003f
Флаги файлов: (none)
Файловая ОС: Windows NT 32-bit
Тип объектного файла: Dynamic link library
Подтип файла: 0
Код языка: English (U.S.)
Набор символов: Unicode
Наименование компании: Microsoft Corporation
Описание файла: DirectX Graphics Infrastructure
Версия файла: 10.0.16299.98 (WinBuild.160101.0800)
Внутреннее имя: dxgi.dll
Авторское право: © Microsoft Corporation. All rights reserved.
Название продукта: Microsoft® Windows® Operating System
Версия продукта: 10.0.16299.98

✻ Фрагменты данных файлов предоставлены участником Exiftool (Phil Harvey) и распространяются под лицензией Perl Artistic.

Что такое сообщения об ошибках dxgi.dll?

Ошибки библиотеки динамической компоновки dxgi.dll

Файл dxgi.dll считается разновидностью DLL-файла. DLL-файлы, такие как dxgi.dll, по сути являются справочником, хранящим информацию и инструкции для исполняемых файлов (EXE-файлов), например HelpPane.exe. Данные файлы были созданы для того, чтобы различные программы (например, Microsoft Office Access 2010) имели общий доступ к файлу dxgi.dll для более эффективного распределения памяти, что в свою очередь способствует повышению быстродействия компьютера.

К сожалению, то, что делает файлы DLL настолько удобными и эффективными, также делает их крайне уязвимыми к различного рода проблемам. Если что-то происходит с общим файлом DLL, то он либо пропадает, либо каким-то образом повреждается, вследствие чего может возникать сообщение об ошибке выполнения. Термин «выполнение» говорит сам за себя; имеется в виду, что данные ошибки возникают в момент, когда происходит попытка загрузки файла dxgi.dll — либо при запуске приложения Microsoft Office Access 2010, либо, в некоторых случаях, во время его работы. К числу наиболее распространенных ошибок dxgi.dll относятся:

Файл dxgi.dll может отсутствовать из-за случайного удаления, быть удаленным другой программой как общий файл (общий с Microsoft Office Access 2010) или быть удаленным в результате заражения вредоносным программным обеспечением. Кроме того, повреждение файла dxgi.dll может быть вызвано отключением питания при загрузке Microsoft Office Access 2010, сбоем системы при загрузке dxgi.dll, наличием плохих секторов на запоминающем устройстве (обычно это основной жесткий диск) или, как нередко бывает, заражением вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.

Как исправить ошибки dxgi.dll — 3-шаговое руководство (время выполнения:

Если вы столкнулись с одним из вышеуказанных сообщений об ошибке, выполните следующие действия по устранению неполадок, чтобы решить проблему dxgi.dll. Эти шаги по устранению неполадок перечислены в рекомендуемом порядке выполнения.

Шаг 1. Восстановите компьютер до последней точки восстановления, «моментального снимка» или образа резервной копии, которые предшествуют появлению ошибки.

Чтобы начать восстановление системы (Windows XP, Vista, 7, 8 и 10):

Если на этапе 1 не удается устранить ошибку dxgi.dll, перейдите к шагу 2 ниже.

Шаг 2. Если вы недавно установили приложение Microsoft Office Access 2010 (или схожее программное обеспечение), удалите его, затем попробуйте переустановить Microsoft Office Access 2010.

Чтобы удалить программное обеспечение Microsoft Office Access 2010, выполните следующие инструкции (Windows XP, Vista, 7, 8 и 10):

После полного удаления приложения следует перезагрузить ПК и заново установить Microsoft Office Access 2010.

Если на этапе 2 также не удается устранить ошибку dxgi.dll, перейдите к шагу 3 ниже.

Microsoft Office Access 2010 14

Шаг 3. Выполните обновление Windows.

Когда первые два шага не устранили проблему, целесообразно запустить Центр обновления Windows. Во многих случаях возникновение сообщений об ошибках dxgi.dll может быть вызвано устаревшей операционной системой Windows. Чтобы запустить Центр обновления Windows, выполните следующие простые шаги:

Если Центр обновления Windows не смог устранить сообщение об ошибке dxgi.dll, перейдите к следующему шагу. Обратите внимание, что этот последний шаг рекомендуется только для продвинутых пользователей ПК.

Если эти шаги не принесут результата: скачайте и замените файл dxgi.dll (внимание: для опытных пользователей)

Если этот последний шаг оказался безрезультативным и ошибка по-прежнему не устранена, единственно возможным вариантом остается выполнение чистой установки Windows 10.

Источник

Общие сведения о DXGI

Графическая инфраструктура Microsoft DirectX (DXGI) распознает, что некоторые части графики развиваются медленнее, чем другие. Основной целью DXGI является управление задачами низкого уровня, которые могут быть независимыми от среды DirectX Graphics. DXGI предоставляет общую платформу для будущих графических компонентов; Первый компонент, использующий версию DXGI, — это Microsoft Direct3D 10.

В предыдущих версиях Direct3D задачи низкого уровня, такие как перечисление аппаратных устройств, отображение кадров в выход, контроль гаммы и управление полноэкранным переходом были добавлены в среду выполнения Direct3D. Эти задачи теперь реализуются в DXGI.

Цель DXGI заключается в взаимодействии с драйвером режима ядра и аппаратным обеспечением системы, как показано на следующей схеме.

Приложение может напрямую обращаться к DXGI или вызывать API-интерфейсы Direct3D в D3D11 _ 1. h, D3D11. h, D3D10 _ 1. h или D3D10. h, который обрабатывает обмен данными с DXGI. Вы можете работать с DXGI напрямую, если приложению требуется перечислить устройства или управлять способом представления данных для вывода.

В этом разделе содержатся следующие подразделы.

Чтобы узнать, какие форматы поддерживаются оборудованием Direct3D 11:

Перечисление адаптеров

Адаптер представляет собой абстракцию оборудования и программного обеспечения компьютера. На компьютере обычно используется множество адаптеров. Некоторые устройства реализуются на оборудовании (например, на видеоадаптере), а некоторые — в программном обеспечении (например, средство программной прорисовки для Direct3D). Адаптеры реализуют функциональные возможности, используемые графическим приложением. На следующей диаграмме показана система с одним компьютером, двумя адаптерами (видеоадаптеры) и тремя мониторами вывода.

Если вы хотите выбрать определенные возможности видеооборудования при использовании интерфейсов API Direct3D, мы рекомендуем итеративно вызывать функцию D3D11CreateDevice или D3D11CreateDeviceAndSwapChain с каждым маркером адаптера и возможным уровнем компонентовоборудования. Эта функция будет выполнена, если уровень компонента поддерживается указанным адаптером.

Новые сведения о перечислении адаптеров для Windows 8

Если основным видеоадаптером компьютера является адаптер Microsoft Basic (адаптердеформации ), этот компьютер также имеет второй адаптер. Второй адаптер — это устройство, доступное только для просмотра, не имеющее выходных данных и для которого не возвращается _ _ устройство _ с ошибкой DXGI.

Уровень представления

Задание приложения состоит в отображении кадров и постановке DXGI для предоставления этих кадров выходным данным. Если у приложения есть два буфера, он может визуализировать один буфер, одновременно представляя еще один. Приложению может потребоваться более двух буферов в зависимости от времени, необходимого для отрисовки кадра или желаемой частоты кадров для представления. Набор созданных буферов называется цепочкой подкачки, как показано ниже.

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

Подсистема просмотра (которая часто является видеоадаптером, но может быть реализована на материнской плате) содержит графический процессор, цифровой и аналоговый конвертер (DAC) и память. Цепочка буферов выделяется в памяти, чтобы сделать презентацию очень быстрой. Подсистема отображения предоставляет данные из переднего буфера в выходные данные.

Цепочка подкачки настраивается на прорисовку в полноэкранном или оконном режиме, что позволяет избавиться от необходимости определить, является ли вывод оконным или полноэкранным. Цепь подкачки в полноэкранном режиме может оптимизировать производительность, переключив разрешение экрана.

Создание цепочки буферов

В DXGI доступны эффекты переключения DXGI_SWAP_EFFECT_DISCARD и DXGI_SWAP_EFFECT_SEQUENTIAL. начиная с Windows 8 также доступен DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL. В следующей таблице показано сопоставление Direct3D 9 и эффектов переключения DXGI.

D3D9 swap, результат Воздействие переключения на DXGI
D3DSWAPEFFECT_DISCARD DXGI_SWAP_EFFECT_DISCARD
D3DSWAPEFFECT_COPY DXGI_SWAP_EFFECT_SEQUENTIAL с 1 буфером
D3DSWAPEFFECT_FLIP DXGI_SWAP_EFFECT_SEQUENTIAL с 2 или более буферами
D3DSWAPEFFECT_FLIPEX DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL с 2 или более буферами

Буферы цепочки перекачки создаются с определенным размером и в определенном формате. Приложение задает эти значения (или можно наследовать размер из целевого окна) при запуске, а затем при необходимости может изменить их при изменении размера окна в ответ на пользовательские входные или программные события.

После создания цепочки буферов, как правило, необходимо визуализировать изображения в нее. Ниже приведен фрагмент кода, который настраивает контекст Direct3D для отрисовки в цепочку буферов. Этот код извлекает из цепочки буфера обмена буфер, создает представление с целевым объектом рендеринга из этого буфера, а затем устанавливает его на устройстве:

После того как приложение отрисовывает кадр в буфер цепочки подкачки, вызовите IDXGISwapChain1::P resent1. Затем приложение может выполнить визуализацию следующего изображения.

Отслеживание и подача цепочки буферов обмена

После подготовки изображения вызовите метод IDXGISwapChain1::P resent1 и перейдите к следующему изображению. Это область ответственности.

Если вы ранее вызывали идксгифактори:: макевиндовассоЦиатион, пользователь может нажать сочетание клавиш Alt-Enter и DXGI, чтобы перевести приложение между оконным и полноэкранным режимом. Идксгифактори:: макевиндовассоЦиатион рекомендуется, так как для пользователя настоятельно требуется стандартный механизм управления.

Хотя вам не нужно писать какой-либо код, чем описано, несколько простых шагов могут сделать приложение более быстрым. Наиболее важным моментом является изменение размера буферов цепочки буфера обмена в ответ на изменение размера окна вывода. Естественно, оптимальный маршрут приложения отвечает на _ Размер WM и вызывает идксгисвапчаин:: ресизебуфферс, передавая размер, содержащийся в параметрах сообщения. Очевидно, что приложение реагирует на пользователя, когда он перемещает границы окна, но в точности то, что обеспечивает плавное преобразование в полноэкранный режим. Окно получит _ сообщение о размере WM всякий раз, когда происходит такой переход, и вызов идксгисвапчаин:: ресизебуфферс является шансом цепочки буферов для повторного выделения памяти хранилища для оптимального представления. Именно поэтому приложение должно освобождать все ссылки на существующие буферы перед вызовом идксгисвапчаин:: ресизебуфферс.

Сбой вызова идксгисвапчаин:: ресизебуфферс в ответ на переключение в полноэкранный режим (в большинстве естественно, в ответ на размер WM _ ) может привести к исключению оптимизации зеркального отображения, где DXGI может просто поменять местами отображаемый буфер, а не копировать данные, появляющиеся в полноэкранном режиме.

Обработка изменения размера окна

В следующем примере кода показано, как вызвать ресизебуфферс из обработчика WindowProc для сообщений о _ размере WM:

Выбор выходных и размеров DXGI

По умолчанию DXGI выбирает выходные данные, которые содержат большую часть клиентской области окна. Это единственный вариант, доступный для DXGI, если он полностью отображается в ответ на нажатие клавиши ALT + ВВОД. Если приложение выбирает переход в полноэкранный режим самостоятельно, оно может вызвать идксгисвапчаин:: сетфуллскринстате и передать явное IDXGIOutput1 (или null, если приложение позволяет разрешить DXGI).

Чтобы изменить размер выходных данных в полноэкранном или оконном режиме, рекомендуется вызвать идксгисвапчаин:: ресизетаржет, так как этот метод изменяет размер целевого окна. Так как размер целевого окна изменяется, операционная система отправляет _ Размер WM, а код естественным образом вызывает идксгисвапчаин:: ресизебуфферс в ответе. Таким результатом является некоторая трата усилий на изменение размера буферов и последующее изменение размера целевого объекта.

Отладка в полноэкранном режиме

Если переключение режима разрешено, цепочка подкачки будет дополнять полноэкранный режим, когда окно вывода перекрытося другим окном. Проверка перекрытия выполняется во время IDXGISwapChain1::P resent1или в отдельном потоке, цель которого — следить за тем, что приложение перестает отвечать (и больше не вызывает IDXGISwapChain1::P resent1). Чтобы отключить возможность отдельного потока вызвать параметр, присвойте следующему разделу реестра любое ненулевое значение.

HKCU \ программное обеспечение \ Microsoft \ DXGI \ дисаблефуллскринватчдог

Уничтожение цепочки буферов

Вы не можете освободить цепочку буферов в полноэкранном режиме, так как это может привести к конфликту потоков (что приведет к созданию исключения, которое будет вызываться DXGI). Прежде чем выпустить цепочку буферов, сначала переключитесь в оконный режим (с помощью идксгисвапчаин:: сетфуллскринстате( false, null )), а затем вызовите IUnknown:: Release.

Использование повернутого монитора

Приложению не нужно беспокоиться о ориентации монитора, DXGI при необходимости поворачивает буфер цепочки подкачки во время презентации. Разумеется, это дополнительное вращение может повлиять на производительность. Для достижения оптимальной производительности выполните следующие действия в приложении.

Выполняя вращение в приложении, DXGI просто выполнит копирование вместо копирования и поворота.

среда выполнения Direct3D 11,1, которая доступна начиная с Windows 8, предоставляет цепочку перелистывания моделей (то есть цепочку подкачки с _ _ _ перелистыванием _ последовательного значения, заданной в элементе SwapEffect _ _ цепочки _ DESC1 dxgi. Чтобы максимально увеличить возможности оптимизации представления в цепочке перелистывания моделей, рекомендуется сделать приложения ориентированными на содержимое, чтобы оно соответствовало определенному выходу, на котором находится содержимое, когда содержимое полностью занимает выходные данные. Дополнительные сведения о цепочках перестановки перелистывания моделей и их преимуществах см. в разделе модель перелистывания DXGI.

Переключение режимов

Цепочка подкачки DXGI может изменить режим отображения выходных данных при выполнении полноэкранного перехода. Чтобы включить автоматическое изменение режима экрана, необходимо указать в описании цепочки подкачки _ _ _ _ _ _ переключатель режим разрешения цепочки для переключения режима ожидания. При автоматическом изменении режима показа DXGI выберет самый небольшой режим (размер и разрешение не изменятся, а глубина цвета может быть изменена). Изменение размера буферов цепочки подкачки не приведет к переключению в режим. Цепочка обмена делает неявным обещанием, что при выборе заднего буфера, который точно соответствует режиму отображения, поддерживаемому целевым выходом, то при входе в полноэкранный режим будет переключен на этот режим отображения. Следовательно, выберите режим экрана, выбрав размер и формат заднего буфера.

Советы по повышению производительности в полноэкранном режиме

При вызове IDXGISwapChain1::P resent1 в полноэкранном приложении цепочка обмена переворачивается (а не блитс) содержимое заднего буфера в передний буфер. Для этого требуется, чтобы цепочка буферов была создана с помощью перечисленного режима просмотра (указанного в _ _ цепочке _ DESC1). Если не удается перечислить режимы дисплея или неправильно указать режим экрана в описании, то цепочка буфера обмена может выполнить перенаправление на блок-блокировку (BitBlt). BitBlt вызывает дополнительную растягивание, а также увеличение использования видеопамяти и трудно обнаружить. Чтобы избежать этой проблемы, перечислите режимы экрана и инициализируйте Описание цепочки буфера обмена, прежде чем создавать цепочку буферов. Это обеспечит максимальную производительность при зеркальном отображении в полноэкранном режиме и позволяет избежать дополнительной нагрузки на память.

Вопросы многопоточности

При использовании DXGI в приложении с несколькими потоками необходимо избегать создания взаимоблокировок, в которых два разных потока ожидают завершения друг друга. Это может произойти в двух ситуациях.

Будьте внимательны, чтобы поток передачи сообщений не ждал в потоке отрисовки при использовании цепочек подкачки в полноэкранном режиме. Например, вызов IDXGISwapChain1::P resent1 (из потока прорисовки) может привести к тому, что поток обработки сообщений будет ожидать поток насоса. Если происходит изменение режима, этот сценарий возможен, если Present1 вызывает:: SetWindowPos () или:: сетвиндовстиле () и любой из этих методов вызывает:: SendMessage (). В этом сценарии, если поток приема сообщений имеет критически важный раздел, который защищает его или если поток прорисовки заблокирован, то эти два потока будут взаимоблокироваться.

Дополнительные сведения об использовании DXGI с несколькими потоками см. в разделе многопоточность и DXGI.

Ответы DXGI из DLLMain

Поскольку функция DllMain не может гарантировать порядок загрузки и выгрузки библиотек DLL, рекомендуется, чтобы функция DllMain приложения не вызывала функции или методы Direct3D или DXGI, включая функции или методы, которые создают или освобождают объекты. Если функция DllMain приложения вызывает конкретный компонент, этот компонент может вызвать другую библиотеку DLL, которая отсутствует в операционной системе, что приводит к сбою операционной системы. Direct3D и DXGI могут загружать набор библиотек DLL, как правило, набор драйверов, которые отличаются от компьютера к компьютеру. Таким образом, даже если приложение не работает со сбоем на компьютерах разработки и тестирования, когда функция DllMain вызывает функции или методы Direct3D или DXGI, она может завершиться сбоем, если она выполняется на другом компьютере.

Чтобы предотвратить создание приложения, которое может привести к сбою операционной системы, DXGI предоставляет следующие ответы в указанных ситуациях.

Изменения DXGI 1,1

Мы добавили в DXGI 1,1 следующие функциональные возможности.

Поддержка синхронизированных общих поверхностей

Синхронизированные общие поверхности для Direct3D 10,1 и Direct3D 11 обеспечивают эффективное совместное использование поверхности чтения и записи между несколькими устройствами Direct3D (возможно совместное использование устройств Direct3D 10 и Direct3D 11). См. раздел идксгикэйедмутекс:: аккуиресинк and Идксгикэйедмутекс:: релеасесинк.

Поддержка высокого цвета

Поддерживает формат DXGI _ _ R10G10B10 _ XR _ смещения _ a2 _ UNORM.

IDXGIFactory1:: EnumAdapters1 перечисляет локальные адаптеры без подключенных мониторов или выходных данных, а также адаптеры с присоединенными выходами. Первым возвращенным адаптером будет локальный адаптер, на котором отображается основной компьютер.

Поддержка формата BGRA

_Формат DXGI _ B8G8R8A8 _ UNORM и DXGI _ _ B8G8R8A8 _ UNORM _ sRGB, см. в разделе IDXGISurface1:: GetDC и IDXGISurface1:: релеаседк.

Изменения DXGI 1,2

Мы добавили в DXGI 1,2 следующие функциональные возможности.

Дополнительные сведения о DXGI 1,2 см. в разделе улучшения dxgi 1,2.

Источник

Читайте также:  какой объем бачка омывателя
Сказочный портал