Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - D3d9 с принудительной VSync и AF

Ответить
Настройки темы
C/C++ - D3d9 с принудительной VSync и AF

Новый участник


Сообщения: 42
Благодарности: 4

Профиль | Отправить PM | Цитировать


Изменения
Автор: Mitradis
Дата: 02-10-2019
Решил запостить в языки т.к. это полностью связано с плюсами, хотя я сам их не знаю и ищу готовое решение (или код).

Суть проблемы: не все старые игры (до ~2010) имеют vsync в настройках, а еще меньше имеют анизотропную фильтрацию текстур.

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

На основе таких вещей как ENB (где есть файл d3d9.dll который "перехватывает" игру) можно включить в играх как VSync так и AF, предварительно выключив все эффекты в ЕНБ (т.к. они сделаны под конкретные игры и будут артефакты). Так вот. Хотелось бы иметь точно такую же d3d9.dll но чисто с функцией форсирования VSync и AF и ВСЕ. Т.е. чистую dll-ку без функций которые могут вызвать проблемы. По запросу в гугле "d3d9 github" есть разные выдачи, но сложно понять что-то.

Может кто-то уже задавался этим вопросом и нашел такую вещь, или может кого-то вдохновит мой поиск и он сделает такую довольно простую вещь (я уверен для профи написать такой файл дело пары часов). Если вы еще не до конца вдохновились этой идеей то я предлагаю вам форсировать AF через драйвер и запустить старые игры, вы будете приятно удивлены четкость, а не мылом. Это относится как к 3D FPS так и 3D RTS (да, в стратегиях тоже в мыло вдалеке).

VSync нужен чтобы фпс не улетал в 1000 единиц в секунду в играх где его нет (например к ним относится даже UT2004 в оконном режиме).

Многие старые игры работают не на DX9, а на DX8, но для этого есть уже вот это:
Скрытый текст
https://github.com/crosire/d3d8to9/releases


Я все же надеюсь привлечь к этому внимание, т.к. уверен это нужно всем.

Давайте я для примера приведу пару картинок:

AF форсируется через енб. Это стратегия, Warhammer 40k.

Отправлено: 19:40, 23-04-2019

 

Новый участник


Сообщения: 42
Благодарности: 4

Профиль | Отправить PM | Цитировать


я вот написал тут тоже:
https://github.com/crosire/d3d8to9/issues/97
но пока ответа по AF нет. Хотя Vsync уже хорошо, но правда только для DX8.

Может кто-то знает как добавить туда AF? Или если кому это интересно поддержите тему по ссылке комментариями, если будет спрос может автор и сделает AF.

Отправлено: 19:41, 23-04-2019 | #2



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

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


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Так вроде бы вот такое вот есть:

DxWrapper
Basic Configuration for the DxWrapper
Compatible Games

Цитата:
AnisotropicFiltering

This will force the built-in Direct3D9 Anisotropic Filtering to be enabled. Currently it does not modify the actual texture filtering so it will have little effect on the actual game visuals. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. 1 = highest your video card can support. 2, 4, 8, or 16 = specific AF settings you want to configure.

AntiAliasing

This will force the built-in Direct3D9 AntiAliasing to be enabled. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. This can be set to 0 for off or 1 for on.

Note: this can cause unwanted artifacts or missing surfaces on some games that don't support AntiAliasing.

EnableVSync

This will force v-sync to be enabled. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. This can be set to 0 for off or 1 for on.

EnableWindowMode

This will force the game into windowed. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. This can be set to 0 for off or 1 for on.

Note: this option does not work on all games, specifically some games made using DirectDraw have issues with this mode.

ForceVsyncMode

This will force the v-sync mode to be enabled or disabled based on the EnableVSync option. If EnableVSync is enabled then it will force v-sync one mode. If EnableVSync is disaled it will force v-sync off. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. This can be set to 0 for off or 1 for on.

FullscreenWindowMode

This will force the game into fullscreen windowed mode. This requires either the game to use Direct3D9 or for the Dd7to9 or D3d8to9 options to be enabled. This can be set to 0 for off or 1 for on.

WindowModeBorder

This will enable the windows border when forcing windowed mode. This requires the EnableWindowMode option to be enabled. This can be set to 0 for off or 1 for on.

Последний раз редактировалось mp091, 15-12-2020 в 16:09.


Отправлено: 15:43, 15-12-2020 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - D3d9 с принудительной VSync и AF

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VSync - как включить для любых полноэкранных приложений? OvermanDigital Ноутбуки 0 22-08-2012 22:40
d3d9.dll Valades Автоматическая установка Windows 2000/XP/2003 2 30-10-2011 08:01
GTX295. Не работает VSync в некоторых 2D-играх silent_1991 Видеокарты 1 27-03-2010 11:59
LCD-монитор и vsync Diaser Хочу все знать 3 08-01-2009 14:21
Проблема с принудительной сменой пароля пользователя в домене 2003 rer Microsoft Windows NT/2000/2003 22 03-11-2008 11:20




 
Переход