从零开始用Unity开发坦克世界4.用动画控制履带的旋转运动

本文介绍如何使用Unity的动画系统为坦克游戏中的履带制作逼真的运动效果。通过ContextMenu关联履带块,调整其位置和角度,创建动画并设置转速,最后结合坦克速度调整履带转动速度,实现细节丰富的履带动画。
摘要由CSDN通过智能技术生成

坦克履带的动画效果有很多制作方法。在上篇中,利用改变贴图的offset来模拟出履带的运动。这种方法虽然凑合,但近看的时候太粗糙了,并且只适合于履带是一块模型的时候使用。如果履带是由数十个履带块组成的时候,则可以考虑用动画系统(Animation)来控制履带的运动,而且简单方便,不需要写多少代码。

一、利用ContextMenu为履带块关联上前后履带块

首先考虑到履带块的数量很多,不可能在动画编辑器里一个一个地调位置和角度,所以利用代码来控制履带的位置和角度。思路是:遍历所有履带,将这个履带的位置和角度先存下来,再将前面一个履带的位置和角度赋值给它,完成一次遍历后即可使用动画系统设置就好。
在这里插入图片描述
那么现在问题是怎么让履带块知道他前后履带是哪个呢?当然你可以在Inspector里面一个一个拖动,更好的办法是利用ContextMenu在编辑器页面里面就能运行脚本里写好的代码。

using UnityEngine;

public class Track_Control : MonoBehaviour
{
      
    public Transform frontTransform;
    public Transform rearTransform;
    string baseName;
    int thisNum ; 
    
    [ContextMenu("SetUp")]
    public void SetUp()
    {
   
    	//将所有履带放在一个物体下面,通过这个物体来检索前后履带
        Transform parentTransform = transform.parent;
        //获取履带的名字
        baseName = this.name.Substring(0, 12); 
        thisNum = int.Parse(this.name.Substring(12));
     
        if (front
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值