unity, access sprite of UGUI Image】的更多相关文章

首先需要using UnityEngine.UI; 然后调用下面语句就不报错了: Image.GetComponent<Image>().sprite 参考:http://answers.unity3d.com/questions/794139/ 获得Image的width和height: Image.GetComponent<RectTransform>().rect.width…
图集 什么是图集? 在使用3D技术开发2D游戏或制作UI时(即使用GPU绘制),都会使用到图集,而使用CPU渲染的2D游戏和UI则不存在图集这个概念(比如Flash的原生显示列表),那么什么是图集呢?准确的说法图集是一张包含了多个小图的大图和一份记录了每个小图id.位置.尺寸等数据的数据文件,一个图集应该对应两个文件,当然也有人把数据集成到图片中,导致看起来只有一张图片(参考自DragonBones的做法). 为什么要用图集? 在GPU已经成为PC.手机等设备的必备组件的现在,把所有显示的绘制操…
一.简介 马三从上一家公司离职了,最近一直在出去面试,忙得很,所以这一篇博客拖到现在才写出来.马三在上家公司工作的时候,曾处理了一个UGUI不规则区域点击的问题,制作过程中也有一些收获和需要注意坑,因此记录成博客与大家分享.众所周知在UGUI中,响应点击通常是依附在一张图片上的,而图片不管美术怎么给你切,导进Unity之后都是一个矩形,如果要做其他形状,最多只能旋转一下,或者自己做一些处理.而为了美术效果,很多时候我们不得不需要特定形状的UI,并且让它们实现精准的响应点击.例如下图就是一个不规则…
2D游戏中也可以使用灯光?这真是一个好消息,接下来,我将为大家写一下教程 操作步骤 1.创建一个Materilas,修改Shader为 2.创建一个Sprite(使用黑色的图片) 3.创建一个Point Light(注意:PointLight的z一定要在Sprite前面),调整灯光参数 加入灯光后的效果…
如果想给UGUI元素添加交互性,如使一张图片能够被点击,具有normal.Highlighted.Pressed三态,可以给该物体添加组件Selectable. 已经具有交互性的物体不能再添加Selectable组件,如Button.因为从UGUI源码中可以看到,Selectable类使用了[DisallowMultipleComponent]这个特性(Attribute),一个物体最多只能添加一个该组件.…
创建UGUI物体时,会自动创建Canvas物体作为所有UGUI的根节点.该物体身上有个Canvas脚本,Render Mode渲染模式选项: Screen Space - Overlay:即使场景中没有任一可用Camera,所有UI依然能正常运行.显示.而且任何非UI元素的游戏物体都不能遮挡在UI元素之上(无论非UI物体怎么调位置). Screen Space - Camera:可传入某个Camera,指定该Canvas物体下的所有UI元素由哪个Camera来渲染.可指定UI到Camera的距离…
unity 5.1.1f1 personal 用下面方法在脚本中设置standard shader的emssion: gameObject.GetComponent<MeshRenderer> ().material.SetColor("_EmissionColor",color); 一个很奇怪的现象是:如果material的inspector中此standard shader的emission值为(0,0,0),则上面语句不起作用. 所以为了使上面语句能生效,需要把ins…
要想在UGUI上添加particleSystem,需要将Canvas的Render Mode设置为Screen Space - Camera,并为其Render Camera指定一个Orthographic相机. Render Camera的Culling Mask设置为UI. 为了保证UI的渲染在最前层,需要将Render Camera的Clear Flags设置为Depth only. 当然,不要忘了将particleSystem的Layer改为UI.…
用代码设置UGUI渲染无非和三个API有关: 1.SetAsFirstSibling(); 2.SetAsLastSibling(); 3.SetSiblingIndex(n) SetAsFirstSibling()是设置为最先渲染的,即会被后渲染的挡住. SetAsLastSibling();是设置为最后渲染的,即会挡住比他先渲染的 SetSiblingIndex(n)是设置层级,从0开始到childcount -1 当n为0时,其效果与SetAsFirstSibling();相同 但是当层级…
直接说方法 添加一个2dxxx的碰撞器 添加一个OnMouseDown的回调函数,这个函数看script reference就可以…