Войти
ПрограммированиеФорумОбщее

Применение иерархии объектов в играх. (Комментарии к статье) (2 стр)

Страницы: 1 2 3 Следующая »
#15
23:34, 28 мая 2016

Delfigamer
> Но в доисторические времена как раз и следовало избегать виртуальных вызовов.
> Это сейчас в L2 можно пол-программы уместить (вторая половина обрабатывает
> случай, когда на клавиатуру садится кошка, а на Марсе - шторм); а тогда на них
> можно было действительно что-то потерять.
Стоимость кеш-промаха с годами только растёт. И чтение из L2 вроде 10 тактов уже стоит. Так что наоборот проблема становится только актуальнее.

Delfigamer
> А вот это, кстати, наркомания. Код обновления должен находиться рядом с тем,
> что он обновляет.
Его обновляет внешняя система, которая хранит массив из всех объектов. Вполне рядом. Она также содержит информацию о всём графе сцены и связях объектов друг с другом. И многие указатели таким образом можно вынести из самих объектов. Поэтому система сможет оптимальнее хранить и обновлять свои объекты, чем объекты смогут сделать это сами.


#16
9:56, 29 мая 2016

Delfigamer
> А вот это, кстати, наркомания. Код обновления должен находиться рядом с тем,
> что он обновляет.
А как же DOD? Мейнстрим же.

#17
12:00, 29 мая 2016

HplusDiese
> Стоит блог движка bitsquid почитать.
Не стоит верить всему, что там написано ;)

#18
12:48, 29 мая 2016

gammaker
> И ещё molecular-matters.

Ага, а как с там дела с гибкостью ?

#19
14:23, 29 мая 2016

StiX
> Не стоит верить всему, что там написано ;)
А кто говорил, что нужно верить? Блоги разных девов это просто кладезь интересной информации(которую нужно проверять).

#20
14:27, 29 мая 2016

HplusDiese
> которую нужно проверять

Вот тут согласен полностью :)

#21
15:11, 29 мая 2016

innuendo
> Ага, а как с там дела с гибкостью ?
Ну вроде проблем пока не замечал.

#22
15:38, 29 мая 2016

gammaker
> Ну вроде проблем пока не замечал.

Попробуй добавить новый меш компонент

#23
17:07, 29 мая 2016

innuendo
> Попробуй добавить новый меш компонент
А зачем новый? Всё что рисуется - это меш - набор VBO с атрибутами или их часть. Модельки - меш, система частиц у меня - меш. Всё меш и представляется одним этим компонентом. Просто для динамических объектов он обновляется отдельными компонентами, а статические никто не трогает.

#24
17:18, 29 мая 2016

gammaker
> А зачем новый?

Я уже приводил пример с сменой материала. Или посмотри как в реальных движках

#25
17:19, 29 мая 2016

gammaker
> Стоимость кеш-промаха с годами только растёт. И чтение из L2 вроде 10 тактов
> уже стоит. Так что наоборот проблема становится только актуальнее.

На нормальных процессорах ? Или всяких обрезках PPC ?

#26
17:24, 29 мая 2016

innuendo
> Я уже приводил пример с сменой материала.
Где? При чём тут материалы?

innuendo
> Или посмотри как в реальных движках
Некогда специально что-то искать.

innuendo
> На нормальных процессорах ? Или всяких обрезках PPC ?
Ну вроде нормальных. Хотя не знаю, может и обрезках. Я где-то читал, то ли на каком-то из указанных выше блогов, то ли в книге Game Engine Architecture.

#27
17:30, 29 мая 2016

gammaker
> При чём тут материалы?

Ты работал с геймдизайнерами или художниками на реальных проектах ? Когда ты для себя, родного, пишешь - это совсем другое.

Что описывается в статье молекуляра это первое приближение, чтобы показать направление мысли так сказать.
В серьёзных движках всё гораздо сложнее :-

#28
19:58, 29 мая 2016
gammaker
> Модельки - меш, система частиц у меня - меш.
И небо - меш, и Аллах - тоже меш. :3

В тему кэшев и таблиц.
http://ideone.com/a52txX
Предполагаю, что с увеличением числа типов задержка на switch будет расти, тогда как скорость виртуального вызова будет оставаться примерно постоянной.
Не стоит так же забывать, что VMT тоже не раскиданы по всему образу, а последовательность "cmp+je" занимает определённое место, причём в каждой функции с выбором.

#29
20:04, 29 мая 2016

Delfigamer
> Предполагаю, что с увеличением числа типов задержка на switch будет расти,
> тогда как скорость виртуального вызова будет оставаться примерно постоянной.

На нормальных процессорах есть всякие предсказания косвенных переходов, как раз для virtual

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