Пример #1
0
        public virtual Assimp.Node assimpExport(ref Assimp.Scene scn, ref Dictionary <int, int> meshImportStatus)
        {
            //Default shit
            //Create assimp node
            Assimp.Node node = new Assimp.Node(Name);
            node.Transform = MathUtils.convertMatrix(localMat);

            //Handle animations maybe?
            int animComponentId = hasComponent(typeof(AnimComponent));

            if (animComponentId > -1)
            {
                AnimComponent cmp = (AnimComponent)_components[animComponentId];
                cmp.assimpExport(ref scn);
            }

            foreach (Model child in children)
            {
                Assimp.Node c = child.assimpExport(ref scn, ref meshImportStatus);
                node.Children.Add(c);
            }


            return(node);
        }
Пример #2
0
        public void copyFrom(AnimComponent input)
        {
            //Base class is dummy
            //base.copyFrom(input); //Copy stuff from base class

            //TODO: Copy Animations
        }
Пример #3
0
        public override Component Clone()
        {
            AnimComponent ac = new AnimComponent();

            //Copy Animations
            foreach (AnimData ad in _animations)
            {
                AnimData clone = ad.Clone();
                ac.Animations.Add(clone);
                ac._animDict[clone.PName] = clone;
            }

            return(ac);
        }
Пример #4
0
 protected AnimComponent(AnimComponent input)
 {
     this.copyFrom(input);
 }