当前位置: 首页>>代码示例>>C#>>正文


C# pb_Object.GetSharedIndices方法代码示例

本文整理汇总了C#中pb_Object.GetSharedIndices方法的典型用法代码示例。如果您正苦于以下问题:C# pb_Object.GetSharedIndices方法的具体用法?C# pb_Object.GetSharedIndices怎么用?C# pb_Object.GetSharedIndices使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pb_Object的用法示例。


在下文中一共展示了pb_Object.GetSharedIndices方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: pb_SerializableObject

        public pb_SerializableObject(pb_Object pb)
        {
            this.vertices = pb.vertices;

            // Make sure the mesh is valid, and in sync with current pb_Object
            if(pb.msh == null || pb.msh.vertexCount != pb.vertexCount)
            {
                pb_UpgradeKitUtils.RebuildMesh(pb);
            }

            this.uv = pb.msh != null ? pb.msh.uv : null;

            if(pb.msh != null && pb.msh.colors != null && pb.msh.colors.Length == pb.vertexCount)
            {
                this.color = pb.msh.colors;
            }
            else
            {
                this.color = new Color[pb.vertexCount];
                for(int i = 0; i < this.color.Length; i++)
                    this.color[i] = Color.white;
            }
            this.faces = pb.faces;
            this.sharedIndices = (int[][])pb.GetSharedIndices().ToArray();

            PropertyInfo prop_uv = pb.GetType().GetProperty("sharedIndicesUV", BindingFlags.Instance | BindingFlags.Public);

            if(prop_uv != null)
            {
                var val = prop_uv.GetValue(pb, null);

                if(val != null)
                {
                    pb_IntArray[] sharedUvs = (pb_IntArray[])val;
                    this.sharedIndicesUV =  (int[][])sharedUvs.ToArray();
                }
                else
                {
                    this.sharedIndicesUV = new int[0][];
                }
            }
            else
            {
                this.sharedIndicesUV = new int[0][];
            }

            PropertyInfo prop_userCollisions = pb.GetType().GetProperty("userCollisions", BindingFlags.Instance | BindingFlags.Public);
            userCollisions = prop_userCollisions == null ? false : (bool) prop_userCollisions.GetValue(pb, null);
        }
开发者ID:HaikunHuang,项目名称:TutorialForTaikeQ,代码行数:49,代码来源:pb_SerializableObject.cs

示例2: InitWithObject

	/**
	 *	\brief Duplicates and returns the passed pb_Object.
	 *	@param pb The pb_Object to duplicate.
	 *	\returns A unique copy of the passed pb_Object.
	 */
	public static pb_Object InitWithObject(pb_Object pb)
	{
		Vector3[] v = new Vector3[pb.vertexCount];
		System.Array.Copy(pb.vertices, v, pb.vertexCount);

		pb_Face[] f = new pb_Face[pb.faces.Length];
		
		for(int i = 0; i < f.Length; i++)
			f[i] = new pb_Face(pb.faces[i]);

		pb_Object p = CreateInstanceWithVerticesFacesSharedIndices(v, f, pb.GetSharedIndices());

		p.gameObject.name = pb.gameObject.name + "-clone";

		return p;
	}
开发者ID:BasmanovDaniil,项目名称:RoyalDefenestrator,代码行数:21,代码来源:pb_Object.cs

示例3: InitWithObject

	/**
	 *	\brief Duplicates and returns the passed pb_Object.
	 *	@param pb The pb_Object to duplicate.
	 *	\returns A unique copy of the passed pb_Object.
	 */
	public static pb_Object InitWithObject(pb_Object pb)
	{
		Vector3[] v = new Vector3[pb.vertexCount];
		System.Array.Copy(pb.vertices, v, pb.vertexCount);
		
		Vector2[] u = new Vector2[pb.vertexCount];
		System.Array.Copy(pb.uv, u, pb.vertexCount);

		Color[] c = new Color[pb.vertexCount];
		System.Array.Copy(pb.colors, c, pb.vertexCount);

		pb_Face[] f = new pb_Face[pb.faces.Length];
		
		for(int i = 0; i < f.Length; i++)
			f[i] = new pb_Face(pb.faces[i]);

		pb_Object p = CreateInstanceWithElements(v, u, c, f, pb.GetSharedIndices(), pb.GetSharedIndicesUV());

		p.gameObject.name = pb.gameObject.name + "-clone";

		return p;
	}
开发者ID:itubeasts,项目名称:I-eaT-U,代码行数:27,代码来源:pb_Object.cs


注:本文中的pb_Object.GetSharedIndices方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。