Показать сообщение отдельно
Старый 08.12.2003, 19:36
Geniot вне форума Посмотреть профиль Отправить личное сообщение для Geniot Посетить домашнюю страницу Geniot Найти все сообщения от Geniot
  № 1  
Geniot

Регистрация: Oct 2002
Адрес: Minsk, Belarus
Сообщений: 103
Отправить сообщение для Geniot с помощью ICQ
По умолчанию Вопрос по архитектуре программирования игр на флэше

Народ, подскажите, может в книжках такое уже расписывали. А у меня и денег и времени нет читать книги. Всё из интернета беру.
Вот такие вопросы:
Предположим я хочу написать игру - 2D ходилку, типа Dizzy или Seymour, которые раньше были на ZX-Spectrum'ах. Кто знает, тот поймёт.
Вот как я себе это представляю:
Каждый движущийся объект на экране - отдельный класс со свойствами и методами. Возможно будет 1 обстрактный класс - Enemy - враг, от которого все будут наследовать.
Есть класс Screen - он инициализируется статическими и динамическими объектами - врагами, например. У Screen'a есть матрица - она инициализируется изначально только статическими объектами. Потом все объекты классов (врагов и героя) начинают взаимодействовать с матрицей Screen'a и ведут себя по законам определённым в классах этих объектов.
Например, вопрос:
Каждый объект должен действовать асинхронно с помощью setInterval , например, или следует создать какой нибудь manager, который будет опрашивать объекты?
Сколько RAM может использовать флэш плеер? следует ли буферизовать соседние Screen'ы?
Каких размеров лучше делать матрицу? В каждой ячейке лучше хранить цифры от 0 до 9 , например? а не true/false. Какого размера ячейки?
Возможны ли проблемы со скоростью игры? Следует ли использовать где-нибудь onEnterFrame?

Главный вопрос: если у вас есть опыт подобного программирования или другие варианты решения 2D игры, можете ли вы что-нибудь посоветовать для вышеизложенного решения? или предложить свой.

Ещё вопрос: можно ли написать "единый" движок для 2D игр, с абстрактными классами врагов, статических взаимодействующих объектов (например кувшин, который можно разбить ногой)? скорее, вопрос, не "можно ли", а имеет ли смысл, и не окажется ли в конце, что это никому не нужно, этот движок глючит, сплошные тормоза и вообще C++ рулит.

За любые профессиональные комментарии и предложения буду очень признателен.
__________________
Не всё то флэш, что шевелиться.