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

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

Страницы: 1578 579 580 581 582 583 Следующая »
#8700
(Правка: 4:48) 4:42, 21 авг. 2021

melvy
> То в случае "обычных тестов" когда ты делаешь нестандартную TAA с репроекцией и
> пытаешься запустить - а оно работает "по разному" на разных ГПУ из за багов...
> и переделываешь чтоб "оно работало" обходя десятки разных багов, таже история с
> нестандартным voxel-GI который

Ну так барьер не правильно вставил вот оно в одном случае схавало, а на другом драйвере нет
Нужно сначала на свой код посмотреть ОЧЕНЬ ТЩАТЕЛЬНО, лишь после идти и делать баг репорт
От TAA с репроекцией ничего не должно ломаться.
Ну так ты разобрался почему не смог запустить Diligent Engine? Он под MoltenVK даже работает, а на сыром пукане тем более должно все работать
Все может работать и при ошибках валидации, потому что это лишь спецификация, а имплементация может и хавать не валидное поведение


#8701
4:53, 21 авг. 2021

IBets
> Ну так ты разобрался почему не смог запустить Diligent Engine?

на Нвидиях ниже GTX970 и "большинства АМД" и всех Интелах (я так думаю, давно не тестил)

> It appears there might be a problem with how the driver reports the fence completion status. Diligent relies on fences to manage the lifetimes of resources. Other applications most likely use triple or double buffering instead and don't use fences, which is why they may work.

И эта логика основная особенность Diligent Engine, очевидно что никто это переписывать не будет, в Нвидии не будут фиксят так как карты старые, в АМД(и интеле) проблемы с возможностями оборудования(видеокарт).

> От TAA с репроекцией ничего не должно ломаться.
ломается на уровне шейдеров

#8702
(Правка: 5:15) 5:10, 21 авг. 2021

melvy
Большая вероятность что траблы с дровами, потому что у других юзеров подобных проблем не было. Да не исключаю траблов из-за фенса. Попробуй еще раз
Как то были приколы на NV картах на винде, что список доступных форматов для SwapChain был просто пустой при наличии расширения, хотя по спеке как минимум один должен поддерживаться.
Переустановка дров помогла

#8703
17:42, 21 авг. 2021

melvy
> толпы уважающих себя программистов, безработных
Ммм, это ты где таких нашел?

#8704
(Правка: 19:09) 19:01, 23 авг. 2021

IBets
> Ну и вообще я бы записывал результаты операции в Store Buffer, читал бы его на
> CPU и сравнивал с референсом CPU-шным. Чтобы понять где идет не так

кстати вот это может не работать как видно тут
https://www.shadertoy.com/view/ftXSWB

на строке 27 условие

if(val3==0.){fragColor=vec4(1.);return;}
(val3==0.) == true

на строке 41 (val3==0.) == false
(не везде и на разных картах по разному, на Нвидии и АМД в вулкане будет так)

а добавив на 31 строку

    if(uv.x<0.)
    if(val3==0.){fragColor=vec4(1.);return;}
делают val3=0. на обоих сторонах вывода

возможно всеже это зависит от компиляции/компилятора шейдера

IBets
> precision highp float;

вспомнил где видел "пруф":
> all default precisions are highp;
это glslang пишет, тоесть по дефолту все флоаты в highp и эта строка не будет иметь эффекта

#8705
22:23, 5 сен. 2021

забавно:

for(int x = -2; x <= x; ++x)
шейдер компилится, но при создании пайплайна падает с ошибкой.

#8706
0:17, 6 сен. 2021

BingoBongo
вечный цикл? ну хоть не bsod

#8707
4:48, 9 сен. 2021

На Нвидии все ок.
На Интеле  и Радеоне (мобильных) выдает:

validation layer: vkGetQueryPoolResults() on VkQueryPool 0x43d[] and query 1: query may be in an unknown state

С чем может быть связано?

#8708
11:02, 10 сен. 2021

MikeNew
> С чем может быть связано?
Не вызываешь query pool reset перед каждой записью ?

#8709
12:18, 10 сен. 2021

https://developer.qualcomm.com/sites/default/files/docs/adreno-gp… /gpu/gpu.html

A Low Resolution Z (LRZ) pass was added with Adreno 5X (A5X). This pass is also referred to as draw order independent depth rejection. During the binning pass, a low resolution Z-buffer is constructed, and can reject LRZ-tile wide contributions to boost binning performance. This LRZ is then used during the rendering pass to reject pixels efficiently before testing against the full resolution Z-buffer.

Certain conditions send hints to the driver to disable LRZ which include:

  • Writing depth in fragment shader
  • Use of secondary command buffers (Vulkan)
  • Any condition where direct rendering is required

  • Вот почему плохо использовать secondary command buffer на мобилках
    #8710
    15:57, 10 сен. 2021

    /A\
    Ну а что насчёт Mali,PowerVR?

    #8711
    16:15, 10 сен. 2021

    Andrey
    На Мали другой подход к occlusion culling. В их рекомендациях говорится, что secondary command buffer может копироваться в главный, что тоже не хорошо, но и не так страшно.

    #8712
    10:09, 11 сен. 2021

    /A\
    > Не вызываешь query pool reset перед каждой записью ?
    Да, но перепроверю внимательней.

    #8713
    13:08, 11 сен. 2021

    кто-нить знает как в вулкане через glslang скомпилить шейдер с минимальной оптимизацией и с дебаг символами, чтобы можно было видеть нормальные имена переменных шейдера в рендердоке? например, в dx11 такое возможно.

    #8714
    13:20, 11 сен. 2021

    BingoBongo
    А ты как компилируешь, через консоль или через АПИ ?

    Страницы: 1578 579 580 581 582 583 Следующая »
    ПрограммированиеФорумГрафика