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


C# MegaModifiers.GetDestUvs方法代码示例

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


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

示例1: Modify

	public override void Modify(MegaModifiers mc)
	{
		Vector2[]	uvs = mc.GetSourceUvs();
		Vector2[]	newuvs = mc.GetDestUvs();

		if ( uvs.Length > 0 )
		{
			Vector3 pos = -gizmoPos;
			Vector3 scl = gizmoScale;
			Vector3 rot = gizmoRot;

			Matrix4x4 tm1 = Matrix4x4.identity;
			Vector3 p = Vector3.zero;
			for ( int i = 0; i < uvs.Length; i++ )
			{
				p.x = uvs[i].x - Offset.x - 0.5f;
				p.z = uvs[i].y - Offset.z - 0.5f;
				p.y = 0.0f;

				float d = Mathf.Sqrt(p.x * p.x + p.z * p.z) * spiral;

				rot = new Vector3(gizmoRot.x, gizmoRot.y + d, gizmoRot.z);
				tm1 = Matrix4x4.TRS(pos, Quaternion.Euler(rot), scl);

				p = tm1.MultiplyPoint(p);
				newuvs[i].x = p.x;
				newuvs[i].y = p.z;
			}
		}
	}
开发者ID:xiaopangoo,项目名称:MotionPlatform,代码行数:30,代码来源:MegaUVAdjust.cs

示例2: Modify

    //public override void Modify(ref Vector3[] sverts, ref Vector3[] verts)
    public override void Modify(MegaModifiers mc)
    {
        Vector2[]	uvs = mc.GetSourceUvs();
        Vector2[]	newuvs = mc.GetDestUvs();

        if ( mat == null || twidth == 0.0f )
            Init();

        if ( uvs.Length > 0 )
        {
            //Debug.Log("twidth " + twidth);
            xtiles = twidth / TileWidth;
            ytiles = theight / TileHeight;

            tuvw = (float)TileWidth / (float)twidth;
            tuvh = (float)TileHeight / (float)theight;

            maxframe = xtiles * ytiles;

            Frame = Frame % maxframe;

            int x = Frame % xtiles;
            int y = Frame / xtiles;

            float su = (x * tuvw);
            float sv = (y * tuvh);

            for ( int i = 0; i < uvs.Length; i++ )
            {
                Vector2 uv = Vector2.Scale(uvs[i] + off, scale);

                if ( flipy )	uv.y = 1.0f - uv.y;
                if ( flipx )	uv.x = 1.0f - uv.x;

                uv.x = su + (tuvw * uv.x);
                uv.y = 1.0f - (sv + (tuvh * uv.y));
                newuvs[i] = uv;
            }
        }
    }
开发者ID:jsr2k1,项目名称:videojocjj,代码行数:41,代码来源:MegaUVTiles.cs


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