URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 124554
[ Назад ]

Исходное сообщение
"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulkan"

Отправлено opennews , 16-Июн-21 11:33 
Доступен выпуск прослойки DXVK 1.9, предоставляющей реализацию DXGI (DirectX Graphics Infrastructure), Direct3D 9, 10 и 11, работающую через трансляцию вызовов в API Vulkan. Для использования DXVK  требуется наличие драйверов с поддержкой API Vulkan 1.1, таких как Mesa RADV 20.2, NVIDIA 415.22, Intel ANV 19.0 и AMDVLK...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=55341


Содержание

Сообщения в этом обсуждении
"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 11:33 
Frame rate limiter.А какая команда на переменную? Редми рекомендованный в описаннии релиза к прочтению данной опции на гитхаб так и не нашел.Чем интересно отличается ограничитель кадров в игре от ограничителя кадров в DXVK.Что лучше или быстрее.Господа эксперты?

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Kron4ek , 16-Июн-21 11:46 
Переменная DXVK_FRAME_RATE.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 11:54 
Бальшое спасибо.Сейчас проверю на радеоне.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 12:03 
Теперь можно отключить dxgi.syncInterval и dxgi.tearFree ?

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Kron4ek , 16-Июн-21 12:39 
Если ты их только для ограничения FPS использовал (vsync же), то да, можно отключить и использовать новую опцию dxgi.maxFrameRate (ну или вышеупомянутую переменную). Если ты их использовал еще и как средство от тиринга, то нет, отключать не стоит.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 17:47 
Проверил на вот этом https://stalkerportaal.ru/load/teni_chernobylja_globalnye_mo...Конфиг wine-staging-6.10 DXVK-1.9 Kernel-gentoo-5.12 (PDS-sheduler) mesa-20.2-git vulkan-1.2.180 Radeon-rx570-8G.Отключил ограничение кадров и включил ограничение в DXVK с помощью переменной ссылки на запуск. env  WINEESYNC=1 DXVK_HUD=full    DXVK_FRAME_RATE=60 wine '/mgame/Secret Trails On OGSR Engine/bin_x64/xrEngine.exe'.По ощущениям вроде как лучше отклик мыша и плавнее картинка.Всинк и композит отрублено в кде.Надо графики фреймрэта делать но я не знаю какой программой это сделать так чтоб скрины сравнения выложить сюда.Подскажите господа эксперты?  

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 18:04 
Да чуть не забыл в этой игрулене https://stalkerportaal.ru/load/teni_chernobylja_globalnye_mo... надо винетриксом установить
d3dcompiler_42
d3dcompiler_43
d3dcompiler_47
d3dx9
d3dx10_43
d3dx10
d3dx11_42
d3dx11_43
с заменой родных так как в wine функции directx 11_1 недореализованы но если на  дх 9 то это не надо и так работает так-как по умолчанию запускается на дх 9.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 20:20 
А d3dcompiler_47 разве не отломан? Его не установить. И d3dcompiler_43 вроде больше не требуется? И ты видимо забыл про d3dx9_43 который как раз был нужен (не факт что в этой игре). Вообще, насчёт d3dx9 есть сомнения. Сейчас правда dxvk ставишь и все либы эти никаким боком уже.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено DeLancre , 16-Июн-21 21:19 
> Надо графики фреймрэта делать

Mangohud умеет. Или можно логированием снять фреймтайм и нарисовать график в либроофисе/гуглодоках.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено mos87 , 16-Июн-21 13:59 
>Frame rate limiter.А какая команда на переменную?

Большинство людей выражают мысли не грамотней нейросети. Поэтому последние и процветают. Их уровня достаточно.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено ryoken , 16-Июн-21 11:40 
>> Чем интересно отличается ограничитель кадров в игре от ограничителя кадров в DXVK.

Есть мнение, что если в игре поставить лимит в 80 кадров, а в сабже - в 60, то будет таки 60 :).


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 11:50 
Значит DXVK более низкоуровневый чем игра.Это значит задержки меньше при обработке кадров на ограничение? Или это все домыслы из разряда а может быть.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено ryoken , 16-Июн-21 11:55 
> Значит DXVK более низкоуровневый чем игра.Это значит задержки меньше при обработке кадров
> на ограничение? Или это все домыслы из разряда а может быть.

Проще проделать опыт, чем воду в ступе толочь :).


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 16:58 
> Значит DXVK более низкоуровневый чем игра

Низкоуровневость здесь не при чём. Игра рендерит кадры, а DXVK, как дырка в кухонной раковине, их потребляет и отдаёт GPU. Большая часть игровой логики: физика, геймплей, сетевой код — работает на CPU, а GPU занимается только отрисовкой ("растеризацией") 3D-полигонов и их покраской шейдерами. И, скажем, физический движок может рендерить со своим FPS, отличным от частоты отрисовки кадров (которая в свою очередь может быть меньше частоты обновления монитора). Тогда красивые переливающиеся шейдеры будет работать со  всеми 120 FPS, а анимация физических объектов — лагать.

