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

FPS в OpenGL 4.3

Страницы: 1 2 Следующая »
#0
19:06, 1 июня 2021

Столкнулся с такой особенностью в OpenGL:
после первой инициализации/заполнения SSBO данными на простой сцене
скорость отрисовки составляет 1500-1700 fps, но после вторичной загрузки
SSBO - скорость возрастает до ~3700-4000 fps.

Заполнение вертексов через обычный glMapBuffer.
Вопрос, а что не так в первый раз? Что-то не знаю?

#1
19:13, 1 июня 2021

Данные случайные в случайном порядке и количестве? Например сфера, а потом 10 сфер разных?

#2
19:16, 1 июня 2021

lookid
Не, всегда один и тот же меш. Скажем простой куб.

Короче перегружаешь к примеру во время рендеринга буфер цвета
и скорость вырастает раза в 2.

Что ему мешало рендерить в первый раз с такой скоростью?

#3
19:22, 1 июня 2021

eDmk
> Столкнулся с такой особенностью в OpenGL:
> после первой инициализации/заполнения SSBO данными на простой сцене
> скорость отрисовки составляет 1500-1700 fps, но после вторичной загрузки
> SSBO - скорость возрастает до ~3700-4000 fps.

Можешь прям псевдокодом написать, что ты делаешь? Пока не очень понятно. После второго мапа/анмапа становится быстрее?
Возможно gl подумал, что к буферу часто (или наобород-редко) обращаются и переложил его в какое-то более удачное место.

#4
19:23, 1 июня 2021

HolyDel
> После второго мапа/анмапа становится быстрее?
Ну да, я так и написал :)

#5
(Правка: 19:28) 19:28, 1 июня 2021

Псевдо код простой:

1. InitScene -> MapColorBuffers

2. Start Rendering Cycle - >
    if Key = UpdateColors { MapColorBuffers } ... // Профит! FPS+ аж в 2 раза!
    Transform Objects ...
    Render ...
    Draw FPS Line ...
    return to Start Rendering Cycle

#6
19:36, 1 июня 2021

eDmk
А анмап где?

#7
19:42, 1 июня 2021

HolyDel
> А анмап где?
Там же:

+ Показать
#8
21:00, 1 июня 2021

eDmk
Первый анмап точно есть? Может он замапленный буфер дольше рисует?

#9
21:02, 1 июня 2021

HolyDel
> Первый анмап точно есть?
И мап/унмап есть и бинд/унбинд.
Вызывается процедура целиком, поэтому точно есть!

#10
21:06, 1 июня 2021

Не уверен, что есть смысл вообще что либо сравнивать на 1000+ FPS-ах.

#11
21:15, 1 июня 2021

MrShoor
> Не уверен, что есть смысл вообще что либо сравнивать на 1000+ FPS-ах.
Да это все понятно, просто удивительное приключение :)

Видюха при запуске медленно разгоняется с 700 до 2600 фпс.
Потом обновляешь буфер и она сразу 4к выдает.
Кстати похоже на компенсацию просадки после копирования.
Хотя от размера буфера не зависит.

Будем считать это общественным поведением драйвера.
Гапи тут видимо не при чем.

#12
8:02, 2 июня 2021

ты пытаешься найти, куда делись 0.1мс в opengl-рендере? ну, успехов, что.

#13
10:06, 2 июня 2021

Suslik, вообще-то это нормальная ситуация. Особенно, когда это сказывается на достаточно большой временной разнице.

eDmk, вероятно подготовлен рендер OpenGL. Попереключайся с OpenGL на DirectX и обратно и посмотри результат.

#14
11:53, 2 июня 2021

Suslik
> ты пытаешься найти, куда делись 0.1мс в opengl-рендере?
Да нет, не пытаюсь. Просто непонятное поведение, хотя и не опасное со всех точек зрения.

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