找回密码
 立即注册
查看: 9403|回复: 91

[实例] unity3d中2D射击游戏2:发射子弹声音及碰撞事件的编写

[复制链接]
发表于 2012-12-20 18:32 | 显示全部楼层 |阅读模式
资源信息 Tutorial Information
教程名称: 【蜜蜂2D射击游戏图文教程2】unity3d中2D射击游戏:发射子弹声音及碰撞事件的编写(发帖教程)
适用引擎:   (适用引擎,为空默认为Unity)
教程语种: 中文
教程等级: 1
教程格式: 图文(请用IE9以上浏览器访问本版块)
教程作者: 转载自互联网 (如有问题请短消息联系作者或发表回复)
下载地址: (兑换积分)
点击查看原图
美丽分割线
本帖最后由 尊者 于 2012-12-20 18:44 编辑

二、发射子弹声音及碰撞事件的编写(bullet与enemy碰撞)
1.为发射的子弹添加声音,这里用到一个生成声音的小工具:
2.生成想要的声音文件后,在BulletPrefab中添加

小提示:在Rolloff Mode中更改选项后 可更改声音效果
3.添加要攻击的敌人,从高处落下的球体,我们添加一个sphere

调整其X、Y、Z轴 为0,为sphere创建一个红色的材质

4.新建一个enemyScript,定义var enemySpeed:int; 并指定速度为5.
添加如下代码:

  1. var enemySpeed:int;

  2. function Update () {
  3.         
  4.         amtToMove=enemySpeed*Time.deltaTime;
  5.         transform.Translate(Vector3.down*amtToMove);
  6. }
复制代码
这时球会一直沉下去,我们添加约束条件
添加如下代码:
  1.         if(transform.position.y<=-3)
  2.         {
  3.                 transform.position.y=6.5;
  4.                
  5.                 transform.position.x=Random.Range(-6,6);
  6.         }
复制代码
实现任一X轴下落.
5.为bullet与enemy添加撞击事件
选择enemy-

勾选Is Trigger
在BulletScript中添加撞击事件,代码如下:
  1. function OnTriggerEnter(otherObject:Collider)
  2. {
  3.         
  4. }
复制代码
选择enemy 添加add Tag...

添加一个enemy的Element

返回选择enemy 设置Tag为enemy

在BulletScript  function OnTriggerEnter中添加:
  1. function OnTriggerEnter(otherObject:Collider) //otherObject为绑定的tag enemy 并带一个碰撞的参数Collider
  2. {
  3.         if(otherObject.gameObject.tag=="enemy")
  4.         {
  5.                 PlayerScript.playerScore+=100;//分数+100
  6.                
  7.                 otherObject.gameObject.transform.position.y=7;//碰撞发生重新设置enemy的y轴坐标
  8.                
  9.                      otherObject.gameObject.transform.position.x=Random.Range(-6,6);//重置enemy x轴坐标
  10.                      
  11.                 Destroy(gameObject);//销毁bullet
  12.         }
  13. }
复制代码
更改enemy与player的z轴 都为0,播放后实现 一旦碰撞发生分数+100、销毁子弹、重置enemy坐标。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1 +1 收起 理由
1287537617aa + 1

查看全部评分

发表于 2012-12-30 21:03 | 显示全部楼层
顶一个    这个教程我看过了 还不错哦  呵呵
 楼主| 发表于 2013-1-5 20:23 | 显示全部楼层
发表于 2013-2-28 10:50 | 显示全部楼层
謝謝大大的教學分享,最近正好在學Unity不過卡在很多函式跟功能都不知道。
謝謝!
发表于 2013-6-17 18:51 | 显示全部楼层
看上去很厉害的样子
发表于 2017-5-6 14:58 | 显示全部楼层
好帖就是要顶
发表于 2017-5-6 14:31 | 显示全部楼层
真心顶
发表于 2017-5-6 14:38 | 显示全部楼层
难得一见的好帖
发表于 2017-5-6 14:51 | 显示全部楼层
很好哦
发表于 2017-5-6 14:28 | 显示全部楼层
不错不错
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-22 01:27 , Processed in 0.134399 second(s), 33 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表