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

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

Страницы: 1 2 3 Следующая »
#0
1:03, 23 ноя. 2005

Комментарий к Статье Применение иерархии объектов в играх.


#1
1:03, 23 ноя. 2005

а если у меня не машинка с калесиками а предположим массив 100х100 и там есть и камни каторые валяться и обьекты агресивные каторые рыскают по доступному
пространству ... ну и соотвтественно наш перс .. как в таком случае мне производить цикл и проверку на столкновение ... :( а простой 2 мерный масив не выход ... но не хочеться ..
есть ли выход ??

#2
4:23, 23 ноя. 2005

Тема интересная, но раскрыта не полно. дано по сути лишь описание паттерна Composite. Этого конечно же недостаточно. Как передавать сообщения по иерархии классов(не объектов)? нужно ли хранить в одном дереве и логическую и физическую и другие струкутуры? если их разделять, то как синхронизировать? почему именно дерево, а не другой вид графов? ну и т.д. и т.п.

Прошло более 2 лет
#3
17:36, 29 окт. 2008

Вообще тема scene - graph-ов в интернете освещена мало ( с точки зрения реализации) , следует лишь обратить внимание на то, что нам нужно чтобы быстрее всего выполнялся проход по дереву, поиск эл-та нам особенно не важен, а вот обновление узла и его потомков - это чтоб работало быстро.
Надо бы почитать про реализации АТД типа Дерево :)
ИМХО все упирается в организацию именно этой структуры. Думаю, что неплохим вариантом было бы ограничить число сыновей у одного узла, при этом можно (если число обьектов в игре известно или меняется незначительно) воспользоваться так называемым развернутым представлением дерева. Это означает что память под узлы выделяется сразу на все, независимо от того есть узел или нет.

#4
15:24, 16 янв. 2009

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

Прошло более 9 месяцев
#5
14:21, 23 окт. 2009

Как получить указатель на объект дерева, (ищу перебором по ID, указанному при инициализации)? При обходе листа дочерних объектов возвращается указатель на базовый класс, а нужен его потомок со своими специфическими свойствами...

#6
17:44, 23 окт. 2009

используй  dynamic_cast<>()...

Прошло более 6 лет
#7
23:45, 27 мая 2016

Рендеринг и апдейт объекта не должен реализовываться самим объектом. Этим должен заниматься кто нибудь другой. И вообще иерархия объектов эта тема обширная и она не существует отдельно от определённой архитектуры движка. Я сам искал по этой теме инфу, и не мог найти. Поэтому пришлось самому догонять

#8
0:44, 28 мая 2016

Тема подсистем не раскрыта.

#9
8:12, 28 мая 2016

ЛОПАТА

#10
9:13, 28 мая 2016

Не лучший выбор. Куча виртуальных функций и много ООП. Прощай кэш.
Стоит блог движка bitsquid почитать.

#11
11:35, 28 мая 2016

Я как раз с такого начинал делать свой движок.

HplusDiese
> Стоит блог движка bitsquid почитать.
И ещё molecular-matters.

#12
11:39, 28 мая 2016
-Eugene-
> ЛОПАТА
Комментарии к статье - я бы не называл лопатой.
#13
21:04, 28 мая 2016
MrShoor
Странно ожидать современных решений от статьи, написанной в доисторические времена.
#14
21:43, 28 мая 2016

-Eugene-
> Странно ожидать современных решений от статьи, написанной в доисторические
> времена.
Но в доисторические времена как раз и следовало избегать виртуальных вызовов. Это сейчас в L2 можно пол-программы уместить (вторая половина обрабатывает случай, когда на клавиатуру садится кошка, а на Марсе - шторм); а тогда на них можно было действительно что-то потерять.
bretbas
> апдейт объекта не должен реализовываться самим объектом
А вот это, кстати, наркомания. Код обновления должен находиться рядом с тем, что он обновляет.

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