UNITY3D 从网络获取图片 并 截取图片一部分显示
2013-03-18 11:31
295 查看
using UnityEngine; using System.Collections; public class GetWebImage : MonoBehaviour { string url = "http://img.hb.aicdn.com/240136a8caf6ae05d38f2f57d596aec10c44d1ff112df-4XaoQJ_fw580"; private Material material; IEnumerator Start () { WWW www = new WWW(url); yield return www; material = new Material(Shader.Find("Unlit/Transparent Colored")); material.mainTexture = www.texture; Split(4,4); } /// <summary> /// 分割图片 /// </summary> void Split(int width,int height) { float x = -400; float y = -200; for (int i = 0; i < width; i++ ) { for (int n = 0; n < height; n++) { GameObject obj = CreateObj(); SetUv(obj.GetComponent<MeshFilter>().mesh); obj.transform.localScale = new Vector3(material.mainTexture.width/width,material.mainTexture.height/height,1); x += 100; obj.transform.parent = transform.parent; obj.transform.localPosition = new Vector3(x,y,1); } x = -400; y += 200; } } /// <summary> /// 创建对象 /// </summary> private GameObject CreateObj() { GameObject obj = new GameObject(); MeshFilter meshFilter = obj.AddComponent<MeshFilter>(); MeshRenderer meshRenderer = obj.AddComponent<MeshRenderer>(); meshRenderer.material = material; return obj; } /// <summary> /// 贴图 /// </summary> void SetUv(Mesh mesh) { //定点坐标 Vector3[] vertices = new Vector3[4]; vertices[0] = new Vector3(0, 0, 0); vertices[1] = new Vector3(0, 1, 0); vertices[2] = new Vector3(1, 1, 0); vertices[3] = new Vector3(1, 0, 0); mesh.vertices = vertices; //三角形连线 int[] triangles = new int[6]; triangles[0] = 0; triangles[1] = 1; triangles[2] = 3; triangles[3] = 1; triangles[4] = 3; triangles[5] = 2; mesh.triangles = triangles; //设置uv坐标 Vector2 uvPostion0 = new Vector2(0, 0); Vector2 uvPostion1 = new Vector2(0, 0.5f); Vector2 uvPostion2 = new Vector2(0.5f, 0.5f); Vector2 uvPostion3 = new Vector2(0.5f, 0); mesh.uv = new Vector2[] { uvPostion0, uvPostion1, uvPostion2, uvPostion3 }; } }
相关文章推荐
- 获取网络图片并显示(并且对于在改变ui等元素必须在andoriod的主线程中)
- Android网络获取图片保存到本地,并在ViewPager中显示图片
- ListView的常见优化:获取网络图片异步加载,分批加载,分页显示,图片缓存等优化方式
- android中实现从一个图片中截取一部分,在翻转,成一个圆形显示
- ListView的常见优化:获取网络图片异步加载,分批加载,分页显示,图片缓存等优化方式
- Android ListView从网络获取图片及文字显示
- Android 通过url获取网络图片并显示在ImageView中
- Unity3D 网络通信_HTTP协议:获取网络图片、内容
- 从网络中获取图片显示到Image控件并保存到磁盘
- Android通过网络URL获取图片并显示
- Cocos2d-x利用CCHttpRequest获取网络图片并显示
- android 网络编程:显示从网络获取的图片
- Android ListView从网络获取图片及文字显示
- Unity3D获取网络时间,解析xml/截取string
- Android实现从网络获取图片显示并保存到SD卡的方法
- 如何从网络获取图片显示并保存到SD卡里
- java通过代理获取网络图片,截取当前屏幕保存为图片
- Android ListView从网络获取图片及文字显示
- 获取本地视频,网络视频的第一帧图片,使之显示出来
- android网络获取图片并保存在本地和获取手机SD卡中的图片显示到ImageView上及利用代码删除图片