В теории, игра может сгенерировать все 120 кадров/сек. и сохранять внутри в условный буфер, а DX12 использовать как тупое средство их отправки на GPU. Если DXVK залочен на 30 FPS, а процессор генерирует 45 FPS, то получится, что треть приготовленных кадров окажется выкинута перед отдачей на GPU. Поэтому самый лучший способ ограничения FPS — тот, который предоставлен самой игрой.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 18:35 
Ухх спасибо за информацию тогда лучше в DXVK эту опцию не использовать если в игре есть ограничитель без всинка.Очень интересно хммм

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 19:11 
Вопрос по производительности в играх.Ага ну значит тогда если движок игры сам позволяет ограничить количество подготовленных кадров без всинка например то получается меньше расчетов на cpu и cpu меньше нагружен.А если он готовит кадров столько сколько позволяет мощность cpu то и cpu будет занят расчетом не нужных кадров то-есть частота монитора 60 а движок готовит 100 кадров.Тогда в теории если ограничить кадры движком игры возможно будет меньше микрофризов за счет свободных ресурсов cpu особенно если не многопоток в игре который не всегда присутствует.На мощных высокочастотных процессорах это наверное и не будет заметно если включить ограничение кадров с DXVK а вот на слабых расчет лишних кадров будет только грузить cpu и давать больше микрофризов. Так что да если игра позволяет ограничить движком без всинка опцию огранчения кадров DXVK включать вредно.Вот например игра Crysis2 у нее есть только всинк на 60 или 120 герц там эта опция очень полезна.Ну конечно если убран тиринг опцией в xorg-server (tearfree on) которая вырезает отставшие кадры плавность конечно не такая как при всинк но задержки на всинк я на пример терпеть не могу управление мышью становится как ватное.  

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 20:41 
Так неотрисованные кадры не потребляют ресурсы. Это хорошо заметно, когда игра рисует овер9999 кадров, и всё тормозит, и после включения всинка потребление падает до 1%. Обычно я полагаюсь на игровой всинк только потому, что разрабы, в теории, знают как лучше обойти тиринг в их движке. Не работает со старыми играми. Не работает с новыми видеокартами.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 20:43 
Пример игры у которой пришлось бороться с тирингом (на десятке) https://store.steampowered.com/app/294860/Valkyria_Chronicles/

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Kron4ek , 16-Июн-21 12:00 
Так и есть. В то же время если в игре поставить 60, а в DXVK - 80, то в игре все равно будет 60.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 16-Июн-21 11:57 
Попробовал пользоваться Proton. Сгенерировал новый WINEPREFIX при помощи команды winecfg. Для WINEARCH=win32. Переставил версию Windows на 2000, а в "Библиотеках" посмотрел - оказывается, уже установлено куча либ (таких как C++ рантаймы).

Пробую запустить Directx9-игру. Не запускается. Ошибку не помню, что-то про DirectX. Ставлю DirectX 9.0c. Теперь игра работает. Притом что в "ванильном" Wine работает даже без установки DirectX.

Всё норм, вот только в HUD пишет, что используется GL, а не VK.

