Столкнулся с непонятной для меня особенностью away3d 4.0: если использовать метод view.camera.project() для проецирования 3D-точки в 2D-плоскость экрана в конструкторе основного спрайта флешки, или же в обработчике его события Event.ADDED_TO_STAGE, проецирование выполняется неверно (по крайней мере, оно не совпадает с последующими попытками спроецировать ту же точку). Тоже поведение наблюдается и при использовании метода в обработчике Event.ENTER_FRAME при его первых 3-4 срабатываниях.
Описанное выше поведение я замечаю при использовании линзы OrthographicLens, а ошибка проецирования заключается в сжатии проекции по оси Ox.
Как оказалось, на линзе возникает событие LensEvent.MATRIX_CHANGED, до которого проецирование неверное, а после которого становится верным. Поэтому, если после инициализации флешки есть необходимость спроецировать какую-либо 3d-точку с использованием камеры, нужно дождаться сначала срабатывания события LensEvent.MATRIX_CHANGED.
Комментариев нет:
Отправить комментарий