Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.09.2010, 23:48   #1
jec
Пользователь
 
Регистрация: 04.09.2010
Сообщений: 42
Восклицание engine

использую связку SDL+OpenGL+C++

решил вот написать движок, а точнее переписать все занаво так как прошлый был просто ужасен и было только одно решение: Shift+Delete

еще поизучав движки разные в инете придумал примерную архитектуру.

архитектура следующая (только пру слов)
для начало решил написать SystemCore
в нем для начала будет класс приложения (там будет создаваться приложение(окно и тд)
далее будет менеджер состояния и менеджер процессов

в начале буду писать класс приложения
но хочу узнать что бы там написать?? тоесть как сделать там создание окна это просто, но что еще туда засунуть
или вобще убрать этот класс и написать создание окна где нить в другом месте (например в классе графического ядра, но вроде все таки оставить тут)

и потом буду писать класс менеджера состояния
почитал в одной статье как там делали но совсем не понравилось как там используется и вобще все =((
как я себе представляю его это так:
есть несколько вариантов менеджера состояния
такие как:
1 ролики
2 меню
3 главное состояние - сама игра
и вот как я представляю использование этого:
указываем какое состояние использовать и пишем что делать, например если ролики то загрузить ролик и проиграть его
потом идет состаяние меню, там появляется бэкграунд и пункты и при нажатии на какой нить пункт там показывается новые пункты

а как это делать не представляю
с роликами еще более менее там создать метод загрузки ролика и метод произведение его
тоесть включаешь это состояние и пишешь загрузить ролик, и пишешь воспроизвести, и оно все делает, после завершения включается следующее состояние и там уже пишешь метод загрузки картинки и ставишь на бэкграунд и пункты, но это все позже
сейчас я хочу написать как это вобще возможно сделать?? тоесть
мне нужно будет в главном файле проекта (систем коре будет в отдельном h и cpp) менять состояние как возможно менять?? и самый главный вопрос нормально так делать или еще что нить придумывать?? ну и что кинуть в класс приложения??

Последний раз редактировалось jec; 09.09.2010 в 00:01.
jec вне форума Ответить с цитированием
Старый 09.09.2010, 08:07   #2
kogemrka
Форумчанин
 
Аватар для kogemrka
 
Регистрация: 08.01.2010
Сообщений: 165
По умолчанию

Идеи по архитектуре, небось, почерпнул отсюда? http://habrahabr.ru/blogs/gdev/102930/

Так почему бы не сделать StateManager так же как там?

Цитата:
Сообщение от jec Посмотреть сообщение
что кинуть в класс приложения??
А что тебе нужно от класса приложения? Ориентируйся от своих потребностей - нужна некоторая возможность - реализуй. Не нужна - не реализовывай.

PS. Собираюсь в ближайшие выходные тоже заняться велосипедописательством (да, меня тоже пропёр тот перевод на хабрахабре). В голове есть пара мыслей на счёт движка. Предлагаю стукнуть мне в аську (274290875) и обсудить, если какие-нибудь вопросы появятся.
kogemrka вне форума Ответить с цитированием
Старый 09.09.2010, 10:15   #3
jec
Пользователь
 
Регистрация: 04.09.2010
Сообщений: 42
По умолчанию

да мысля от туда
я просто скачал исходник и попытался разобратся в нем и чет не оч понравилось как там устроен state manager
я свое придумал но вот как делать его совсем не понял
тоесть надо как то устанавить его и если он установлен то можно выполнить то и то
сейчас попробую кое как сделать, какая то мысль нашла =)) а то вчера полное забвение было =) (обливион)

ЗЫ. у мя линукс, а аськи вроде на линукс нету, может лучше скайп?? (сейчас скачаю и кину ник, а то забыл)
jec вне форума Ответить с цитированием
Старый 09.09.2010, 10:34   #4
the_deer_one
Участник клуба
 
Аватар для the_deer_one
 
Регистрация: 04.04.2010
Сообщений: 1,554
По умолчанию

jec
Цитата:
у мя линукс, а аськи вроде на линукс нет
empathy, pidgin
the_deer_one вне форума Ответить с цитированием
Старый 09.09.2010, 12:37   #5
kogemrka
Форумчанин
 
Аватар для kogemrka
 
Регистрация: 08.01.2010
Сообщений: 165
По умолчанию

...qutim, kopete, ...
kogemrka вне форума Ответить с цитированием
Старый 09.09.2010, 12:49   #6
.pixel
c++, dx/ogl
Форумчанин
 
Аватар для .pixel
 
Регистрация: 10.11.2008
Сообщений: 131
По умолчанию

Пример с хабра чем-то напоминает мне пример из одной книжки) темболее в книге несколько больше информации по данному вопросу)Адамс Джим - Программирование ролевых игр с DirectX, 2-е издание:
“Batch, Batch, Batch:” What Does It Really Mean?
I am a donut! Ask not how many tris/batch, but
rather how many batches/frame!
.pixel вне форума Ответить с цитированием
Старый 09.09.2010, 21:42   #7
jec
Пользователь
 
Регистрация: 04.09.2010
Сообщений: 42
По умолчанию

а кокрето можно какой нить момент?? (желательно онлайн а то качать влом сильно)
jec вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Engine as345 Gamedev - cоздание игр: Unity, OpenGL, DirectX 0 14.01.2010 15:19
Source Engine / VC++ / 3000WMR AXiuS7 Фриланс 4 20.03.2009 14:13
Asphyre Engine JTG Gamedev - cоздание игр: Unity, OpenGL, DirectX 0 29.01.2009 13:22
Вопрос по DataLife Engine kAND PHP 7 24.09.2007 22:52
Aquatica engine MagicIndie Gamedev - cоздание игр: Unity, OpenGL, DirectX 4 23.04.2007 18:33