3 простых шага по исправлению ошибок DXGIADAPTERCACHE.EXE
В вашей системе запущено много процессов, которые потребляют ресурсы процессора и памяти. Некоторые из этих процессов, кажется, являются вредоносными файлами, атакующими ваш компьютер.
Чтобы исправить критические ошибки dxgiadaptercache.exe,скачайте программу Asmwsoft PC Optimizer и установите ее на своем компьютере
1- Очистите мусорные файлы, чтобы исправить dxgiadaptercache.exe, которое перестало работать из-за ошибки.
2- Очистите реестр, чтобы исправить dxgiadaptercache.exe, которое перестало работать из-за ошибки.
3- Настройка Windows для исправления критических ошибок dxgiadaptercache.exe:
Всего голосов ( 181 ), 115 говорят, что не будут удалять, а 66 говорят, что удалят его с компьютера.
Как вы поступите с файлом dxgiadaptercache.exe?
Некоторые сообщения об ошибках, которые вы можете получить в связи с dxgiadaptercache.exe файлом
(dxgiadaptercache.exe) столкнулся с проблемой и должен быть закрыт. Просим прощения за неудобство.
(dxgiadaptercache.exe) перестал работать.
dxgiadaptercache.exe. Эта программа не отвечает.
(dxgiadaptercache.exe) — Ошибка приложения: the instruction at 0xXXXXXX referenced memory error, the memory could not be read. Нажмитие OK, чтобы завершить программу.
(dxgiadaptercache.exe) не является ошибкой действительного windows-приложения.
(dxgiadaptercache.exe) отсутствует или не обнаружен.
DXGIADAPTERCACHE.EXE
Проверьте процессы, запущенные на вашем ПК, используя базу данных онлайн-безопасности. Можно использовать любой тип сканирования для проверки вашего ПК на вирусы, трояны, шпионские и другие вредоносные программы.
процессов:
Cookies help us deliver our services. By using our services, you agree to our use of cookies.
Ошибка DXGI_ERROR_DEVICE_REMOVED: причины и решения
DXGI_ERROR_DEVICE_REMOVED — это ошибка, которая возникает при запуске или работе игр/программ, использующих ресурсы видеокарты. Пользователи отмечают, что эта ошибка может также появляться в случайные моменты при работе компьютера.
В некоторых случаях к ошибке DXGI_ERROR_DEVICE_REMOVED прилагается достаточно объемное сообщение, в котором утверждает, что видеодрайвер был обновлен либо видеокарта была отключена от системы.
Причины DXGI_ERROR_DEVICE_REMOVED
Решение DXGI_ERROR_DEVICE_REMOVED
Решение №1 Обновление DirectX
Решение №2 Отключение ShadowPlay
Владельцы видеокарт Nvidia утверждают, что им в борьбе с ошибкой помогло отключение ShadowPlay. Последний мог начать конфликтовать с запускаемой видеоигрой. Деактивировать запись игрового процесса можно через панель управления видеокарты GeForce Experience. Для большей надежности еще можно отключить такие службы, как NVIDIA Display Driver Service, NVIDIA GeForce Experience Service, NVIDIA Stereoscopic 3D Driver Service и NVIDIA Streamer Service.
Решение №3 Увеличение файла подкачки
Еще в Интернете появлялись сообщения, будто эту неполадку можно исправить, увеличив файл подкачки. Работает такое решение не для всех, но попытаться стоит. Увеличить файл подкачки можно следующим образом (на Windows 10):
Запустите нужную вам игрушку и посмотрите, покажется ли ошибка DXGI_ERROR_DEVICE_REMOVED на этот раз.
Решение №4 Переустановка видеодрайвера
Переустановка видеодрайвера — надежное решение для многих проблем, возникающих при запуске ресурсоемких приложений. В процесс удаления драйвера входит следующее:
Скачать DDU можно по этой ссылке на официальном сайте разработчиков. Дважды кликните ЛКМ на DDU v18.0.2.2.exe и следуйте инструкциям на экране, чтобы установить DDU. После установки загрузитесь в Windows в безопасном режиме (это важно!) и запустите Display Driver Uninstaller. Перед вами покажется следующее окошко:
Выберите производителя ГП и нажмите «Удалить и перезагрузить (настоятельно рекомендуется». Ожидайте завершения чистки компьютера, а затем установите новую версию видеодрайвера. Еще раз перезагрузите ПК и проверьте наличие DXGI_ERROR_DEVICE_REMOVED.
Решение №5 Удаление недавно установленного ПО
Перед появлением ошибки устанавливали новые программы? Именно они и могли стать катализатором появления проблемы. Избавьтесь от этого ПО и протестируйте нужную игру/приложение. Также не стоит забывать, что некоторые сторонние службы могут конфликтовать с драйвером для видеокарты.
Чтобы это проверить, вам нужно выполнить безопасную загрузку.
По входу в систему проверьте наличие DXGI_ERROR_DEVICE_REMOVED. Если ошибка исчезла, то одна из отключенных служб несомненно ее вызывала. Дальше нужно поочередно включать службы, чтобы найти «виновника».
Решение №6 Корректировка параметров электропитания
Также вы можете попробовать избавиться от этой неполадки через изменение некоторых параметров электропитания. Ничего опасного в этих действиях нет — не переживайте!
Решение №7 Проверка видеокарты и ее подключения
Ошибка DXGI_ERROR_DEVICE_REMOVED стала возникать сразу после установки видеокарты? Вам нужно проверить несколько вещей: стоит ли видеокарта в правильном PCI-E, подключено ли к ней дополнительное питание (при наличии такового), все ли нормально с самой видеокартой, например, не окислились ли ее контакты, и так далее. Если же все нормально, то попробуйте переподключить видеокарту.
Решение №8 Изменение графических настроек в игре
А не пробовали ли вы понизить графические настройки в игре? Некоторые пользователи утверждают, что им удалось избавиться от ошибки DXGI_ERROR_DEVICE_REMOVED, понизив качество графики. Сглаживание, качество теней, освещения и текстур, дальность прорисовки деталей и другое — попробуйте понизить качество самых ресурсоемких настроек и посмотрите, изменится ли ситуация.
Что за процесс
Сегодня в списке процессов и автозагрузчика, увидел такой индивидум:
pas.exe product authentication service-полное его название
Самое чтранное что гугл по запросу с название программы-ничего не выдал,как и информацию о компании.
Может кто нибудь знает что это,и если это вурус-как его удалить?
6.7K поста 10.7K подписчика
Правила сообщества
Посты с процессом ремонта создавайте в родительском сообществе pikabu.ru/community/remont.
В этом сообществе, можно выкладывать посты с просьбами о помощи в ремонте электро-техники. Цифровой, бытовой и т.п., а про ремонт картин, квартир, ванн и унитазов, писать в других сообществах 🙂
Требования к оформлению постов:
1. Максимально полное наименование устройства.
2. Какие условия привели к поломке, если таковые известны.
3. Что уже делали с устройством.
4. Какое имеется оборудование.
5. Ну и соответственно, уровень знаний.
а что, антивирус не котируется?)
Но лучше предохраняться, чем в последствии задавать вопросы «а чо это у меня на мудях выскочило? как удолить?!» =)
Попробуй просканировать grizly антивирусом. Интересно определит ли он. Соглашусь с остальными. Надо проверить где он сидит.
попробуй посмотреть в реестре в ветке автозапуска
или тот же путь только в ветке hkey_current_user
по названию ключа и прописанному в ключе пути возможно получится понять, откуда ноги растут
Мне кажется это аппендикс эпика.
Пробуй докторВ, поиск рукитов. Но не уверен, что это вирус
Так-то да
А ведь в этом комментарии много смысла.
p.s. Я чутка прифигел, когда в городе в котором родился. Увидел как лизгинку вокруг машины в людном месте танцуют. Все начинается с малого. А в итоге начнут учить как нужно жить.
#comment_219326138
Мне как всегда
Тут многие мечтают зайти в бар и сказать эту фразу, которая подчеркивает, что ты здесь свой человек.
Езжу на дряхлом эскудике. Расход масла 1л. на 1000км. Между верхней и нижней риской щупа 1,3 литра масла. Всегда меняю масло в одном сервисе. Доливаю там же. Короче, пока я подъезжаю к ним меня видно в камеры. Останавливаюсь. Выхожу, открываю капот. А сзади уже стоит человек с воронкой и кувшином с 1,3 шелл 10в40. Я киваю. Он заливает. Я отдаю деньги. Уходит. Уезжаю.
И ни каких «мне как обычно в это время».
Разбирал шкаф дедушки, нашел такие вещи
Кому интересно кто мой дед, то после распределения в институте его отправили в деревню учителем физкультуры. Он набрал ребят на факультатив по фехтованию и начал им преподавать. Из одиннадцати ребят трое стали олимпийскими чемпионами и несколько парней стали чемпионами мира и СССР.
Ай-я-я-я-я-я-яй, в 2021 эта песня неполиткорректна
Семейные отношения
Ответ на пост «Она не работает!»
Битва славян
Неоспоримый факт
Вкл-Выкл «Умной ленты»
Оказывается
О сколько нам открытий чудных.
Вот так случайно залезешь на Википедию и случайно выяснишь, что автор словаря русского языка В. И. Даль вскрывал тело Пушкина и писал протокол вскрытия.
Мем смешной, а ситуация страшная
Казак года))
Супер-мега-корпоратив
Сестра сегодня позвонила и рассказала про выгоднейшее предложение! Их компания пригласила всех сотрудников на корпоратив, особенно очень усердствует территориальный директор, который хочет воочию всех увидеть.
Всего то надо сдать 3.500 рублей с человека за аренду зала, алкоголь с собой, ресторан в городе Домодедово. На мой резонный вопрос-а, собственно, что оплачивает компания? Сестра ответила, что скорее всего будут канапе, как на прошлом корпоративе, по итогу которыми все отравились. Шикарное предложение)))
Время летит слишком быстро…
Ответ на пост «Учителя, рассказавшего о зарплате, обвиняют в экстремизме»
Я доказал, что нельзя выжить на зарплату учителя, и меня обвинили в экстремизме.
Я тот самый преподаватель, кандидат наук, который стал бороться за повышение окладов врачей и учителей. Чтобы привлечь внимание к тому, как на самом деле живут учителя, я поставил эксперимент и стал жить на одну зарплату простого кандидата наук. Отработав месяц с голосовой нагрузкой в 7 уроков в день, я получил 14.600 на руки. На питание, проживание и лечение служебной собаки МВД выделяется примерно 14.000 рублей. Как Вы видите, государство очень ценит кандидатов наук. Государство очень ценит врачей. Государство очень ценит учителей.
Есть городские учителя, у которых нет огорода, поэтому я перестал есть продукты, выращенные самостоятельно.
Чтобы не было сомнений, Прикрепляю свой расчетный листок за октябрь.
Я объявил о начале эксперимента 23 ноября. Уже на следующий день, 24 ноября, началась подготовка к обвинению в экстремизме. Меня обвинили в пропаганде фашизма за фотографию к антифашистской статье, написанной два года назад.
Повторю, на следующий день после начала эксперимента по попытке выжить на зарплату учителя, на меня поступил донос, и меня объявили экстремистом за фотографию к антифашистской статье. Статью я написал в 2020 году, когда появились люди, поддерживающие осквернение могил. Дело в том, что пока меня не было, могилу моего деда разрушили и сделали на этом месте карьер по добыче песка. Кости моих предков и сотен жителей хутора не эксгумировали и фактически выбросили на дороги. Скриншот поста
Отмечу, что уже давно действует закон, который разрешает показывать свастику, если при этом нет пропаганды фашизма. По распоряжению Путина законы изменили, и теперь людей не сажают за постер фильма «17 мгновений весны», не обвиняют в экстремизме за фотографии с Парада Победы. Не отправляют к террористам и за снимок с приветствиями фашистов или за фотографии могил, оскверненных свастиками.
Уже давно правоохранители выясняют не сам факт размещения фотографии со свастикой, а причину, по которой она размещена. Контекст. Смысл. Ведь иначе потенциальными правонарушителями становятся музеи, фронтовые фотографы, актеры, дипломаты, политики, историки, журналисты, блогеры, авторы школьных учебников, учителя!
Об этом знают все, кроме «курских борцов» с экстремизмом. Я не верю, что юрист не слышал про такое понятие как «субъективная сторона» (цель размещения фотографии). Я не верю, что они не слышали об изменения в законодательстве. Что это: профнепригодность или желание посадить человека, требующего повысить оклады? Мы можем только догадываться.
Чем опасен мой эксперимент? Почему последовала такая жесткая реакция – попытка обвинить антифашиста в пропаганде фашизма?
В Курской области на каждого учителя выделяется по 32 тысячи, а на каждого врача, кажется, по 56 тысяч. Но гарантированные оклады чаще всего меньше МРОТ. У меня оклад чуть больше 9 тысяч. Видел высказывания врачей, у которых оклад составляет 5 тысяч рублей.
Нам гарантирован только МРОТ. Все остальное – милость администрации, которая локальными актами распределяет средства так, как посчитают нужным. На вопрос к бухгалтерии «Почему так мало?», поступает однотипный ответ – «У нас директор определяет, сколько кому выдавать, а мы просто рассчитываем».
Итак, 23 ноября я начал эксперимент.
Я попытался прожить на одну зарплату, не пользуясь самостоятельно выращенными продуктами.
Как вы можете видеть по моему упитанному лицу, я не умираю с голода. Сад, огород, хозяйство и каждодневная работа помогают вкусно питаться, но вот уже покупка новых штанов становится сложностью.
Ученые считают, что одна 19-часовая ставка учителя, с учетом дополнительных обязанностей, равна 8-часовому дню. 1,3 ставки – это 4 урока ежедневно и всего 10 часов каждодневной работы.
Я отработал октябрь с фактической нагрузкой в две ставки: каждый день по 7 уроков голосовой нагрузки. С учетом дополнительных работ – 16 часов в сутки.
Учителя сильные, учителя выдержат.
Но моя зарплата за месяц составила 14.600 рублей на руки. На питание, проживание и лечение служебной собаки МВД выделяется 14.000 рублей. Государство очень ценит кандидатов наук.
Уровень абсолютной нищеты в России по данным ООН – это жизнь, когда человек каждый день тратит 5,5 долларов США. По сегодняшнему курсу это 405 рублей. У меня оставалось 480: я богаче абсолютного нищего.
Но учитель не просто выживает, он должен соответствовать определенным требованиям.
Давайте вместе считать траты учителя.
Ситуация поменялась, поэтому цифры обновились.
Я заплатил налоги – 5,1 т.р (полторы тысячи потом вернули; оказалось, они ошиблись при начислении).
Отложил деньги на оплату света и газа – это 2.300.
Потом подсчитал количество бензина, необходимого для поездки на работу. 10 километров до работы x на 22 рабочих дня. Получается, что нужно 55 литров бензина, а это 4.100 рублей. Траты выросли, так как нас вернули на очный формат работы.
Я получил 14.600, обязательных для преподавателя трат – 11.160 рублей.
Остается 3.440 рублей на месяц, чтобы жить, питаться, покупать одежду и обувь, купить мыло, шампунь, бритву и одеколон, подстричься, сходить в кино и театр, отложить деньги на летний отдых и благотворительность.
Сумма обязательных расходов составила 14.980р, и она превысила доход обычного кандидата наук, отработавшего месяц с фактической нагрузкой в две ставки (34 часа). Напомню, предельно допустимая для учителей нагрузка – 36 часов в неделю.
Педагоги знают, что это невыносимо много: люди очень быстро выгорают, начинают болеть, покидать профессию.
По подсчетам РАНХиГС в России уже не хватает 250 тысяч учителей. Правительство говорит о том, что пора завозить «гастарбайтеров» из ближневосточных стран, чтобы они работали врачами и учителями.
Правительство не хочет повышать оклады, чтобы вернуть людей в профессию.
Эксперимент показал, что в Курской области невозможно прожить на гарантированную законом зарплату обычного кандидата наук.
Я должен идти на поклон к микрофинансовым грабителям и просить денег на еду. Я должен надеяться, что в следующем месяце моя зарплата будет больше.
«Надежды юношей питают, отраду старцам придают».
Я еще не потерял надежду.
Но МВД уже объявило меня экстремистом.
Будим еб*т
Пиздец какой-то, невозможно вечером пройти по улице, кругом они. Они ведут себя как дикие животные, мусорят (идут от магазина до общаги, жрут, кидают весь мусор на землю по пути), пристают к людям, провоцируя на драку, хамят. Они ссут на деревья вдоль улицы, не стесняясь, даже стараясь поймать взгляд прохожей женщины и чуть ли не членом помахать. Их дети заполонили детские площадки и ведут себя не многим лучше родителей, какие-то зверёныши.
Страшно выходить из дома одной, постоянно кто-нибудь привяжется, а ходят они толпами. Становится страшно жить в своём родном городе.
У меня много хороших знакомых разных национальностей, хреново я относилась только к цыганам. Я осуждала тех, кто судит человека по национальному признаку. А теперь я считаю, что нужно всех «лиц без национальности» собрать и выдворить: и плохих, и хороших, пускай хорошие помогают плохим стать лучше. Дома.
Rammstein. Их шестеро. Всегда
Сказка на ночь
Дорогие друзья поддержите пожалуйста мою подругу, которая выразительно читает сказки на ночь и занимается развитием детей. Это ее третья сказка на ютуб канале, в воскресенье планируем выпустить образовательный урок для малышей
Это не ваше, у вас денег не хватит!
Мы живем в небольшом мкд на 3 подъезда, всего 36 квартир. Квартиру купил еще на этапе строительства, заехали сразу как было возможно, ремонт был от застройщиков. Первым «коренным» жителем была моя дочь, которая родилась в том же году когда мы заселились. Соседи попались замечательные и даже сейчас после 14 лет у нас есть некое единство, можно сказать даже дружба. А вот почему!
Наступил рай, я мог спокойно спать не слушая ржущих баб (самые громкие и мерзкие звуки именно от них) и не испытывать стресса выходя каждый день на разборки, так как я дядя большой, но не бессмертный. Мы с соседями стали заниматься двором, понимать, что это наша земля, это наш комфорт. Несколько лет подряд мы выигрывали конкурс на звание лучшего двора города.
Психология крабов, реально я сам не верил, но видимо режим за несколько десятков лет, просто выжег чувство собственности у людей, оскотинил их.
Со временем чуть улеглось. Да были мелкие стычки, например, если случайно (после выезда авто ворота закрываются с паузой) к нам заходят дети или мамы с детьми их никто не трогает, они играют и потом уходят. Надо сказать, что игрушки, всякие совочки и т.д. общие, летом у нас стоят палатки и/или крепости из всякой ветоши, что дети настроят. Но бывают где-то 25% «гостей» которые начинают все ломать или их мамаши начинают выгонять наших детей с детской площадки. Ну тогда все, выпроваживаешь и слышишь тоже самое, что слышал первый год после установки забора.
Общие сведения о 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.











































