private GXVertex SMDVertexToGXVertex(SMDVertex v)
        {
            GXVertex o = new GXVertex()
            {
                Pos = new GXVector3(v.P.X, v.P.Y, v.P.Z),
                Nrm = new GXVector3(v.N.X, v.N.Y, v.N.Z),
                TX0 = new GXVector2(v.UV.X, v.UV.Y),
            };

            return(o);
        }
Esempio n. 2
0
        public SMDVertex GXVertexToSMDVertex(GXVertex v)
        {
            SMDVertex smdv = new SMDVertex()
            {
                Parent = 0,
                P      = new Vector3(v.Pos.X, v.Pos.Y, v.Pos.Z),
                N      = new Vector3(v.Nrm.X, v.Nrm.Y, v.Nrm.Z),
                UV     = new Vector2(v.TX0.X, v.TX0.Y),
            };

            smdv.Bones   = v.N;
            smdv.Weights = v.W;
            return(smdv);
        }
Esempio n. 3
0
        private static SMDVertex IOVertexToSMDVertex(IOVertex iovertex)
        {
            var smdvertex = new SMDVertex();

            smdvertex.Position = iovertex.Position;
            smdvertex.Normal   = iovertex.Normal;
            smdvertex.UV       = iovertex.UV0;

            int weightCount = CountWeights(iovertex.BoneWeights);

            smdvertex.Bones   = new int[weightCount];
            smdvertex.Weights = new float[weightCount];
            for (int i = 0; i < weightCount; i++)
            {
                smdvertex.Bones[0]   = (int)iovertex.BoneIndices[i];
                smdvertex.Weights[0] = iovertex.BoneWeights[i];
            }

            return(smdvertex);
        }