c# - Unity - 健康栏作为屏幕周围的轮廓线

标签 c# unity-game-engine user-interface

我在 Unity 中有一个游戏。 游戏的想法是在屏幕上生成一个对象。 它存在几秒钟。 当它存在时,您需要点击它。

我想做的是,当它存在时 - 我想显示一个计时器,但不是数字,而是在屏幕周边有一条轮廓线。

我知道如何制作 slider 以及如何制作圆形健康栏,但我真的不知道制作 slider , slider 从各处向中心递减,如下面的屏幕截图所示.

我会很感谢你的灵感!



enter image description here

enter image description here

enter image description here

最佳答案

这应该非常适合使用 alpha 截止和自定义着色器。

这是一个video详细解释(您只需要前半部分)。

基本思想是根据您希望纹理出现/消失的方式创建具有渐变 Alpha 的纹理。在这种情况下,顶部和底部的 alpha 值将接近 0,然后逐渐围绕两侧的线向中间增加到 1。然后,着色器会切断低于截止阈值的纹理,您可以根据该阈值进行更改计时器的值。

关于c# - Unity - 健康栏作为屏幕周围的轮廓线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74457633/

相关文章:

c# 在另一个 List<T> 中搜索 List<t>

python - 我应该在 Pygame 中使用什么 gui 工具包?

c++ - QT 在任何地方向 UI 添加小部件

c# - "Found markup element with unexpected name"-- 重命名 Blazor Web 客户端后要做什么?

C# double 问题,如何安全检测和处理

c# - XPath - 返回子节点但不返回后代

c# - MonoDevelop 无法识别 MonoBehaviour

c# - 从另一个场景访问 CustomEditor Inspector 值

ios - 在 Unity iOS 应用程序中 Conceal/显示状态栏 [ Objective-C ]

java - 在 Java 中,使用 GUI 构建器或手动编码制作 GUI(Swings) 是一种好习惯吗?