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

Тест видимости. (5 стр)

Страницы: 1 2 3 4 5 6 Следующая »
#60
(Правка: 4:40) 4:17, 1 мая 2021

MrShoor
Ага. Спасибо, но она на Titan V запустилась...
Я же просил добавить выбор карты. А лучше сорс. Тогда бы я сам разобрался что и где тормозит. А так это вещь в себе. Я же не знаю что там у тебя за оптимизация стоит.
На Titan V работает классно - 1.3 мс. Хотя это только в 2 раза быстрее чем на твоей 980.

Вот картинка:

+ Показать


#61
(Правка: 4:31) 4:30, 1 мая 2021

san
> Ага. Спасибо, но она на Titan V запустилась...
> Я же просил добавить выбор карты
Долго. В Win10 можно выбрать на какой видеокарте по умолчанию запускать приложение.

> А лучше сорс.
Я могу конечно сорс, но это не голый DX11 будет. И у тебя сразу полезет куча вопросов в духе: "а эта функция что делает, а что делает эта"

Но мне не жалко, держи плюсовый код: https://pastebin.com/xWY6myNc (инклюды вот отсюда все: https://github.com/MrShoor/RAdopt )
А вот код шейдера: https://pastebin.com/NNUyPVtL

#62
(Правка: 5:07) 4:50, 1 мая 2021

MrShoor
Так кинь проект в личку. Дело же не в рендере как таковом. С функциями я разберусь. Пока я вижу одну странность - процесс Окулус стал выполняться в несколько раз медленнее. С чем это связано я не пойму, поскольку код не изменился. Но даже это не обьясняет общее падение скорости рендера геометрии - кроме увеличения количества треугольников ничего не поменялось. Кроме того, вместо кучи разных шейдеров и текстур тут используется только один шейдер и одна текстура. Проще некуда. Должно же быть обьяснение странного падения производительности.

Напрашивается подозрение что есть какое-то ограничение на количество вертексов, скажем размер кэша. Которое сильно различается для AMD и Nvidia.  И этот ресурс на AMD превышен, потому все и тормозит. Тогда понятно почему Окулус стал работать медленнее. Но пока это только фантазии, достоверной информации у меня нет.

#63
(Правка: 7:49) 6:53, 1 мая 2021

Короче результаты тестов без VR (один глаз):
Titan V - 1.3 ms
AMD R9 Nano - 5.6 мс.
Результат MrShoor для 980 примерно посередине - 2.6 мс.

Короче AMD явно раза в два медленнее обрабатывает геометрию, поскольку R9 и 980 примерно в одной весовой категории.
На самом деле зависимость видимо нелинейная (иначе Титан показывал бы микросекунд 200-300) но общая идея понятна.

Резюме: если для NV похоже изгаляться нет нужды, то AMD нуждается в ограничении количества геометрии отправленной на обработку.  Ибо не тянет.
Как это сделать - выше было несколько рецептов.  Я пока свое мнение не сформировал, но что-то нужно делать. Ибо 12 мс это для VR криминал.
Предложено несколько вариантов решения проблемы, спасибо. Буду думать.

#64
7:48, 1 мая 2021

san
> Короче AMD явно раза в два медленнее обрабатывает геометрию

обычно наоборот

#65
(Правка: 7:58) 7:56, 1 мая 2021

innuendo
Теоретик, может хоть раз попробуешь сам что-то выяснить? На компе а не в инете?
Я проверил - результат опубликовал. Ты же как обычно бла-бла-бла. Будешь дальше флудить - вычищу. Скажешь что-то дельное - буду рад. У тебя это иногда бывает, но все тонет в море флуда.

#66
8:35, 1 мая 2021

Apfel1994
> Как решить обновлять ли динамичную тень, если не понятно виден фрастум тени из
> камеры или нет?
Это можно проверить в Compute shader, может просто математика сложнее, нужно спроецировать тень. Нужно побить пространство на ячейки в них хранить список боксов объектов, проверять закрывает ли бокс тень. Да, выглядит не так просто, но подобные структуры реализуемыми виде UAV/srv буферов- текстур в compute shader.
> Но что делать, если информация о видимости все же нужна? Как стримить текстуры,
> если мы не знаем какие объекты видны?
Тут конечно идей нету, информация нужна на CPU.
Даже, sparce texture тут не избавят от CPU зависимости
> Как обновлять кости персонажей, если нельзя отсечь тех, которые не видны?
Расчет иерархии костей реализуем на GPU, видимость кости можно проверять, есть что-то еще что я упустил?

#67
9:08, 1 мая 2021

san
Ты побил город на  куски? Даёт ли сортирка выигрыш? Не стоит сортировать когда камера смотрит сверху. Проверку frustum я так понял ты гоняешь в цикле. Кусков много? Если видно все, цикл не нужен. Вот MrShoor рисует одним куском.

#68
9:33, 1 мая 2021
san
> Теоретик
ох, ты даже не в курсе какой у меня опыт ... на многих проектах AMD выруливало по геометрии, NVidia по текстурам

#69
19:45, 1 мая 2021

Разбей город на куски руками и делай так.
https://gamedev.ru/code/articles/FrustumCulling?page=4

#70
9:54, 2 мая 2021

Andrey
> Даже, sparce texture тут не избавят от CPU зависимости

ты хоть понял поинт sparse texture?

#71
21:07, 3 мая 2021

san
> Сами то здания простые, но вот окна и всякие карнизы, они очень тяжёлые,
> поскольку камера может подлетать близко к домам, текстурами там не обойтись.
В GTA IV по мере удаления от здания, карнизы и лестницы тупо исчезали.

#72
21:13, 3 мая 2021

Джокер
Думаешь, он будет нарезать руками лестницы, подоконники и руками выставлять им лод-индекс?

#73
(Правка: 21:21) 21:18, 3 мая 2021

lookid
> Джокер
> Думаешь, он будет нарезать руками лестницы, подоконники и руками выставлять им
> лод-индекс?
Не знаю, но я бы делал именно так. Придется, конечно попотеть.

#74
21:41, 3 мая 2021

lookid
> Думаешь, он будет нарезать руками лестницы, подоконники и руками выставлять им
> лод-индекс?

ну просто модели с разными лодами

Страницы: 1 2 3 4 5 6 Следующая »
ПрограммированиеФорумГрафика