Войти
ПрограммированиеФорумГрафика

Vulkan API (вышел!) (365 стр)

Страницы: 1364 365 366 367390 Следующая »
#5460
13:37, 29 июня 2019

кстати, алгоритм дергает 5 шейдров, часть из которых рисует в скайбоксы, а часть в скринспейс, основные вычисления в компьют-шейдерах. получилось 330 fps на opengl vs 530 fps на vulkan'е. интересно, где производительность могла потеряться.


#5461
13:54, 29 июня 2019

BingoBongo
> интересно, где производительность могла потеряться.

по шагам выяснить ?

#5462
14:14, 29 июня 2019

innuendo
через какой инструментарий? рендердок по времени операций какую-то фигню выдает.

#5463
14:17, 29 июня 2019

BingoBongo
> через какой инструментарий?

можно же просто отключать код и смотреть fps

#5464
18:01, 29 июня 2019

BingoBongo
> интересно, где производительность могла потеряться.
при 300фпс скорее всего на цпу

#5465
18:04, 29 июня 2019

Andrey
> apiVersion: 1.1.108
у меня только 1.1.70 и амдшная обновлялка драйверов говорит что это самые свежие, но это ноутбучная карта, надо будет ПКшную взять.
У меня и на нвидиа начиная с какой-то версии драйвера с сайта стали приводить к бсодам, пришлось ставить с сайта производителя ноута.

#5466
(Правка: 10:30) 10:30, 30 июня 2019

Andrey

в Хуавее пишешь под сабж ? что сразу не сказал ?
#5467
17:40, 30 июня 2019

innuendo
> можно же просто отключать код и смотреть fps
Гениально, Query Objects хотя бы посоветовал)

#5468
18:24, 30 июня 2019

Dimich
> Query Objects хотя бы посоветовал)
вначале идёт грубый профайлинг, потом тонкий

#5469
19:10, 30 июня 2019

А если и тонкий не поможет.
То только отверткой в видеокарте подкрутить :)

#5470
19:34, 30 июня 2019

BingoBongo
> через какой инструментарий?

если AMD - RGP очень можная штука - правда на GL забили

#5471
21:30, 30 июня 2019

glslangValidator теперь распознаёт рахитные шейдера:

1>    .rint    for a ray intersection shader
1>    .rahit  for a ray any hit shader
1>    .rchit  for a ray closest hit shader

#5472
(Правка: 23:39) 23:38, 30 июня 2019

Привет вулканологи!
1) Какого хрена при пересоздании swapchain мне нужно пересоздавать хренову тучу всего: render pass-ы, graphic pipelin-ы, все шейдеры так как они указываются в graphic pipline-ах.
2) Зачем нужно получать present queue (только лишь для презента) и graphic queue отдельно?
3) В чем вообще смысл CommandPool?
У меня все. накипело

#5473
23:50, 30 июня 2019

xruck
> все шейдеры так как они указываются в graphic pipline-ах

ShaderModule пересоздавать не нужно.

xruck
> graphic pipelin-ы

Там указывается ширина/высота Viewport.

xruck
> render pass-ы
Если RenderPass совместим с Framebuffer, его тоже не нужно пересоздавать.

xruck
> 2) Зачем нужно получать present queue (только лишь для презента) и graphic
> queue отдельно?

Зависит от железа: единая ли очередь present & render, или же нет.
А иногда бывает так, что показывать ты хочешь в одной, а рендерить в другой (или просто в нескольких).

xruck
> 3) В чем вообще смысл CommandPool?

Чтобы правильно рассредоточить выделение и использование памяти на CommandBuffer. Ибо:

• Host access to commandBuffer must be externally synchronized
• Host access to the VkCommandPool that commandBuffer was allocated from must be externally
synchronized

Т.е. если хочешь записывать с двух потоков единовременно, создавай два отдельных CommandPool.

#5474
0:12, 1 июля 2019

faserg1
Интересно. На vulkan-tutorial почти все пересоздается. Но ща проверил render pass и шейдеры можно оставлять

> Зависит от железа: единая ли очередь present & render, или же нет.
> А иногда бывает так, что показывать ты хочешь в одной, а рендерить в другой
> (или просто в нескольких).
А какой смысл разделять рендер и презент queue? Если я ренжу в одну queue очевидно я хочу ее когда нибудь показать.

Страницы: 1364 365 366 367390 Следующая »
ПрограммированиеФорумГрафика