纳金网

标题: 2D纹理和Movie纹理 (转载) [打印本页]

作者: 刀锋狼    时间: 2014-7-23 00:32
标题: 2D纹理和Movie纹理 (转载)

使用GUI的方式来显示纹理。在《Unity权威指南》中,脚本使用的是JS脚本。现在这篇文章中主要是给出C#的脚本。
下面是代码:


以上代码中,用红笔标出的地方就是C#脚本和JS脚本所不同的地方。

总结:
1、第5行代码,需要声明一个类型为Texture2D的数组allTexture。这里和JS脚本不同的地方是JS脚本中用的是Object数组。

2、第8、15、24、30中都需要使用new关键字实例化一个Rect(矩形)。JS脚本中则不需要new。

3、第19行代码,需要使用LoadAll<T>()方法,在尖括号中指定泛型的类型为Texture2D。

4、第12行代码,需要使用as Texture2D来把加载到得数据执行转换成Texture2D。

5、在上面的代码中,关键的方法主要有三个。这里要先说明一下Resource类,Resource类允许我们去发现和获取一个包含资源中的对象。
第一个方法Resource.Load(string path),用于加载一个存储在Resource文件路径下的资源。参数为目标文件的路径名。
第二个方法Resource.LoadAll<T>(string path),用于加载所有储存在Resource文件路径下的资源或文件。参数同样为目标文件的路径名。
第三个方法GUI.DrawTexture(Rect positon, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect),用于在一个矩形的范围内绘制一个纹理。第一个参数用于设置一个矩形的x坐标,y坐标,宽,高。第二个参数用于设置一个纹理去展示。第三个参数用于怎么去按比例排列(缩放)这个纹理当它的宽高比不能够适应这个绘制的范围时。第四个参数是布尔类型,表示是否应用alpha blending(α混合 我也不知道这样子翻译准不准确,这个是一种让3D物件产生透明感的技术)来绘制这个图片。第五个参数表示图片的宽高比,0是默认值,表示使用图片的宽高比。

6、还有一个方法GUI.Button(Rect positon,string text)。该方法用于产生一个按钮,单击它会立即发生一些事件。第一个参数和GUI.DrawTexture的第一个参数表示的相同,第二个参数表示的是显示在按钮上的文字。这个方法还有另外4中重载,具体的内容需要参考官方的文档。

7、最有一点要注意的就是,我们要显示的纹理需要放到指定的Resource文件夹中。


作者: shotdead    时间: 2014-7-23 02:05
谢谢分享! C#
作者: HIDEOKOJIMA    时间: 2014-7-23 09:56
谢谢分享!
作者: hyui    时间: 2014-7-23 16:00

谢谢分享!
作者: wusky751023    时间: 2014-7-23 16:25
感謝刀鋒狼大人教學
作者: wucnj    时间: 2014-7-23 16:38
感谢分享!!!
作者: 我不再年轻    时间: 2014-7-25 22:15
学习了, 多谢俄
作者: shenyg77    时间: 2014-7-25 23:06
感谢分享




欢迎光临 纳金网 (http://wwww.narkii.com/club/) Powered by Discuz! X2.5