Как же включить DXVK? В интернете пишут, что нужно установить несколько DirectX 10 и 11 библиотек, и прописать их в winecfg. Во-первых где их взять, если инсталлятор в winetricks только 9-й версии. Во-вторых, у меня же Directx9-игра, а не Directx10-игра.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Kron4ek , 16-Июн-21 12:08 
При использовании Proton вне Steam ни DXVK, ни vkd3d по умолчанию не устанавливаются, так как за их установку, а также за некоторые другие вещи, отвечает одноименный питоновский скрипт ( https://github.com/ValveSoftware/Proton/blob/proton_6.3/proton ). А когда ты используешь напрямую бинарник wine, этот питоновский скрипт не используется.

Установи DXVK в свой префикс. Можно через winetricks (winetricks dxvk), а можно и вручную ( https://github.com/doitsujin/dxvk/releases ) - как тебе удобнее.

Чтобы вручную установить, закинь dll из архива DXVK в prefixpath/drive_c/windows/system32 и в winecfg переопредели их на "Сторонняя" (native).


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 16-Июн-21 12:17 
Всё, понял, спасибо. Компилировать надо? А то у меня старая система без python3, meson и ninja

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Kron4ek , 16-Июн-21 12:23 
Если ты хочешь этот питоновский скрипт использовать, то Python 3 тебе придется установить. Впрочем, только ради DXVK тебе нет смысла его использовать, проще установить его через winetricks.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено rshadow , 16-Июн-21 13:22 
во... а говорили на опеннете экспертов нет

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 15:15 
Они больше молчат.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 16-Июн-21 17:16 
Скопировал библиотеки, куда нужно, и прописал в Библиотеки. Работает! Фреймрейт высокий.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 12:17 
Proton - это из коробки полностью готовое решение, нажал кнопку "Играть" и игра запустилась. то есть не стоило вручную создавать префикс, поскольку он создастся сам. Не стоило вручную устанавливать D3D и тем более менять версию Windows, поскольку, вероятно, именно эти ваши действия и привели к проблемам, которых, вероятно, не было если бы вы просто нажали кнопку "Играть". Единственное, что надо было сделать - в настройках Steam включить использование Steam Play для всех Windows-игр и выбрать новейший из доступных сейчас выпусков Proton.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 16-Июн-21 12:18 
Я без Стима запускаю

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Анончик , 16-Июн-21 13:44 
Иногда бывают случаи что игра не запускается по кнопке "Играть".

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 15:23 
Каждой игре можно переопределить версию протона.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 16:44 
Не поможет, если она обмазана всякими drm'ами

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 18:29 
я конечно не гуру и не суровый эксперт но могу рекомендовать Вам что в будущем такие вопросы у Вас не будут возникать если вы будете заниматься может и потихоньку использованием Gentoo Linux.По моему скромному мнению это дает возможность решать такие вопросы на лету.  

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 17-Июн-21 11:48 
Россия глазами иностранца: есть Москва, есть Санкт-Петербург, и есть Замкадье. Линукс глазами не гуру: есть Убунту, есть Генту, и есть всё остальное, о чём иностранец не знает.
Убунту для новичков. Генту для профи. Остальное вообще непонятно кому нужно.

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

Что ж, реальная картина немного другая. Убунтой пользуются не только новички. Многие довольно-таки профессиональные разработчики нашли для себя, что убунта предоставляет удобные инструменты именно для разработки. Другие дистрибутивы линукс бывают не менее удобны для начинающего пользователя. Например openSUSE и Fedora. Последняя не является глюкодромом вот уже версий 20-30. "Сырости" в ней не больше, чем в убунте, базирующейся на Debian Unstable.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 17-Июн-21 13:53 
"И есть замкадье, о котором иностранец ничего не знает". Быстрофикс

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 18-Июн-21 08:59 
>Убунту для профи. Генту для новичков.

Кто бы спросил с этим очевидным фактом.

>довольно-таки профессиональные разработчики

Профессионализм != мастерство


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Zenitur , 19-Июн-21 10:31 
>>Убунту для профи. Генту для новичков.
>Кто бы спросил с этим очевидным фактом.

Вот как в нулевые начала популяризироваться убунту 6.06, в тот момент многие и поверили в эту дезинформацию.

Начали появляться фанаты Ubuntu, которые кричали, что кроме убунты линукса нет. Что есть только удобная убунта, и "для упёртых" генту. Мандрива, суся - нет, не знаем. Убунта, генту, это весь кругозор.

>> довольно-таки профессиональные разработчики
> Профессионализм != мастерство

Ubuntu это же не какой-то игрушечный дистр, в котором нельзя программировать и пользоваться серьёзным ПО. Например команда "apt-get -b source pidgin" пересоберёт тебе pidgin из исходного кода. А команда "sudo apt-get build-dep pidgin" доустановит зависимости для сборки.

Игрушечным дистром был Xandros, в котором из репозиториев вырезали все -dev пакеты.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 15:08 
Боже, храни Габена!

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено ryoken , 16-Июн-21 15:15 
> Боже, храни Габена!

ППКС


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Нанобот , 16-Июн-21 15:17 
Это что за покемон?

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено A.Stahl , 16-Июн-21 17:21 
Жирный пингвин, продающий шляпы; его суперсила: жрать деньги.

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 16-Июн-21 23:11 
Спроси его по адресу gaben@valvesoftware.com

Он обычно отвечает.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 17-Июн-21 16:10 
Булкан лучше всех

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 17-Июн-21 17:23 
Лучший Опенсорс проект десятилетия!

"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 17-Июн-21 20:46 
> Решены проблемы в играх
> Spec Ops: The Line

Там были проблемы?
А, да, точно. Могло рандомно фризить меню.


"Выпуск DXVK 1.9, реализации Direct3D 9/10/11 поверх API Vulk..."
Отправлено Аноним , 18-Июн-21 19:28 
>> Добавлен компонент для ограничения интенсивности показа кадров (frame rate limiter), который можно использовать для корректной работы игр, не рассчитанных на высокий FPS.

Круто. Проверил на дидспейсе 3, тамошняя опция vsync почему-то просто лочит на 60фпс вне зависимости от выбранного разрешения и рефрешрейта. А без включенного vsync 100500 кадров