![](/img/trans.png)
[英]How do I get the script of a GameObject underneath my selected GameObject? (Unity2D) (C#)
[英]How do I detect an especific opacity of a gameObject? Unity2D
我不知道如何从我的游戏对象的不透明度中获得一定的价值。 我想做一个激光,所以我做了一个 animation 我的激光从 0 到 230,然后回到 0。我希望它只有在不透明度为 230 时才会造成损坏,但我不知道如何;(。可以有人帮我吗?这是我的 animation 的一部分
颜色在内部存储为float
值0
到1
。
因此,假设您可以访问您的 object 它可能类似于例如
public class DamageController : MonoBehaviour
{
// Here you drag in the according object
[SerializeField] private Renderer renderer;
// Due to imprecision I would go one lower just to be sure
private float targetAlpha = 229f/255f;
private void Update ()
{
if(renderer.material.color.a >= targetAlpha)
{
// However you deal damage
DealDamage (amountPerSecond * Time.deltaTime);
}
}
}
但是,实际上并不需要检查 alpha!
无论如何,您都有一个 animation 所以您也可以简单地减少组件,例如
public class DamageController : MonoBehaviour
{
private void Update ()
{
// However you deal damage
DealDamage (amountPerSecond * Time.deltaTime);
}
}
现在简单地附加动画这个组件的enabled
state!
使其默认禁用,并且仅在所需时间段内的 animation 内启用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.