2010-10-25 2 views
0

Я пишу движок игры AS3/Flex4, и я хочу иметь базовый класс для любого элемента, который можно поместить в сценарный график. Я задавался вопросом, является ли расширение UIComponent правильным подходом, но там, кажется, есть много внутреннего материала, там я не хочу запутываться ... если возможно, у меня будет некоторое разделение между моим движком и инфраструктурой Flex , И я не уверен, добавляет ли UIComponent накладные расходы?Какие интерфейсы/базовый класс должен реализовать/расширить класс базового рендерируемого ядра AS3?

Мое ренесансное основание может делать довольно произвольные вещи, но на данный момент состоит из рисования простых фигур, таких как линии и другие примитивы.

Что может сделать достойную архитектуру? Кроме того, у многих игровых движков есть метод «рендеринга», чтобы перерисовать всю сцену ... но я предполагаю, что в приложении Flex я должен играть с DisplayObjectContainer или Canvas, а не свернуть свой собственный?

ответ

3

Если вы делаете игровой движок, я бы посоветовал вам оставаться вдали от классов Flex. Они сделаны из кожи, расширяемы и универсальны. Ни один из них не делает их особенно быстрыми.

Пойдите с самым простым классом кости, с которым вы можете обойтись, в этом случае Sprite кажется лучшим выбором.

+0

Что относительно DisplayObject? –

+0

@John. Вы не можете реализовать DisplayObject (это не интерфейс), и вы не можете его расширять: он не помечен как final, но ведет себя так, как если бы он был окончательным и абстрактным; вы не можете установить его напрямую, и вы можете подклассифицировать его напрямую, или во время выполнения ваш конструктор вызовет ArgumentError; это связано с уродливым взломом в API списка отображения, но так оно и есть. Итак, я бы сказал, пойдите со Спрайтом. –

+0

+1. Не ходите по маршруту Flex для игрового движка. Есть много вещей, которые вам не понадобятся, но они добавили бы высокую стоимость исполнения (и время загрузки во многих случаях). Кроме того, в большинстве (всех?) Флеш-игр не используется Flex, поэтому эти игры должны добавлять непрямую (и, возможно, нежелательную) зависимость, если они должны использовать ваш движок. –

Смежные вопросы