所以,我有一个立方体,我想制作一个游戏,其中立方体从一个塔架跳到另一个塔架,现在我正处于这样的位置,如果立方体停留在它上面,那么我想让塔架掉落时间量。
我不想使用物理或僵硬的身体,我只使用transform.position
和Raycast
来点击下一个我希望立方体跳过的塔,我想使用动画,所以如果幼崽在当前的塔架上停留的时间超过给定的时间,那么塔架就会随着它而落在立方体上。
问题是我不知道该做什么,从哪里开始;关于统一动画我只知道如何做动画片段。
我会学习做其他事情,但我实际上没有想法如何处理这个问题,我应该使用什么技术来获得理想的结果,以及如何?
答案 0 :(得分:0)
您可以使用OnCollisionEnter来检测立方体是否与定位塔相撞(落地):
void OnCollisionEnter(Collision col)
{
// Check if it is the cube that has collided.
if (col.gameObject.name == "Player") // Make sure to assign the Player Tag to the cube
{
// Start countdown timer.
}
}
您可以使用coroutine开始倒数计时器。
您需要在课程顶部添加using System.Collections;
。
使用StartCoroutine(MyCoroutine());
IEnumerator MyCoroutine()
{
// Wait for 3 seconds.
yield return new WaitForSeconds(3f);
// Make the pylon fall now.
}
这段代码会让游戏在做某事之前等待3秒钟。如何使塔架坠落取决于您,您可以使用RigidBody并将isKinematic从true设置为false作为示例,但是因为您已经说过您不想使用物理,所以您可以翻译塔架向下使用Transform.position
。
这应该让你开始。