Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование игр, графики и искусственного интеллекта > RTS HGE


Автор: Shadowlord 14.12.2008, 17:52
Нужно разработать заготовку RTS "Битва за дюну". Для упрощение своей задачи решил использовать HGE. 
С движком вроде потихоньку разбираюсь. Основная проблема в организации самого игрового цикла.

Как я себе это представляю(может здесь где ошибка):
Есть контейнер какого то общего для всех  игровых объектов класса, мы просматриваем его и собственно производим какие либо изменения. Выходит что у меня должны быть отдельные классы наследники базового для игроков, юнитов ,событий,задач, блоков карты; я вот думаю что разумно внести деление еще на отображаемые объекты и нет;

А теперь попробую более конкретно формулировать вопросы:
1)не посредственно основной базовый класс назовем его CGameObject как он должен выглядеть и как в организовать контейнер

2)Хочу использовать блочную графику(карта 32*32 блока, блок 32*32 пикселя), как ее лучше хранить в файле и собственно загружать
я пока сделал класс CCell (блок карты) у которого есть такие характеристики количество спайса, проходимость и координаты.
Пытаюсь загрузить карту из текстового файла, то есть считываю символ и в зависимости от того равен ли он     0,1,2  создается объект с нужными параметрами(0=>песок;1=>спайс;2=>скала;). В теории это должно работать но как быть при большом количестве блоков в дальнейшем я планирую использовать по 9 блоков для каждой поверхности и того уже 27;

3)Не могу сообразить как раздавать  задания юнитам. Я предполагаю сделать для этого класс CGameTask выходит что обьект этого класса должен создаваться в объектом класса СPlayer

....
В  общем вопросов море, в теории вроде все представляю а как доходит дела до кода, встаю в ступор. Может у кого есть какие примеры или исходники. Заранее спасибо 

P.S. C++ MVS 2008


 

Автор: arilou 16.12.2008, 22:36
Цитата(Shadowlord @  14.12.2008,  17:52 Найти цитируемый пост)
1)не посредственно основной базовый класс назовем его CGameObject как он должен выглядеть и как в организовать контейнер


http://blog.gamedeff.com/?p=19
http://en.wikipedia.org/wiki/God_object
http://en.wikipedia.org/wiki/Big_Hairy_Object

Суть: не нужен GameObject. 


Общий подход такой: начинаешь с простого, двигаешься к сложному:

1) Ячейка
2) Карта
3) Стоящий юнит
4) http://www.gamedev.ru/articles/?id=70121
5) Управление юнитом
6) Простое поведение юнита: самостоятельное движение по рассчитанному пути
7) http://aigamedev.com/tutorials/build-simulation-game-ai. А дальше уже думаю сам сообразишь.



Автор: Shadowlord 17.12.2008, 13:48
arilou,  спасибо за ответ

Автор: Ryoga 20.12.2008, 01:47
Поясните несведующему что такое HGE? smile

Автор: arilou 20.12.2008, 01:56
Ryoga, наверное речь идет о http://hge.relishgames.com/

Автор: Shadowlord 21.12.2008, 07:18
Да именно о нем

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)