Установите точку схода сцены во Flash с помощью actionscript 3

Я работаю с несколькими дизайнерами, каждый из которых создал 3D-анимацию (используя возможности fp 10) для использования в одном и том же флеш-приложении. Каждая 3D-анимация представляет собой уникальный мувиклип, который в конечном итоге будет частью одного и того же файла .fla.

Проблема, с которой я сталкиваюсь, заключается в том, что каждый из мувиклипов был создан в отдельном .fla, и каждый .fla имел разные настройки точки схода для сцены. Это означает, что после импорта различных клипов в мою библиотеку ни один из визуальных ресурсов не выровнен так, как в исходном .flas.

Хорошая новость заключается в том, что одновременно отображается только один из этих фрагментов ролика, поэтому мне не нужно иметь несколько точек схода; все, что мне нужно сделать, это программно изменить глобальную точку схода в различных точках во время выполнения.

Что я должен делать? Я пытался получить доступ к root.transform.perspectiveProjection.projectionCenter и динамически присвоить ему значения new Point(x, y), но, похоже, они не оказывают никакого влияния на 3D-мувиклипы.

Спасибо!


person justinbach    schedule 20.01.2010    source источник


Ответы (2)


У каждого клипа может быть собственная точка схода, попробуйте проверить, какие экземпляры их мувиклипов имеют это значение (transform.perspectiveProjection.projectionCenter)

person grapefrukt    schedule 21.01.2010
comment
Если я пытаюсь установить точку схода для mc, отличного от основной сцены, я получаю эту ошибку: Ошибка № 1009: Не удается получить доступ к свойству или методу нулевой ссылки на объект. мой код: movieclip_mc.transform.perspectiveProjection.projectionCenter = new Point(100,100); - person Kokodoko; 09.10.2014
comment
Я думаю, вам нужно убедиться, что на самом деле существует перспектива Projection, прежде чем ее менять. - person grapefrukt; 12.10.2014
comment
Да, это было так. Я предположил, что это будет автоматически, потому что точка проекции основной сцены МОЖЕТ быть установлена ​​без предварительного создания новой точки. - person Kokodoko; 14.10.2014

Как насчет использования localToGlobal для вычисления новой точки для каждого из различных фрагментов ролика?

person Robert    schedule 20.01.2010