Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Поиск узкого места в производительности (3 стр)

Поиск узкого места в производительности (3 стр)

Страницы: 1 2 3 4 5 Следующая »
innuendoПостоялецwww6 окт. 201715:41#30
дело было не в бобине...
Роман ШуваловУчастникwww6 окт. 201715:42#31
nonamezerox
> И даже сотни тысяч коробок спокойно скушаются твоим процессором.
Ок, получу я список из нескольких десятков тысяч коробок. Дальше что? 10.000 раз вызвать glDrawElements()? Зачем такие сложности для статики?

Такой подробный фрустум (даже упрощенный - сфера вместо AABB) я если и буду использовать, то только для динамических объектов, для которых нельзя заранее сделать всё то что на картинке выше.

nonamezeroxПостоялецwww6 окт. 201715:45#32
Роман Шувалов
> 10.000 раз вызвать glDrawElements()?

и шо? Криминал штоле?  glDraw - это самый дешевый вызов среди прочих вызовов, таких как смена шейдера, смена vbo, смена текстур. Даже установка юниформа дороже стоит. 

Правка: 6 окт. 2017 15:47

nonamezeroxПостоялецwww6 окт. 201715:50#33
Роман Шувалов

Ну если тебе исключительно для самоуспокоения, то есть

https://www.khronos.org/opengl/wiki/GLAPI/glMultiDrawArrays

https://www.khronos.org/opengl/wiki/GLAPI/glMultiDrawElements

Правка: 6 окт. 2017 15:58

SuslikМодераторwww6 окт. 201716:39#34
nonamezerox
> glDraw - это самый дешевый вызов среди прочих вызовов, таких как смена шейдера,
> смена vbo, смена текстур. Даже установка юниформа дороже стоит. 
да ты что? какие новости классные..
innuendoПостоялецwww6 окт. 201717:30#35
Роман Шувалов
> Дальше что?

Ты хоть картинку покажи, что за страшная такая сцена :)

Роман ШуваловУчастникwww6 окт. 201717:44#36
innuendo
> хоть картинку покажи, что за страшная такая сцена :)
Покажу в течение 2-3 недель вместе с анонсом.
u960Постоялецwww6 окт. 201718:03#37
nonamezerox
> Предлагаю для каждого объекта посчитать bounding box.
Кстати,а если это один меш? Допустим  ланшафт, пускай горы будут.Как в таком случае реазлировать frustrum culling?
Роман ШуваловУчастникwww6 окт. 201718:59#38
u960
Разбивать на несколько мешей. Либо сделать несколько массивов индексов (IBO). Либо в одном IBO сгруппировать индексы так, чтобы можно было через несколько вызовов glDrawRangeElements() нарисовать нужный фрагмент меша.
slava_mibМодераторwww6 окт. 201719:36#39
Столько всякой фигни понаписали... Почему никто ему не сказал, что у интела есть пермфомеанс-аналайзер, который может чётко и понятно разобрать кадр и показать что тормозит, где тормозит и почему именно тормозит - причём и по ЦПУ и по ГПУ он умеет это делать?

https://software.intel.com/en-us/gpa

Роман ШуваловУчастникwww6 окт. 201719:55#40
slava_mib
Линукс.
slava_mibМодераторwww6 окт. 201720:37#41
Линукс, ОГЛ, интел... Жесть какая. Даже не могу придумать что бы могло быть ЕЩЕ хуже )))
Разве что программить прикованным к батарее - не твой случай случайно?
innuendoПостоялецwww6 окт. 201720:48#42
Роман Шувалов


кстати, кто мешает сделать сначала под win - отладить всё и потом уже портануть?

}:+()___ [Smile]Постоялецwww6 окт. 201720:50#43
Роман Шувалов
> Линукс.
У интела наилучшая поддержка линукса среди GPU-вендоров.
Ты точно пробовал скачать с того сайта?
RanmaПостоялецwww6 окт. 201721:15#44
slava_mib
+ Хуже может быть только если заменить в этой цепочке OpenGL на DirectX

Роман Шувалов
https://software.intel.com/en-us/gpa/free-download https://software.intel.com/node/543888#Getting_Started_for_Ubuntu_applications - вроде как то что нужно, и есть для бубунты пакет.

Правка: 6 окт. 2017 21:16

Страницы: 1 2 3 4 5 Следующая »

/ Форум / Программирование игр / Графика

2001—2018 © GameDev.ru — Разработка игр