示例#1
0
        public AnimMesh
        (
            AssimpString?mName = null,
            System.Numerics.Vector3 *mVertices   = null,
            System.Numerics.Vector3 *mNormals    = null,
            System.Numerics.Vector3 *mTangents   = null,
            System.Numerics.Vector3 *mBitangents = null,
            uint?mNumVertices = null,
            float?mWeight     = null
        ) : this()
        {
            if (mName is not null)
            {
                MName = mName.Value;
            }

            if (mVertices is not null)
            {
                MVertices = mVertices;
            }

            if (mNormals is not null)
            {
                MNormals = mNormals;
            }

            if (mTangents is not null)
            {
                MTangents = mTangents;
            }

            if (mBitangents is not null)
            {
                MBitangents = mBitangents;
            }

            if (mNumVertices is not null)
            {
                MNumVertices = mNumVertices.Value;
            }

            if (mWeight is not null)
            {
                MWeight = mWeight.Value;
            }
        }
示例#2
0
        public unsafe static System.Numerics.Vector3[] ToNVector3(this SharpDX.Vector3[] positions)
        {
            var result = new System.Numerics.Vector3[positions.Length];

            fixed(SharpDX.Vector3 *_pSrc = positions)
            {
                fixed(System.Numerics.Vector3 *_pDst = result)
                {
                    SharpDX.Vector3 *        pSrc = _pSrc;
                    System.Numerics.Vector3 *pDst = _pDst;
                    var end = pSrc + positions.Length;

                    for (; pSrc < end; ++pSrc, ++pDst)
                    {
                        *pDst = *((System.Numerics.Vector3 *)pSrc);
                    }
                }
            }

            return(result);
        }
示例#3
0
        public Mesh
        (
            uint?mPrimitiveTypes = null,
            uint?mNumVertices    = null,
            uint?mNumFaces       = null,
            System.Numerics.Vector3 *mVertices   = null,
            System.Numerics.Vector3 *mNormals    = null,
            System.Numerics.Vector3 *mTangents   = null,
            System.Numerics.Vector3 *mBitangents = null,
            Face *mFaces                       = null,
            uint?mNumBones                     = null,
            Bone **mBones                      = null,
            uint?mMaterialIndex                = null,
            AssimpString?mName                 = null,
            uint?mNumAnimMeshes                = null,
            AnimMesh **mAnimMeshes             = null,
            uint?mMethod                       = null,
            Silk.NET.Maths.Box3D <float>?mAABB = null
        ) : this()
        {
            if (mPrimitiveTypes is not null)
            {
                MPrimitiveTypes = mPrimitiveTypes.Value;
            }

            if (mNumVertices is not null)
            {
                MNumVertices = mNumVertices.Value;
            }

            if (mNumFaces is not null)
            {
                MNumFaces = mNumFaces.Value;
            }

            if (mVertices is not null)
            {
                MVertices = mVertices;
            }

            if (mNormals is not null)
            {
                MNormals = mNormals;
            }

            if (mTangents is not null)
            {
                MTangents = mTangents;
            }

            if (mBitangents is not null)
            {
                MBitangents = mBitangents;
            }

            if (mFaces is not null)
            {
                MFaces = mFaces;
            }

            if (mNumBones is not null)
            {
                MNumBones = mNumBones.Value;
            }

            if (mBones is not null)
            {
                MBones = mBones;
            }

            if (mMaterialIndex is not null)
            {
                MMaterialIndex = mMaterialIndex.Value;
            }

            if (mName is not null)
            {
                MName = mName.Value;
            }

            if (mNumAnimMeshes is not null)
            {
                MNumAnimMeshes = mNumAnimMeshes.Value;
            }

            if (mAnimMeshes is not null)
            {
                MAnimMeshes = mAnimMeshes;
            }

            if (mMethod is not null)
            {
                MMethod = mMethod.Value;
            }

            if (mAABB is not null)
            {
                MAABB = mAABB.Value;
            }
        }