Unity学习笔记 之 发射小球碰撞物体的代码记录

原创 2015年07月10日 14:19:41

绑定在摄像机上的脚本

using UnityEngine;
using System.Collections;

public class abc : MonoBehaviour {

	//设置移动速度
	public int speed = 5;

	//设置将被初始化加载的对象
	public Transform newobject = null;

	// Use this for initialization
	void Start () {
	
	}
	
	// Update is called once per frame
	void Update () {
		//通过左右方向键,或A、D字母键控制水平方向,实现往左、往右移动
		float x = Input.GetAxis("Horizontal") * Time.deltaTime * speed;
		//通过上下方向键,或W、S字母键控制垂直方向,实现往前、往后移动
		float z = Input.GetAxis("Vertical") * Time.deltaTime * speed;
		//移动 绑定物的 x、z 轴,即移动 摄像机的 x、z 轴。 
		transform.Translate(x,0,z);



		//判断是否按下鼠标的左键
		if (Input.GetButtonDown("Fire1")) {
			//实例化命令:Instantiate(要生成的物体, 生成的位置, 生成物体的旋转角度)
			Transform n  = (Transform)Instantiate(newobject, transform.position, transform.rotation);

			//转换方向
			Vector3 fwd = transform.TransformDirection(Vector3.forward);

			//给物体添加力度
			//Unity5之前的写法:n.rigidbody.AddForce(fwd * 2800);
			n.GetComponent<Rigidbody>().AddForce(fwd * 2800);
		}


		//判断是否按下字母按钮 Q
		if (Input.GetKey(KeyCode.Q)) {
			//改变 绑定物的 y 轴,即改变 摄像机的 y 轴。 
			transform.Rotate(0,-25*Time.deltaTime,0,Space.Self);
		}

		//判断是否按下字母按钮 E
		if (Input.GetKey(KeyCode.E)) {
			transform.Rotate(0,25*Time.deltaTime,0,Space.Self);
		}



		//判断是否按下字母按钮 Z
		if (Input.GetKey(KeyCode.Z)) {
			//旋转 绑定物的 y 轴,即旋转 摄像机的 y 轴。 
			transform.Rotate(-25*Time.deltaTime,0,0,Space.Self);
		}

		//判断是否按下字母按钮 X
		if (Input.GetKey(KeyCode.X)) {
			//旋转 绑定物的 y 轴,即旋转 摄像机的 y 轴。  
			transform.Rotate(25*Time.deltaTime,0,0,Space.Self);
		}


		//判断是否按下字母按钮 F
		if (Input.GetKey(KeyCode.F)) {
			//移动 绑定物的 y 轴,即移动 摄像机的 y 轴。 
			transform.Translate(0,-5*Time.deltaTime,0);
		}

		//判断是否按下字母按钮 C
		if (Input.GetKey(KeyCode.C)) {
			//移动 绑定物的 y 轴,即移动 摄像机的 y 轴。 
			transform.Translate(0,5*Time.deltaTime,0);
		}
	}
}


绑定在发射的小球上的脚本

using UnityEngine;
using System.Collections;

public class xiaomie : MonoBehaviour {

	// Use this for initialization
	void Start () {
		//销毁物体,gameObject,目测应该是指物体自身,即达到自我销毁的需求.
		Destroy(gameObject, 3.0f);
	}
	
	// Update is called once per frame
	void Update () {
	
	}
}


unity物理平衡球游戏源码

  • 2016年06月22日 17:58
  • 8.64MB
  • 下载

【Unity3D】利用物体碰撞检测、键盘输入处理完成平衡球游戏

物体碰撞检测是游戏编程里面非常常用的功能,一旦碰到就怎么怎么样,比如掉血等。Unity3D直接就提供了物体碰撞检测的接口,实现起来很方便。借此功能,完成了一个平衡球游戏,同时说明Unity3D的物体碰...
  • yongh701
  • yongh701
  • 2017年04月16日 20:57
  • 3263

unity3d 增加子弹碰撞后物体的爆炸力

爆炸力 子弹碰撞
  • yanggenye
  • yanggenye
  • 2017年05月31日 17:53
  • 549

【Unity3D自学记录】自制作手机平衡球游戏

游戏预览图! 一、在开始制作这个游戏之前,当然是要有一个模型!(百度网盘下载地址http://pan.baidu.com/s/1mg5FOm8)。里面包括模型和我的整个工程。整个游戏...
  • hackdjh
  • hackdjh
  • 2014年07月04日 11:52
  • 1816

ballance地图文件

  • 2012年08月16日 15:02
  • 1.55MB
  • 下载

Unity基础小案例--跳动的小球、自定义第一人称控制器

整个小练习案例的项目结构 先看地面Plane--地面需要设置材质(有弹跳系数)因为案例中有跌落的小球 再看跌落的小球--必须设置弹跳材质--运行后小球弹跳效果、颜色间断变化 #pragma ...
  • wangyongfei123
  • wangyongfei123
  • 2015年11月01日 22:17
  • 3355

Unity5模拟小球碰撞以及阻力现象

直接看视频吧 http://v.youku.com/v_show/id_XOTI3Njc1MDA4.html
  • uniquewonderq
  • uniquewonderq
  • 2015年05月29日 15:02
  • 1350

unity3D学习之物体添加刚体及碰撞。

在界面中的层次栏中单击Create按钮选择(plan)地板.场景中会出现一块地板。然后再单击cube(立方体),然后点击cube对象属性栏中会出现cube的属性,单击最下面的Add  Componen...
  • driaven
  • driaven
  • 2014年11月18日 13:35
  • 3088

Unity为物体添加物理碰撞效果

1:创建一个Cube 2:Component->Mesh Collider  : 为物体添加一个多边形碰撞体组件 3:添加刚体组件 Component -> RigidBody ...
  • u011416077
  • u011416077
  • 2015年07月16日 10:52
  • 1951

Unity基础小案例---射击小球

此项目有2个页面组成 第一个页面 1、看上图的退出、开始游戏,这2个按钮是Main Camera关联的Menu1脚本文件来实现的-参数(左、上、宽、高) 可以将Menu1脚本文件直接拖拽到Main...
  • wangyongfei123
  • wangyongfei123
  • 2015年10月18日 22:48
  • 1496
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity学习笔记 之 发射小球碰撞物体的代码记录
举报原因:
原因补充:

(最多只允许输入30个字)