34 lines
1.7 KiB
Markdown
34 lines
1.7 KiB
Markdown
|
|
### 1.ransform旋转
|
|||
|
|
直接修改transform.rotation以及使用方法transform.rotate的区别是什么?
|
|||
|
|
修改transform.rotation是直接控制旋转到一个目标量
|
|||
|
|
使用方法transform.rotate是控制物体旋转增加一个目标量.
|
|||
|
|
比如当前是60,我们的目标量是30,我们修改transform.rotation之后会变成30,但是使用方法会变成90.
|
|||
|
|
### 2.坐标系
|
|||
|
|
==在不同的canvas设置模式下,以下三种略有不同==
|
|||
|
|
1.recttransform.position 在覆盖模式下,就相当于屏幕坐标,左下角是00
|
|||
|
|
2.rt.localPosition 是子物体相对于父物体的坐标,他们是根据轴心点来计算的
|
|||
|
|
3.rt.anchoredPosition 是自身中心点距离锚点的坐标,也是inspector中的坐标.
|
|||
|
|
|
|||
|
|
但是如过是在canvas中的摄像机模式下第一种情况会发生变化
|
|||
|
|
recttransform.position在摄像机模式下,坐标就是世界坐标系中的坐标.
|
|||
|
|
|
|||
|
|
在世界模式下,以上内容就相当于是一个游戏物体,等同于transform.
|
|||
|
|
|
|||
|
|
补充:真实屏幕像素 = anchoredPosition × canvas.scaleFactor
|
|||
|
|
所以anchoredPosition=真实屏幕像素/canvas.scaleFactor
|
|||
|
|
这和我们的缩放模式息息相关,只有在缩放模式等于我们的参考分辨率的时候,我们的anchoredPosition和我们的像素才是一样的。
|
|||
|
|
在分辨率不同的情况下,都是重新计算过的。
|
|||
|
|
|
|||
|
|
### 3.Mask遮罩
|
|||
|
|
遮罩的内容比较简单
|
|||
|
|
我们需要在父物体上放置Mask组件,之后==透明区域会遮挡子物体,不透明区域会显示物体.==
|
|||
|
|
值得注意的有两点:
|
|||
|
|
1.子物体需要勾选Maskable
|
|||
|
|
2.父物体如过想显示自身sprite,需要勾选Mask组件的 Show mask Graphic
|
|||
|
|
|
|||
|
|
### 4.屏幕坐标转UI相对坐标
|
|||
|
|
本内容应该同[[#2.坐标系]]相联系.
|
|||
|
|
|
|||
|
|
### 5.摄像机Clear Flags参数
|
|||
|
|
|