Показать сообщение отдельно
Старый 28.08.2007, 13:48
nauroman вне форума Посмотреть профиль Отправить личное сообщение для nauroman Найти все сообщения от nauroman
  № 7  
Ответить с цитированием
nauroman
 
Аватар для nauroman

Регистрация: Sep 2005
Сообщений: 50
Хотя нет, вру. Не работает.

т.е. после
Код:
...
public class AnimObjectContainer3D extends ObjectContainer3D
{
    public function AnimObjectContainer3D(init:Object = null)
    {
        super(init);
    }

    override public function addChild(param_child:Object3D):void
    {
			
        if (param_child.parent != null)
       {
           var prevTransform = Matrix3D.multiply(param_child.parent.transform, param_child.transform);
       }
			
       super.addChild(param_child);
			
       if (prevTransform != null)
       {
           param_child.transform = Matrix3D.multiply(Matrix3D.inverse(transform), prevTransform);
       }
...
param_child остаётся в своей позиции, типа всё ok,но если после этого выполнить

Код:
param_child.rotationX = param_child.rotationX;
param_child.rotationY = param_child.rotationY;
param_child.rotationZ = param_child.rotationZ;
то вращение param_child сбивается, и такой код

Код:
var rot = Matrix3D.matrix2euler(param_child.transform);
param_child.rotationX = rot.x;
param_child.rotationY = rot.y;
param_child.rotationZ = rot.z;
не помогает