设置
运行项目免去加载时间:ProjectSetting->Edit->Enter Play Mode Options
File->build Setting ->查看场景标识符
FIle->build settind->player setting->build
file->new scene创建新场景,ctrl+s保存
插件下载⚙️
插件:别人写好的cs文件,直接调用接口完成功能
对于资源,首先在Asset Store添加,然后对于项目用到的需要,Window->Package Manage ->选择My Assest->搜索名称并下载Download->Import导入到项目
1️⃣ DOTween :https://reurl.cc/WrWYRDPlugins/DoTween,平滑过渡效果(变换,颜色等)
2️⃣ Timers Manager: https://reurl.cc/M0Dm4LSmart Timers Manager计时器
3️⃣ Spawn Mega:https://reurl.cc/vdXb0y生成,添加spawn mega组件
4️⃣ Free Music: https://reurl.cc/j1p4WDMusic Tracks音乐
5️⃣ Game SFX:https://reurl.cc/RrD7qg音效
6️⃣ Dragon Warrior: https://reurl.cc/vdXbaysprite图像
7️⃣ Zombie:https://reurl.cc/KbDzlM
8️⃣ Wooden GUI: https://reurl.cc/e3abyQ
9️⃣ Background:https://reurl.cc/6QerQd
Input System插件:
设置输入管理系统:ProjectSetting->Player-》Active input Handling->Both允许你选择项目的输入处理系统,选择"Both"意味着你的项目将同时支持旧的输入管理系统(Input Manager)和新的输入系统(Input System Package)
Window->Package Manage ->Unity Registry->Input System插件
创建Player Input组件,调整Behavior ->invoke unity events,事件与挂载的脚本函数绑定
事件是发布(事件)订阅(事件)系统,订阅事件就是绑定自定义行为,发布就是调用事件,即执行与事件绑定的自定义行为
c#API:
脚本挂载到引擎obj上,创建类实例(对象)
var变量类型,相当于c++的auto
SerializeField\]安全名,将变量显示到引擎上
Debug.Log();
定义属性:
属性访问器get{},set{}允许类控制对其内部数据的访问
```cs
public Vector2 Position/* 属性(Property) */
{
get { return playerTransform.position; }
}
```
void OnTriggerEnter2D(Collider2D col)当刚体发生碰撞 ,Collider2D是被撞击的obj,需要彼此都有碰撞体
.CompareTag("")查找标签
.GetComponent\<\>();获取组件
Physics2D.OverlapCircleNonAlloc(圆心,半径,Collider2D\[\]结果)以什么为圆心获取周围的物体
Quaternion.LookRotation(绕什么轴,旋转到什么方向)
Instantiate(gameobject,position,)在什么位置生成
Quaternion.identity就是 new Quaternion(0f, 0f, 0f, 1f);
Quaternion.Euler(0, 0, 0)
##### UnityEvent
UnityEvent\