使用shader实现fillamount效果

使用UGUI的Image可以轻松实现进度条的效果。但是有些情况下我们需要制作针对游戏世界中的物体的进度条,例如人物头顶的HP条,机器旁边的CD条等。常规的做法通过将世界坐标映射到UI,然后使用Image制作这些元素。当游戏世界中的物体 位置改变的时候,需要通知UI去改变相应元素的位置,如果需要考虑摄像机对于进度条的影响,例如摄像机拉远时进度条变小,则会更加麻烦。 这里提供一种使用shader实现进度条的方案。测试环境:Unity 2020.3.32。 ...

2022-06-26 · 2 min · 263 words · 董大喵

Unity协程探究

Unity提供了协程来实现一定程度上的“伪并发”。 众所周知,UnityAPI只能在主线程中调用,如果我们希望通过多线程来实现多个过程的并发处理,那么如果涉及对UnityAPI的操作,则必须转到主线程去执行,比较繁琐。 MonoBehaviour.StartCoroutine可以创建一个协程(Coroutine), 在协程中可以通过yield语句暂停程序执行或者退出协程,从游戏运行的宏观角度看,它们似乎是在并行一样。 ...

2022-05-21 · 2 min · 404 words · 董大喵