RawImage的应用
1 序列帧动画的播放
2 将3D物体映射在UI上
将RT分别赋值给RawImage和拍摄3D物体的摄像机,不想在UI上显示背景的化,该摄像机渲染方式选择Solid Color
RawImage的应用
1 序列帧动画的播放
2 将3D物体映射在UI上
将RT分别赋值给RawImage和拍摄3D物体的摄像机,不想在UI上显示背景的化,该摄像机渲染方式选择Solid Color
RawImage主要应用于帧动画,利用UV Rect,编写脚本可以实现帧动画的播放
ScaleFactor = 运行时的屏幕尺寸/制作时的屏幕尺寸
图片的像素数*图片面板中的像素转unity单位*Canvas中的unity单位转像素 = 在cavas中图片的像素数
画布的渲染方式有三种:
1 OverLay:UI始终在最上层
2 Camera:绑定一个摄像机,通过调节摄像机和Panel之间的距离,可以让3D物体显示和UI之间的显示,不可以穿插显示
3 World Space:调节3D物体,可以穿插显示
蓝图模式:panel不会随着图片的改变而改变
原始编辑模式:轴心点的位置不变,通过改变UI的位置满足轴心点数值的变化
获取UI宽高最安全的方式
RectTransform rect = transform.GetComponent<RectTransform>();
Debug.Log("UI的宽:"+rect.rect.width+" 高:"+rect.rect.height);
可以通过设置轴心点位置的方式,让UI空间在放大和缩小时,保持一边的位置不变
当轴心点位于一个边上时,那么那个边的位置是不会变得,当轴心点在一个角上的时候,那么构成这个角的两边在方法过程中的时候,位置是不会改变的
我就使用Anchors Position了
也就是以子物体的锚点为(0,0)点,然后计算子物体Pivot的位置
LocalPosition是以子物体的几何中心点为(0,0)点,计算Pivot的位置
通过锚点的设置对UI组件之间进行适配
锚点和中心点共同决定UI的位置,可以通过UI组件的中心点和它相对父物体的锚点保持相同位置的方式进行UI适配,将UI放到合适的位置
UI的基础组件Rect Transform
Anchors:锚点,用来标记位置的
Pivot:中心点
EventSystem 管理ugui事件
ugui射线响应非为,Graphic,2D,3D分为三种,
horizontal layout group水平布局
vertical layout group 垂直布局
horizontal layout group水平布局
inputfield
下拉列表
template模板
local position是控制点
clickdown的dataTime是上一次的
click的dataTime是本次的
UGUI实现事件的三种方式
1 接口
2 组件
3 在代码中添加组件(其实就是第二种)
推荐第一种方式