Unity制作赛车游戏(无尽版)源码解析 和 Whell joint 2D组件的使用

小游戏的开始界面:
 
感兴趣的同学可以按如下方式下载素材和工程源码
 

下载链接。没有积分的同学,扫描主页左侧二维码或 V信搜 " 开发同学留步",回复“ 赛车” 获取资源。

根据车轮的转动,使小车运动,,,
使用2D Sprite创建出入下图所示关系,并附上图片调整位置:
 
为小车,和车轮增加如下的属性面板
 
CarMove脚本在后面,,没有声音面板,需要就加AudioSound组件,就好了,大家注意面板上的属性赋值就可以了,,,
 
注意:whell Join 2D 属性面板的Connected Anchor 属性一定调整到车轮的中心点位置,,这里的物理材质我使用的摩擦力大小时0.5,,,车的rigidbody赋值在车轮的Whell Joint 属性上,,勾选上Use Motor,调整各自的碰撞体;
 
CarMove脚本:
public class CarMove : MonoBehaviour {

    public float speed = 10f;    //初速度

    public WheelJoint2D leftWhell;  //车轮
    public WheelJoint2D rightWhell;

    public float phSpeed = 5.0f;  //平衡调整速度

    public AudioSource carSound;  //获取组件以播放声音
    public AudioClip runClip;   //开车时的音频剪辑
    public AudioClip waitClip;  

    private Transform myTrans;  //自己的Transform

    //给车轮加动力的
    private JointMotor2D jmL,jmR;

	void Start () {
        //获取速度
        jmL = leftWhell.motor;
        jmR = rightWhell.motor;

        myTrans = this.transform;

    }
	
	// Update is called once per frame
	void Update () {
        Move();
    }

    private void Move()
    {
        //获取输入
        float ax = Input.GetAxis("Horizontal");
        float ay = Input.GetAxis("Vertical");

        //当前速度
        jmL.motorSpeed = ax * speed;
        jmR.motorSpeed = ax * speed;
        //赋值
        leftWhell.motor = jmL;
        rightWhell.motor = jmR;

        if(ay != 0)
        {
            //左右平衡赛车的角度
            myTrans.Rotate(myTrans.forward, ay * phSpeed);
        }

      if ( ax != 0 ) //有移动变化量就不播放runClip
        {
            carSound.clip = runClip;

            if(!carSound.isPlaying){
                carSound.Play();
            }

        }else  //停下就不播放声音
        {
            carSound.Stop();
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈言必行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值