Andrey
Говно пишется через о
Metal не нужен
Andrey
> Разрабы дров тратят силы на поддержку пещерного гавно ГЛ, поэтому на Vulkan ресурсов меньше.
У меня особых проблем не было с вулканом, даже на старых версиях. Проблема в большом зоопарке с разными выравниваниями и прочими нюансами, я про многие такие нюансы знаю, а вот другие видимо нет.
> /vendor
Сюда запись только в рут версии. А вот закинуть libvulkan_freedreno.so в папку с игрой и подцепить его вместо системного libvulkan.so может и сработает.
/A\
Если нюансы дают плюс это хорошо ... А если головную боль ?
Andrey
> на мобилках ситуацияция может быть такой - они в очереди на исполнение стоит, один исполняется, другой ты заполняешь. Apple рекомендует tripple bufering.
всё равно не понимаю смысла иметь больше 2-х буферов, ну вот смотри:
1. есть 2 буфера.
2. один транслируется на экран, второй в это время рисуется и как будет готов - его выводим на экран, это классика двойной буферизации, так? Так, ок.
3. хмм...есть у меня не 2, а 12 буферов, но накой мне тратить на них ресурсы (в том числе и заряд аккумулятора) и рисовать одинаковые кадры? Ведь пока картинка не поменялась, у тебя ничего не поменялось, то есть юзер не увидел новую кнопку или новое её состояние, не увидел новое положение монстра на экране, да и в конце концов, скорее всего и mouse input новый никакой не пришёл, поэтому все 11 кадров (из 12-и) будут одинаковыми, в чём смысл то?
4. да, я догадываюсь от части где хотя бы какой-то резон может быть, типа на мобилках неравномерный выхлоп кадров, то быстрее кадры выплёвываются, то медленнее и типа хорошо когда у тебя есть в запасе сколько то кадров на тот случай если вдруг фреймрейт возрастёт и ты сможешь из своей коллекции подсунуть готовые кадры, но опять же, они же будут одинаковыми, без какой-либо динамики или смещения. Зачем вообще пытаться рисовать быстрее чем частота обновления монитора? Можно нарисовать один кадр и не выплёвывать его, а ждать сигнала V-Sync, освобождая в это время ресурсы GPU для других целей. В чём профит-то от всех этих трпипл и 12-и пипл буферов?
THE_MASTER
Хммм.... Кто-то не понимает что может быть асинхронность
innuendo
> Хммм.... Кто-то не понимает что может быть асинхронность
и этот кто-то судя по всему - ты, поэтому прекрати засирать профильную ветку спамом.
THE_MASTER
> один транслируется на экран, второй в это время рисуется и как будет готов - его выводим на экран, это классика двойной буферизации, так?
Есть прослойка между рендером в свопчейн и выводом на экран, там вращение применяется, с UI блендится, может еще скейлиться.
/A\
> там вращение применяется, с UI блендится, может еще скейлиться.
а...все эти 100500 буферов чисто для пост обработки что ли...
THE_MASTER
> а...все эти 100500 буферов чисто для пост обработки что ли...
обычно их 2-4, но никто не запрещает запросить больше
Еще багу нашел: при вращении экрана currentTransform меняется, currentExtent может не успеть обновиться. И при этом не возвращается suboptimal, так как андроид думает, что я хочу так скейлить картинку.
THE_MASTER
Что я могу сделать если кто-то не понимает ?
innuendo
> Что я могу сделать
ты вполне мог бы не засирать профильные темы своими бесполезными вставками после каждого поста, причём не только здесь, а по всему форуму, поверь, это в твоих силах, но ты всё равно этого не делаешь, видать такова твоя природа серуна, наверное, ты от этого получаешь особое наслаждение.
THE_MASTER
> делаешь, видать такова твоя природа серуна, наверное, ты от этого получаешь особое наслаждение.
Кризис среднего возраста, что ты хочешь. Отишачил всю жизнь на чужих дядь, а профита кот накакал. Вот и накрыло.
На другом андроиде minImageCount=3, но vkGetSwapchainImagesKHR возвращает 7.
Нашел такое сообщение https://gitlab.freedesktop.org/apinheiro/mesa/-/issues/9
We need 5 images:
1) CPU work
2) GPU work
3) idle
4) queued for flip
5) presenting
Пять больше чем три но меньше чем семь
Гениально.
Сразу видно в тему зашёл сеньор :)
Которому платят 300к в месяц.