uniyt 定时,向量,预制体 – 笔记

发布于 2022-11-12  146 次阅读


调度

invoke(delay) 在delay之后执行一次

invokeRepeating(func,delay,interval) 在dealy之后以interval为间隔执行

unity核心是单线程的,所以不必担心。
获取当前线程
using System.Threading;
Thread.CurrentThread.ManagedThreadId

java中package与c#中的namespace

package都是同一级的,没有父子关系
namespace是可以有子namespace的,划分粒度更细。
引入父namespace就可以访问子namespace中的内容。

IsInvoking("methodName")判断函数是否在调度
CancelInvoke("methodName")取消函数所有调度

向量

获得向量的长度

flot m = v3.magnitude;

单位向量
标准化向量 按比例

Vector3 v = v3.normailzed;//把v3转化为标准向量

向量的运算

向量是支持加减法运算的

a + b xyz分别相加

向量的乘法

b = a * 2

向量测距

即物体轴心点之间的距离

使用减法
距离=a-b

静态方法
Vector3.Distance(a,b)

向量的使用

向量作为脚本的参数

预制体

预先制作好的模型,相当于类。
*.prefab

预制体的创建

先制作好一个样本节点。
直接拖到Assents窗口,就会自动生成一个预制体资源。
原始物体可以删除。
需要导出依赖文件。

预制体示例

perfabInstance
预制体实例的上下文工具不一样,窗口中标记为淡蓝色。
实体上右键unpack可以去掉关联预制体。

预制体的编辑

单体编辑。

双击预制体,进入单体编辑。
预制体被修改,实例也会被同步修改。

原位编辑

选择预制体实例,点击inspector中open按钮,仅编辑此实例。

覆盖编辑

选择预制体实例,点击inspector中overrides按钮,将实例的修改覆盖至预制体。
由于预制体被修改,其他实例也会被同步修改。

多级节点

多个预制体组合,合成一个具有父子关系的预制体。

api脚本生命周期流程图
monobehaviour_flowchart.jpg


啦啦啦!