
unity
Mmonster23
现在的付出,得配得上想要的生活
展开
-
Unity脚本事件函数执行顺序(一)
最近在写程序时候因为调用顺序的一个小错误导致出现了Bug,所以想整体的整理一下Unity脚本的事件函数执行顺序。脚本生命周期流程图:首先看一下官方的流程图下面根据时间线来梳理一下每个函数的调用时间以及用途特性:场景加载时场景内所有对象的 Awake 和 OnEnable 函数将在场景加载时被调用一次,Awake: 在实例化对象之后会调用此函数如果对象的Active为false状态则在变为true之后才会调用。**OnEnable:**在启用对象之后会调用此函数SetActive时会调用O原创 2021-09-26 10:07:47 · 1009 阅读 · 0 评论 -
高速物体的碰撞检测
Unity碰撞检测分为离散,连续,动态连续首先是官方的文档:连续碰撞检测是一种阻止快速移动的碰撞体相互穿过的功能。使用正常 (Discrete) 碰撞检测时,如果对象在一个帧中位于某个碰撞体的一侧,而在下一帧中已经穿过了碰撞体,便属于彼此穿过的情况。要解决此问题,可在快速移动对象的刚体上启用连续碰撞检测。将碰撞检测模式设置为 Continuous 可防止刚体穿过任何静态(即非刚体)网格碰撞体。设置为 Continuous Dynamic 也会防止刚体穿过任何其他支持的刚体(即,碰撞检测模式设置为 Con原创 2021-09-26 17:33:13 · 1231 阅读 · 0 评论 -
AI移动碰撞避免算法
在rts游戏中会出现大量单位集体行动,或者设置守卫自动巡逻这种,需要在服务端控制其移动但又不想让他们移动时重叠在一起,所以需要一个规避算法AI流程如下public Vector3 Evade(Target targets) { // 加速度 Vector3 acceleration = Vector3.zero; // 首先找到角色将要碰撞的目标 // 第一次碰撞时间 flo原创 2021-09-25 20:32:05 · 1078 阅读 · 0 评论 -
Unity ScriptableObject 存储字典
Unity ScriptableObject 不能直接存储字典和二维数组 !!!!!!!!原创 2021-09-10 21:34:53 · 1585 阅读 · 0 评论 -
键值
一般使用的input类是用来获取鼠标和键盘的获取鼠标括号里写0、1、2,分别代表鼠标左键,鼠标右键,鼠标滑轮。Input.GetMouseButtonDown();//获取鼠标按下Input.GetMouseButtonUp();//获取鼠标抬起获取键盘Input.GetKey("键位名"或 例如KeyCode.A);//获取键位Input.GetKeyDown();//获取键位按下Input.GetKeyUp();//获取键位抬起有时候使用Input方法获取键盘键位,会不知道对应的是哪个转载 2021-03-26 15:27:13 · 505 阅读 · 0 评论