Unity组件——TimeLine
TimeLine创建
TimeLine是控制的本体,Singal是动画中某个指定对象的传递
如果需要将事件传递出去,场景中需要有加载有下图红框内组件的游戏对象,使用方式和Unity常规的事件系统触发一致,
1.选择游戏对象
2.选择方法
使用前需要在场景中准备Add有下图所以组件的游戏对象,具体操作可以是直接从assets中将一个创建好的Timeline直接拖拽到场景中准备好的空对象上去
常用轨道
如上图所示:
activation Track是控制活跃性的,在轨道的指定片段内是有效的,具体使用案例是在播放CG的时候需要将屏幕从人物中移动开,这个时候可以将原本的Playercamera拖拽到Timeline的该轨道上,在指定的片段内才是活跃的
Animation Track是常规的Animation,需要追踪一个animator,
audio Track是音效轨道
Control Track
playable Track
signal Track 事件轨道
代码控制12345678910111213using UnityEngine.Playables; // ...
Unity——UI拖拽
UI拖拽实现接口1IBeginDragHandler, IEndDragHandler,IDragHandler
该方法是BeginDrag接口的实现方法,在指定游戏对象被拖拽的时候启用,对于鼠标的位置追踪则可以直接使用 eventData.position 来进行移动,不需要进行一些列转换
一般被拖动的UI会受到自身所在层级影响,因此在一开始就需要重新设置一下被拖动UI的父对象
12345678public void OnBeginDrag(PointerEventData eventData) { originParent = transform.parent; this.transform.SetParent(transform.parent.parent.parent); this.transform.position = eventData.position; canvasGroup.blocksRaycasts = false;//射线可以穿透 ...
AddressAble使用经验
AddressAble资源配置
不同的Group对应最后要打的不同的AB包,每个文件最前面显示的就是对应的key,可以通过key来直接进行访问
一般对于选中的资源都是默认使用路径资源,右键鼠标点击下图红框中间的按钮可以简化名称
加载代码建议参考
Unity 之 Addressable可寻址系统 – 代码加载介绍 – 进阶(一)_unity addressable-CSDN博客
1234567891011121314151617181920212223242526272829 // 使用Addressables.LoadAssetAsync来异步加载资源 AsyncOperationHandle<T> handle = Addressables.LoadAssetAsync<T>(path); // 等待加载操作完成 yield return handle.Task ; //加载成功后把数据发送回去 if (handle.Status == Async ...