U3D 实现子弹发射效果

首先,这里子弹要模拟的相似的话,用2D刚体比较好,会有重力,自由落体运动。

using UnityEngine;
using System.Collections;

public class gun : MonoBehaviour {

	public Rigidbody2D rocket;
	public float speed;
	// Use this for initialization

	void Start () {

	}

	// Update is called once per frame
	void Update () {
		if(Input.GetKey(KeyCode.K)){不断的实例化子弹刚体,并让其向前运动。
            Rigidbody2D bullet = Instantiate(rocket,transform.position,Quaternion.Euler(new Vector3(0,0,0))) as Rigidbody2D;
            //使刚体运动 Y方向为0
            bullet.velocity = new Vector2(speed,0);

		}
	}
}

  效果如图:

时间: 2024-10-12 02:54:07

U3D 实现子弹发射效果的相关文章

Android对View进行包裹, 实现镜面发射效果

这个在TV上用的挺多的, 网上很多都是对ImageView的图片做的, 感觉不是很好, 这里实现了一个可以对任何View做倒影的. 效果图 /** * * @className: MirrorView * @description: 对普通View做封装, 让这个View出现倒影效果, 注意,使用这个View之后, * 会让原来的View的Height扩大REFHEIGHT高度, 用来显示反射镜面, * @author: gaoshuai * @date: 2015年8月11日 上午11:31:

11模型导入设置,第一人称子弹发射,静态模型碰撞体设置

Unity3D 对象池思想 在游戏开发中的运用

分类:U3D 1.在王者荣耀中,每30秒小兵会出现一波,出现之后会被敌方玩家或敌方小兵销毁,一局游戏下来,小兵会被创建多次,同时也会被销毁,在游戏中,这种频繁的创建和销毁游戏对象是很损耗性能的.在游戏开发过程中,我们会频繁的创建对象和销毁对象,为了提高游戏性能,我们就要用到对象池思想了. 2.在射击游戏中,会频繁的销毁和创建子弹,这就可以用对象池思想了. 什么是对象池? 池,想到了水池,水池是水的集合.所以,对象池就是对象的集合,我们可以初步的按照这种想法来理解对象池.使用原理的话就是,我们在创

飞机大战03之飞机发射子弹,添加敌人

飞机发射子弹: 弹幕,是雷电游戏的精华.这就需要对子弹的运动轨迹进行控制. 先做一个最简单的子弹发射,后面再添加各种弹幕(实际上主要是研究弹幕) 说是最简单,其实也是最普通的子弹发射,产生一个颗子弹移动就OK了. 方法:做一个子弹发射的计时器,产生子弹,子弹做MoveBy动作就OK了. 代码: GameLayer.cpp void GameLayer::fireSchedule(float dt) { Size screenSize = Director::getInstance()->getW

Cocos2d-x《雷电大战》(4)-策略模式实现不同子弹切换!!

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 本文从设计模式中的策略模式入手,主讲了飞机大战中英雄飞机切换不同的子弹.这里分为三种子弹.第一种:每次发一个子弹,垂直发射;第二种:每次发两个子弹,两个都是垂直发射:第三种;每次发三个子弹,两边的子弹有一定的角度,而中间的子弹垂直发射;设计模式是游戏开发经常用到的思想,建议有兴趣的同学可以好好研究下!好了,下面开始吧. 效果如下: Cocos2d-x版本:3.4 工程环境:VS30213 一

javascript飞机大战-----007爆炸效果

要检验什么时候碰撞,我们必须了解什么时候不相撞.以上四种情况是不相撞的时候 首先在引擎里面写好什么时候碰撞什么时候不碰撞 /* 游戏引擎 */ var Engine = { //刚开始的游戏状态 gameStatus:false, //所以敌机 enemy:{}, //子弹 bullet:{}, //得分 score:0, //背景图片 game:document.querySelector('.game'), //初始化 init:function(){ this.gameStart(); }

吃到奖励变换子弹的方法

public class hero : MonoBehaviour { public float superGunTime = 10f; private float resetSuperGunTime; private int GunCount = 1; //用fire脚本去声明三个变量来存放三个位置的枪口 public fire upGun; public fire rightGun; public fire leftGun; void Start() { // player = GameOb

winForm窗体嵌入U3d

最近新做一项目,需要winForm框架嵌入u3d,并且实现交互.从网上搜了各种资料,总结了三种方法: 1.直接打开exe程序 System.Diagnostics.Process.Start(@"D:\Demo\Demo1020.exe"); 缺点:u3d不嵌入到窗体 而是单独的打开. 优点:算是优点吧,画面还是比较流畅的 2.用网上封装好的方法嵌入窗体 可以看这里的实现 代码就不自己贴了 嫌麻烦 http://blog.csdn.net/lisenyang/article/detai

javascript飞机大战-----004创建子弹对象

/* 创建子弹:因为子弹不是只创建一个所以要用构造函数 注意一点:子弹发射的位置应该是英雄机的正中央的位置,所以需要传点东西进来 */ function Bullet(l,t){ this.l = l;//保留一下传进来的l this.t = t;//保留一下创进来的t //初始图片 this.self = null; //子弹初始left this.left = 0; //子弹初始top this.top = 0; //子弹的速度 this.speed = 2; //子弹编号 因为在引擎里面有