Как предотвратить размывание изображения в Flash после увеличения с помощью свойства `z`? - PullRequest
3 голосов
/ 01 сентября 2011

В настоящее время я тестирую различные способы увеличения изображений (или, скорее, целые иерархии DisplayList). Использование scaleX и scaleY работает довольно хорошо, но когда я использую свойство z для увеличения изображения (поместив его дальше), изображение становится размытым при возврате к z=0.

Изображение помещается в Sprite ("groundLayer"), а само Sprite помещается в другой Sprite ("zoomLayer"). Всякий раз, когда я масштабирую, я манипулирую свойствами только "zoomLayer".

Это изображение было получено сразу после возврата scaleX и scaleY обратно на 1.0: no blurring

Это изображение было сделано сразу после возврата z обратно к 0.0: slight blurring

Я пытался найти информацию об этом явлении, но не смог найти ничего полезного. Кто-нибудь может объяснить, что там происходит? Почему Flash размывает изображение после манипулирования свойством z? Есть ли способ предотвратить это (ну, кроме как явно оставить z в покое)?

1 Ответ

9 голосов
/ 01 сентября 2011

всякий раз, когда вы представляете 3D, работаете под другим механизмом рендеринга, он делает вещи размытыми до чертиков, и его следует избегать, если это возможно.Чтобы противодействовать проблеме при возврате к ее первоначальному размеру, вам нужно установить mc.transform.matrix3D = null;, тогда он вернется в 2D-пространство и снова будет отображаться как обычно.если вы хотите сделать это, находясь в другом месте, посмотрите примеры здесь , чтобы попытаться выбрать что-то более полезное для вас:

В этом примере я не вижу причин, почемуВы бы предпочли использовать 3D-движок, а не 2D-шкалу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...