Space Shooter 太空射击

1、控制玩家移动

    public float speed = 10f;
    public float xMin = -6.5f;
    public float xMax = 6.5f;
    public float zMin = -4.5f;
    public float zMax = 4.5f;

    void FixedUpdate()
    {
        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");
        Vector3 move = new Vector3(h, 0f, v);
        rigidbody.velocity = speed * move;
        //限制飞机活动范围,这个类似设置transform.position
        rigidbody.position = new Vector3(
            Mathf.Clamp(rigidbody.position.x, xMin, xMax),
            0,
            Mathf.Clamp(rigidbody.position.z, zMin, zMax)
            );
    }

 2、设置边界(超过边界销毁对象(子弹、敌机))

DestroyByBoundary.cs脚本:

    public void OnTriggerExit(Collider other)
    {
        Destroy(other.gameObject);
    }

3、设置陨石绕自身旋转

    float tumble = 5;
    void Start()
    {
        //随机一个角速度
        rigidbody.angularVelocity = Random.insideUnitSphere * tumble;
    }

 4、速度正负控制移动方向正反

 public float speed = 10f;
 //speed为正值,对象向前移动,为负值,向后移动
 rigidbody.velocity = speed * transform.forward;
时间: 2024-12-27 12:50:41

Space Shooter 太空射击的相关文章

Scorpio-CSharp——第一弹 Space Shooter

写在前面———— 哈哈, 开始做关于脚本热更新的第一个例子了,鉴于本人还是个没毕业的学生,所以不足之处还希望大家包涵~~~~~~ 注意: 1.本文章是用Space Shooter(Unity3d官方的小游戏)做的例子 2.Space Shooter源码和Scorpio-CSharp 的下载链接我会放在文章最后面 3.如有任何疑问,请加群245199668 正文 1.新建项目,把下载好的Space Shooter导入Unity中, 打开Done_Main场景,  2.下载Scorpio-CShar

unity3d太空射击游戏----------《图形程序设计》课程设计说明书

广西科技大学 <图形程序设计>课程设计说明书             学生姓名:           江玉珍                  .    学    号:           201400404005           .         专    业:         数字媒体技术专业          . 班    级:            数媒141班             .    指导老师:              黄钟源               .    

Unity3D--学习太空射击游戏制作(二)

步骤三:创建主角 游戏的主角是一艘太空飞船,我们将使用一个飞船模型作为游戏的主角,并赋予他一个脚本,控制他的运动,游戏体的组件必须依赖于脚本才能运行. 01:在Project窗口找到Player.fbx(通过3D Max制作的模型),将其拖动到Hierarchy窗口创建飞船的模型游戏体,然后在Inspector窗口将它的Y轴坐标设置为0,并旋转180度,如图: 02:在Project窗口选择Assets,右键选择Create->Folder创建一个文件夹,取名为Scripts,用于存放脚本文件,

Unity3D--学习太空射击游戏制作(四)

步骤七:添加声音和特效(射击声音和爆炸效果) 01:在Project窗口单机右键,选择Import Package->Custome Package,然后到资源文件目录packages浏览unity包文件,选择ShootingFX.unitypackage,将其打开,选择Import导入到当前工程中,.unitypackage类型的文件是unity的专用资源包,在Project窗口选择资源,如脚本.模型.声音等然后右键选择Export Package,可以将自己的东西到处为.unitypacka

unity游戏之太空射击

由于在开发中遇到的问题需要较大的文字量描述,特此介绍开发的整个流程,并用红色标记所遇到的问题以及解决方法. 开发流程如下: 1. 下载游戏所需模型与素材并导入Unity. 2. 添加玩家飞机 在素材中添加玩家的飞机到层级视图(Hierarchy)中,并命名为player.层级视图 (Hierarchy) 包含当前场景中的每个游戏对象 (GameObject).有些是三维模型等资源文件的直接实例,其余是预设 (Prefabs) 实例,自定义对象构成游戏的绝大部分.预设 (Prefab) 是一种资源

Space Invaders 太空侵略者

发售年份 1978 平台 街机 开发商 Taito 类型 射击 https://www.youtube.com/watch?v=MU4psw3ccUI 原文地址:https://www.cnblogs.com/revoid/p/10340004.html

U3D的飞船太空射击例子中,使用coroutine

coroutine 协同程序与线程差不多,也就是一条执行序列,拥有自己独立的栈,局部变量和指令指针,同时又与其它协同程序共享全局变量和其它大部分东西.线程与协同程序的主要区别在于,一个具有多线程的程序可以同时运行几个线程,而协同程序却需要彼此协作地运行.就是说,一个具有多个协同程序的程序在任何时刻只能运行一个协同程序,并且正在运行的协同程序只会在其显示地挂起时,它的执行才会暂停. 原理探析 coroutine创建的所谓的“线程”都不是真正的操作系统的线程,实际上是通过保存stack状态来模拟的.

太空射击 笔记

1 给飞机添加 rigid body控件 使飞机拥有物理意义,勾掉gravity 添加capsule collide表明碰撞体积,其中可以设置碰撞体积的体积大小.延伸方向.通常情况capsule collide就已经够用,mesh collide是最复杂.最耗资源的模型.勾选Is trigger可以有触发效果 2 设置摄像机位置:调整角度.位置,project映射 设置成正交的orthographic(还有一种是透视的perspective),改变SIZE改变视角大小,改变这些数值的时候,可以直

unity官方教程Space Shooter 学习笔记

我觉得这个教程对我最大的启发就是其中的一句话, 子物体是贴图,父物体是属性.所以我们在创建物体前最好先建立一个空的gameobject, 这样既可以保持hierarchy面板整洁便于管理,又能实现刚才说的话.好了, 下面步入正题. 如何创建一个子弹? 我们先创建一个平面,然后将子弹的贴图赋给这个平面,然后再将shader选项选中mobile的particles的additive,这样就只有激光那部分可以显示出来, 黑色部分就会小时,最后在给子弹添加rigidbody组件和capsule Coll