Консорциум Khronos, занимающийся разработкой графических стандартов,...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=52194
Интересно, как дела обстоят с обратной совместимостью.
> Oпyбликован грaфический стандарт Vulkan 1.2Cтaндарт то опyбликован, а дрaйвера (говoрят) пoлное г^в^нo. На ЛOРе нeдавно была тема, где з@дpoты обсуждали качeство вyлканoвского nvidia-дpaйвера в игpах. И оказалось, что игры тоpмозят еще больше, чем с обычным дрaйвером. Но погoдите-ка, это что же полyчается? Ведь Vulkan создавался, чтобы повысить произвoдительность как минимум в 2 раза. Нас н@#$ли, рaсxoдимся? :(
> Ведь Vulkan создавался, чтобы повысить произвoдительность как минимум в 2 раза.Сколько лет прошло, а дураки все теже. Он создавался для НИЗКОУРОВНЕГО доспута и не более. Можно на языке ассемблера написать хрень, которая будет работать медленее чем на JVM.
Вот ТЫ и не перевелся. Ибо резкое повышение производительности - это СЛЕДСТВИЕ использования низкоуровневого доступа. Те же тесты хронос групп это нам обещали. Но затем что-то пошло не так. Либо это был один большой маркетинговый бyллшит с красивыми картинками, либо нвидия не шмогла в нормальные пyкaн-драйвера.
Как хронос может что-то гарантировать если все работает через драйвер.
Если работает медленнее, то получается - плохо написали. Существующие движки годами оттачиваются и на то, чтобы научиться писать на вулкане тоже нужно время. Нужны тесты, нужна аналитика и статистика от пользователей. Вот пока этого не будет, движок может больше тормозить.И дрова тоже могут быть плохими. Их тоже надо научиться писать для вулкана. И иксы и оконный менеджер и всё должно понимать с чем имеет дело. А все думают, что раз и готово.
А еще можно в драйвере наделать кучу эмулируемых на цп функций и сказать что видеокарта полностью поддерживает вулкан. Разработчик конечно должен знать что именно функция которую он использует медленная.
Я еще раз повторю, что на языке ассемблера можно написать полную дичь, ежели написать это на каком-нибудь высокоуровневом языке и дать хорошему компилятору.
99% игровых компаний на высокоуровневых API сделать нормально не могут, куда им низкий уровень?
Слышал звон, да не знаешь, где он. Си - это тоже низкий уровень по сравнению с языками высокого уровня, да не ассемблер нифига.
Или разрабы не осилили оптимизации под вулкан. Низкоуровневые API предъявляют повышенные требования к радиусу кривизны рук.
Как будто хронос ответственный за реализацию драйвера
Как всегда ответственных нет "оно само".
Вполне себе повышает, если переписать движок под вулкан, а не просто поменять все gl префиксы на vk
Многие игры работают быстрее на Vulkan, по сравнению с opengl, все нормально там с производительностью.
> (говoрят)(показывают) https://www.youtube.com/watch?v=W3VryXQfUY4
Боже, откуда же вы такие дурачки беретесь ?
Тебе 25 раз уже написали, что вулкан - это низкоуровневое api, и эффективное приложение на таком уровне может написать только спец хорошо понимающий видео-архитектуру карт. Ну что за бездарь.
>Для обеспечения высокой производительностивот только что на Ubuntu (и KDE Neon), что на Manjaro у меня с Nvidia (со всеми ветками 3xx-4xx), почему-то, при переключении с OpenGL4.2 на Vulkan FPS падает в x.15-x2 раза.
одни говорят, что наоборот должно же быть. другие говорят, что для Vulkan прост ннада минимум 4Гб видеопамяти (производительно, да)
ничего не понимаю, если честно
*в x1.5-x2 раза*
*и OpenGL4.6*
>NvidiaНу а ты что хотел?
с радеоном дела по-лучше?
Да. Проблема в драйверах.
А теперь сравните Nvidia на OGL и ATi на Vulkan'е. Просто ATi не может в хорошие GPU, вот и перекладывают все на плечи разработчиков.
Radeon с серии 7000 поддерживает Asynchronous Shading в железе и поэтому в DX12\Vulkan они и получают буст. С nVidia наоборот, рекомендуют придерживаться старых DX11\OpenGL.
Ubuntu 19.10, nvidia 1050 с 2ГБ. Полет отличный, особенно заметно под вайном (где вулкан выдает 50-60 fps, без него 10-15 fps в overwatch и других играх). Возможно ваша проблема описана в этой новости https://www.ixbt.com/news/2016/03/01/nvidia-api-vulkan-gpu-f...
Внезапно, на винде та же ситуация при переключении с dx11 на dx12/vulkan всегда падает фпс.
Где и что ты там переключил? В KWin только OpenGL 2.0 и OpenGL 3.1 есть
у тебя за пределами KWin жизни нет?с Unreal Engine например поиграйся
>одни говорят, что наоборот должно же быть.Это евангелисты прихода новой фичи.
В реальности Vulkan перекладывает оптимизацию под конкретную карточку с плеч разработчика драйверов на плечи разработчика пользовательской программки. Там где разработчик озаботился этим будет профит, где нет - как повезет.
> на плечи разработчика пользовательской программки.пока что это самый убедительный довод (его же я получаю и от Khronos и от Nvidia)
новый уровень *проблема на вашей стороне*
Видимо они дрова не осилят никак, та же проблема...
Ubuntu 18.04.3 производительность с вулканом больше, чем без него (видно так сказать невооруженным глазом).
забыли уточнить, в каком месте производительность?
> Доведена до готовности к повсеместному применению реализация языка программирования шейдеров HLSL, разработанного компанией Microsoft для DirectXЭксперты, скажите пожалуйста, это ускорит DX12 игры в вине? Сейчас многие жалуются на то, что JIT компиляция шейдеров грузит проц.
в вине с DXVK*
Я на AMD это пофиксил модифицированной Mesa с ACO компилятором шейдеров
DXVK не имеет отношения к dx12 не? Как и к вайну. по-сути. Может, просто криво работает, как были проблемы, когда dxvk9 был отдельным проектом. Теперь проблемы перекочевали в dxvk, отлично придумали конечно.
Я имею в виду, поступай как с dxvk9 - отдельный профиль. Мне больше нравилось, когда оно было отдельно — с вайновской реализацией больше игр работает.
Vkd3d
Ну все, теперь гуляцца будет в удовольствие. Ведь главное что? Что б была возможность настраивать каждый день "под себя" линукс и гуляцца в игры. И все, ты уже компьютерный гений, не то что там всякие виндузятники, которым только новости после работы почитать, в почту зайти и фильм посмотреть.А тут бескрайнее поле деятельности в линуксе до покраснения глаз.
>настраивать каждый деньЭто мифы, фейки. Зачем вы их распространяете? Как пользователь виндовоса, могу со всей уверенностью заявлять: в линуксе настройки приходится менять не чаще раза в год. Даже если их не поменять, ничего страшного не случится. А в виндовосе приходится регулярно читать малопонятные анонсы и ченджлоги, и, поскольку узнать, что скрывается за расплывчатыми формулировками, нет никакой возможности, ждать месяцы после каждого выхода обновлений и мониторить тематические сайты.
>покраснения глаз
с этого бы и начинал, я думал ты человек.
Это же васька, местный недотралляка 13ти годиков.
Раз в год это много
> Раз в год это многоВсё равно это реже, чем десяточка, которая умудряется навернуться стабильно с каждым вторым мажорным апдейтом. При том, что она используется как игровая приставка в режиме "бутнусь на 2 часика игруху погонять"
> Доведена до готовности к повсеместному применению реализация языка программирования шейдеров HLSL, разработанного компанией Microsoft для DirectXЖдём нативных портов игр на Linux и FreeBSD, которые вообще не используют GLSL. И наверное, это прекрасно. GLSL это мучение.
Ахахах... главное в игры "гуляцца" для настоящих мужчин... воистину - хлеба и зрелищ !)) До пенсии?)) Хотя стоп... на пенсии же тоже можно "гуляцца" в игры, времени-то больше станет)).
Ну конечно, играть в игры это не по взрослому. Интересно, какая категория людей больше всего хочет казаться взрослой?
Будь взрослым, не трать драгоценное время, смотри сериалы и инстаграмм.
верно, настоящие мужчины каждый вечер в га...но (а на утро как огурец)
По-взрослому -- это купить дурь, играть в казино и работать на буржуина (или наобборот - эксплуатировать других), да? Попутно можно ещё бегать от одной бабы к другой и чураться семьи и детей.Умение играть чисто ради интереса -- это как раз отличительная черта высокоразвитого человека. Если же игра становится пристрастием, то это уже заболевание, ничем не отличающееся от того, что вы понимаете под "взролостью".
Нормально всё в GLSL. Да, писал и пишу на нём.
Тогда почему GLSL так долго никто не пользовался?OpenGL 2.0 с поддержкой шейдеров был выпущен в сентябре 2004 года. Вышла игра DooM III с использованием шейдеров, и всё. Следующий раз, когда кто-нибудь использовал шейдеры в OpenGL, мы увидим ещё нескоро.
Причём DooM III скорее всего использовал не GLSL, так как выпущен в августе 2004. В Википедии пишут: "Однако ещё до введения в стандарт OpenGL языка GLSL существовала возможность разрабатывать спецэффекты на языках ассемблера (расширения vertex_program, fragment_program)"
Ещё в UT2004 можно включить PixelShaders и VBO правкой конфига, но по умолчанию они выключены. И всё. Больше не было игр, использующих шейдеры. Ни как опцию, как UT2004, ни обязательно, как DooM III.
Следующей игрой, где я видел шейдеры в связке с OpenGL, была Amnesia 2009 года, и Trine того же года. Ещё бенчмарки Unigine, но в них не поиграешь.
До этого, все игрушки довольствовались OpenGL 1.x, и ещё много лет вперёд им этого будет хватать. OpenGL 3.x вышел в 2008, а первую игру, использующую его, я увидел через 5 лет.
А когда нативные игры начали активно выпускаться для Linux, то в 99% случаев это был враппер из Direct3D в OpenGL. Valve, Virtual Programming, Ashyr, Feral. Даже игры, использовавшие OpenGL нативно, всё равно не пользовались GLSL. Icculus, автор таких портов, использовал mojoShader, конвертер из HLSL в байт-код, который впоследствие превращался в GLSL. И ведь его порты были самыми качественными, и не уступали в скорости Windows-версиям. Но даже в них не использовался GLSL
На винде Dx немного быстрее OpenGL, поэтому он в приоритете, кросплатфоренные же игры все на OpenGL, разуй глаза, если ты их не видишь
Вижу множество игр под Windows, Xbox и Playstation, но что-то не вижу в них OpenGL
Vulkan позволяет создавать кроссплатформенные игры?
> Vulkan позволяет создавать кроссплатформенные игры?нет не позволяет, приставки не поддерживают, мобилки не поддерживают, мак ос н е поддерживает
А про всякие gfx-rs там выше для галочки написано, да, любочка?
Примеры то будут где-то как этим пользоваться. Злополучный разноцветный полигон вращать, куб нарисовать, сферу. Как пользовать данное изобретение. Кто его уже поддерживает и т.д. а то опять сферический какой-то стандарт.
vulkan samples, vulkan examples, vulkan tutorial
У меня на 1050 вулкан не дает прироста фпс, а в некоторых играх (принципах талоса) фпс даже падает. Вулкан требует специально затачивать движок под него, т.е. по факту отказываться от DirectX 11 и OpenGL, что будет просто безумием, так как на них сидят большинство юзеров. Да еще и адски сложный API для программирования. Перспекитивы у API весьма туманные, учитывая что уже прошла куча времени с его выхода. Отправится туда же, как и куча других мертворожденных технологий
Большинство юзеров на dx12. Подавляющее большинство, если не считать сосноли не от мс (я не знаю что там у них с продажами сейчас, но сосноли от мс угшными всегда были).
dx12 == Vulkan
Где статистику посмотреть по Dx12? С чего вы взяли, что большинство? Или по вашему любой Dx - это Dx12?
> Где статистику посмотреть по Dx12? С чего вы взяли, что большинство? Или
> по вашему любой Dx - это Dx12?windows == dx12
Вот это обсёр
> Вот это обсёрНу не стоило обделываться, всякое бывает. Но я рад, что ты теперь загуглил актуальные цифры, и будешь умнее.
Тебя же за перевод стрелок одноклассники по щекам лупили, ничему не обучаешься. А насчет гугления, ты бы хоть на валвиндекс зашел и посмотрел проценты с поддержкой Dx12/Vulkan. И это даже с учетом того, что у геймеров (аудитории стима) железо в среднем лучше, чем в общем у пк пользователей, которым топовое железо нафиг не упало, им достаточно браузера и ворда
В принципе типичный уровень экспертов опеннета (шольников, кидающихся словечками "угшные" и "сосноли"). Личинка человека даже не понимает, что dx 12 работает только в десятке и далеко не все видеокарты его поддерживают в полном объеме
Хех. Вулкан тоже далеко не все карты поддерживают в полном объёме. А какие ОС помимо десятки вы знаете? У 8 3% или сколько там пользователей, остальные пользуются махровым легаси типа икспи и спермёрки (32 битной обязательно). Но это процентов 20 в сумме не наберётся.Есть же статистика того же стима, к чему все эти разговоры? 80+ процентов 10 с dx12. ~15% протухшие системы с dx12 картами. ~5% карты без dx12. Всё, не о чем говорить.
А использовать приём типа ad hominem некрасиво, много говорит о вас, как о собеседнике. Это, как это модно сейчас говорить, "слив". Впрочем, школьник везде видит школьников.
Просто шок, зачем я вообще начал личинке что-то объяснять
> Просто шок, зачем я вообще начал личинке что-то объяснятьВидишь какое тут дело, я вижу в собеседниках как минимум равных, ты же видишь одних личинок. И высока вероятность, что в зеркале ты тоже личинок видишь. А ещё я умею признавать ошибки, в отличие от тебя.
Вообще например тут https://www.pcgamingwiki.com/wiki/List_of_DirectX_12_games https://www.pcgamingwiki.com/wiki/List_of_Vulkan_games формально количество игр под Vulkan на 10% больше. Правда, если разобраться и глянуть внимательнее, то для дх12 это все реальные различные AAA игры, а для вулкана половина это некоммерческие порты старых открытых движков, а в остальной половине многие "игры" это всего лишь повторные релизы для VR, ну еще несколько игр на движке Дума (id tech 6).Так что как минимум в плане игр дх12 сильно популярнее..
Я не геймдевелопер, вулкан не видел, но я так понял, что с Vulkan API это сложный, низкоуровневый API для которого пишется относительно простой драйвер видокарты. Драйвер дает незначительный оверхед на вызовы и позволяет асинхронную загрузку ресурсов на видеокарту. Главная фича - незначительный оверхед на CPU из-за чего API будет популярен на мобилках и прочих устройствах с маломощными процессорами (ноуты, мобилки, приставки вроде nintendo switch). Разницу по fps наверное могут ощутить владельцы многоядерных FX или низкочастотных CPU в ноутах, у них vulkan должен выдавать больше FPS чем при использовании DX11 или OGL. Можно наверное проверить на некоторых игрушках вроде No Man's Sky, они как раз вроде делали транзит с OGL на Vulkan.Не думаю что API умрет, т.к. развивается мобильный рынок, а вместо использования непосредственно API игры используют готовые движки, а вот там как раз core developer's с узкими специализациями которые будут выжимать максимум из железок.
OpenGL 4.6 позволяет некоторые низкоуровневые фичи из вулкана и при этом просто программировать
"Просто программировать" в OpenGL позволяет лишь immediate mode, остальное - нагромождение костылей и подпорок из расширений, мимикрия под vulkan, которая бесполезна/безперспективна чуть более, чем полностью
Можно ли примеры костылей?
Direct State Access
Продолжи свою мысль, а то непонято. Когда весь API - direct access - это норм, а когда только там, где надо - это костыль?
Во-первых, я написал Direct STATE Access, не выкидывайте слова, особенно если они значащиеВо-вторых, даже в вулкане далеко не все "direct access"
И в третьих - opengl'овского dsa в вулкане нет как концепции, т.к. изменить сэмплер для imageview после его содания нельзя, а при создании того же пайплайна ЗАРАНЕЕ статически задаются почти все параметры, включая режимы смешивания и фреймбуферы, т.е. задать произвольную конфигурацию (за редкими исключениями вроде vkCmdSetViewport) во время выполнения невозможно, все максимально детально описывается еще на этапе создания объектов, чтобы драйвер и ГПУ могли это оптимизировать и/или вообще исполнять спекулятивно
Ты про Direct STATE Access, а я про direct access, который дает Direct STATE Access. Про костыли то ты и не рассказал, рассказываешь про плюсы, ты про костыли расскажи. То, что на OpenGL легко программировать я и так знаю и добавить фичи из вулкана в опенжл не значит все туда перенести, только самое полезное. В общем жду костыли
>Ты про Direct STATE Access, а я про direct access, который дает Direct STATE AccessЯ уже сказал, что это не одно и то же, и в вулкане Direct STATE Access вообще нет, т.к. нет этого глобального STATE
Ладно забей, сам про direct state access написал, сам же опроверг, сам же меня упрекнул. Надо было по русски писать "прямой доступ", а то у тебя мозг костылями подперт
Я разу и конкретно написал про direct state access как костыль, аналогов которого в вулкане нет by design, т.к. в вулкане нет этого глобального state, учите и пишите на вулкан и
1) не будет таких непоняток
2) желания возвращаться на opengl
В новом Doom Eternal можно будет затестить прелести версии вулкана 1.2.Doom всегда под вулкан точат.