2016-8-2 Unity学习笔记二(第一人称扔球)

以下学习内容根据 极客学院 所授内容学习并记录

一、首先创建第一人称
*1.在项目中引入包:Characters
*2.然后将在FirstPersonCharactor中Prefabs里面的FPSController拖到Hierarchy中,这时候创建了一个第一人称视角的角色
二、创建小球
*1.创建一个Sphere,命名为Ball,并为之添加Rigidbody
三、编写脚本并添加至FPSController的FirstPersonCharactor中
using UnityEngine;
using System.Collections;

public class PointAndDirection : MonoBehaviour {
    public GameObject ball;
    void Awake(){
        ball = GameObject.Find ("Ball");

    }
    // Use this for initialization
    //void Start () {
    //
    //}

    // Update is called once per frame
    void Update () {
        if (Input.GetKey (KeyCode.Q)) {
            ball.transform.position = transform.TransformPoint (0,0,2);

            ball.transform.parent = transform;
            ball.GetComponent<Rigidbody> ().isKinematic = true;//其中,isKinematic的意思为“是否动力学”
        }
        if (Input.GetKey (KeyCode.E)) {
            if (ball.transform.parent == this.transform) {
                ball.GetComponent<Rigidbody>().isKinematic = false;
                transform.DetachChildren();//分离所有子物体

                Vector3 camDirection = transform.TransformDirection (0,0,10);
                ball.GetComponent<Rigidbody>().AddForce (camDirection,ForceMode.Impulse);
            }
        }
    }
}

这时,当按下Q键时,Ball成为第一人称主角的子物体,并放在平行位置;当按下E键时,Ball的父物体为第一人称主角的父物体,并给予一个方向为 (0,0,10) 的力,小球则做抛物飞出

按下Q前:
按下Q前

按下Q时:
按下Q时

按下E后:
按下E后

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值