Как я недавно обнаружил, установка width
/ height
свойств для Sprite
только заставляет Sprite
соответствовать указанным размерам путем масштабирования фактического размера , который вычисляетсяFlash на основе визуализированного контента.
Это оставляет меня в замешательстве.Если у меня есть пользовательский подкласс Sprite
, который рисует с использованием Graphics
, как я могу сделать макет перед начальным рендерингом - размер будет нулевым, пока он не будет отрисован впервые?
Для более сложной проблемы давайтескажем, у меня есть двумерный игровой мир с объектами, разбросанными по широкой области с мировыми координатами от (0,0) до (5000,5000), где каждый объект имеет размер, возможно, до 100x100.Я хочу иметь Flash-компонент, который является «окном игры» и имеет фиксированный размер, например 400x300, что делает рендеринг частью игрового мира.Так как же заставить размер игрового окна 400х300 пикселей?Я могу нарисовать прямоугольник 400x300, чтобы получить правильный размер, но затем, если я нарисую какие-либо объекты, которые частично видны, они могут испортить это.
Это правильный подход для предоставления пользовательского setSize(w,h)
метода, которыйиспользуется вместо width
& height
сеттеров?Но, несмотря на это, нет ли способа сделать Sprite
force того размера, который я хочу?Вы действительно должны ловить это каждый рендер и изменять его масштаб?