PMG
http://forum.pmg.org.ru/

Формат хранения данных об объектах в игровом проекте
http://forum.pmg.org.ru/viewtopic.php?f=4&t=7931
Страница 1 из 1

Автор:  _Dok_ [ 15 мар 2010 14:47 ]
Заголовок сообщения:  Формат хранения данных об объектах в игровом проекте

Хочу посоветоваться: какой вариант хранения данных об объектах игры наиболее эффективен?
Варианты хранения:
- массив;
- связанный список;
- bsp-дерево;
- …..
Это малый список того, что можно использовать.
По моему мнению массив использовать не совсем удобно, так как при инициализации сразу придётся выделять память например под 100 объектов, а может получиться что понадобится лишь 45 например объектов – не экономно. Использование связанных списков решает выше упомянутую проблему в статье с gamedev.ru “Объекты в играх: организация игрового цикла” (http://www.gamedev.ru/code/articles/?id=4232) рассказывается, как создаём список всех объектов и проходим по ним, опять же любое лишнее прохождение по списку приводит к выполнению «большого перебора».
Bsp-дерево используется для рендеринга и коллизий, в принципе можно и для хранения объектов использовать или вариант сделать иерархию в связанном списке.
Какие ещё есть предложения для хранения, получения быстрого доступа, использования объектов в игровом проекте?

Автор:  MagicWolf [ 15 мар 2010 16:28 ]
Заголовок сообщения:  Re: Формат хранения данных об объектах в игровом проекте

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

Автор:  _Dok_ [ 15 мар 2010 16:34 ]
Заголовок сообщения:  Re: Формат хранения данных об объектах в игровом проекте

В принципе я предполагаю делать так:
Создаём класс объект, заполняем необходимой информацией(позиция, описание необходимое, сетка и т.д.).
Создаём связной список ссылок на объекты в виде дерева(при этом можно разделить на под категории объекты, кому удобнее и просто линейный).
И используем как необходимо....

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/