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

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

Страницы: 1426 427 428 429486 Следующая »
#6390
14:28, 21 фев. 2020

nonamezerox
> которая написана на крестах и cuda.
<вставить шутку про джаваскрипт>

(десяток последних нейросетей с гитхаба что я видел, все на джаваскрипте в браузере под tensorflow)


#6391
15:41, 21 фев. 2020

Danilw
> на джаваскрипте
Кто-то не осилил установку питона, ну вот и написал.

#6392
(Правка: 18:09) 16:57, 21 фев. 2020

v1c
спс, прочекаю. В lunarG sdk есть данная приблуда?

#6393
19:39, 21 фев. 2020

Danilw
> джаваскрипте
А есть ещё nvk, тот самый Vulkan API для NodeJS...

#6394
23:33, 22 фев. 2020

UP
Назрел вопрос о чтении нескольких текстур из шейдера. Как в Vulkan обстоит с этим дело? Можно ли во фрагментном шейдере делать как-то так:

uniform sampler2D tex[16];
in vec3 tex_coord;
out vec4 color;
void main()
{
    color= texture(tex[int(tex_coord.z]], tex_coord.xy);
}

Текстурные массивы не предлагать, т. к. нужны текстуры разных размеров.

#6395
(Правка: 0:41) 0:38, 23 фев. 2020

Panzerschrek[CN]
> Текстурные массивы не предлагать, т. к. нужны текстуры разных размеров.
Descriptor Indexing
Аналог bindless textures из OpenGL.
Уже в ядре Vulkan 1.2 с 15 января, ранее было доступно через VK_EXT_descriptor_indexing.
Пример использования: https://github.com/SaschaWillems/Vulkan/blob/master/examples/desc… rindexing.cpp
Годная статья по теме: http://chunkstories.xyz/blog/a-note-on-descriptor-indexing/

#6396
1:22, 23 фев. 2020

Ashmedi
> Descriptor Indexing
Это чтобы размер массива задавать не в шейдере, а в коде. Различается только дескриптор лейаутом.
Массивы в шейдере можно было использовать с самого начала.

#6397
2:19, 23 фев. 2020

Ashmedi
> Годная статья по теме:

In fact, the research I’m doing on the matter ask more questions than it answers, from what I’m gathering AMD hardware had no way of doing what NonUniformIndexing does before Vulkan! The arb_bindless_textures extension’s current revisions still has a hard requirement on the nvidia extension for the non-uniform capability, and no AMD hardware exposes that

+консоли нового поколения, на АМД... ну да ну да

#6398
9:30, 23 фев. 2020

Ashmedi
1.2 - не очень то хорошо. Пользователям драйвера обновлять придётся.
Да и судя по https://vulkan.gpuinfo.org/listextensions.php, с поддержкой VK_EXT_descriptor_indexing всё плохо. А значит, даже если оно в ядре, то только как опциональная фича, которая железом может и не поддерживаться.

#6399
9:33, 23 фев. 2020

Как запасной вариант, я рассматриваю такой код:

uniform sampler2D tex[4];
in vec3 tex_coord;
out vec4 color;
void main()
{
    int tex_number= int(tex_coord.z);
    if(tex_number == 0)
        color= texture(tex[0], tex_coord.xy);
    else if(tex_number == 1)
        color= texture(tex[1], tex_coord.xy);
    else if(tex_number == 2)
        color= texture(tex[2], tex_coord.xy);
    else if(tex_number == 3)
        color= texture(tex[3], tex_coord.xy);
}

Для меня десятки текстур не нужны, хватит трёх-четырёх штук. Для такого количества вышеизложенный вариант годится?

#6400
13:05, 23 фев. 2020

в 1 текстуре лучше все держать, помоему все так говорят и делают (в думе томже как пример)
и резать по тайлам в шейдере

#6401
(Правка: 13:33) 13:32, 23 фев. 2020

Danilw
> в 1 текстуре лучше все держать
Лучше.
Но у меня случай, где это достаточно тяжело сделать - теневая кубическая карта. Её на тайлы не порежешь. Можно конечно порезать кубическую карту на 6 частей и разместить каждую часть в теневом атласе, но тогда придётся извращаться с выборками. Вот я и думаю, что делать выборку из нескольких кубических карт через if-ы будет проще.

#6402
14:26, 23 фев. 2020

есть же cubemap array

#6403
14:35, 23 фев. 2020

/A\
> есть же cubemap array
Я его и использую. Но нужно иметь несколько cubemap array разного размера.

#6404
15:33, 23 фев. 2020

Кстати, есть повод для радости любителям HLSL, ведь теперь и их можно компилировать в Vulkan API Ray Tracing...
https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-DXR-To-Vulkan

Страницы: 1426 427 428 429486 Следующая »
ПрограммированиеФорумГрафика