Unity实现原始的发射子弹效果

news2024/9/22 2:21:14
  • 1 创建一个炮塔,按下空格-坦克会发射一个小球
  • 2.小球会掉在地上滚下来-添加组件
  • 3 间隔几秒后自动销毁
  • 程序逻辑:1.在场景中创建一个炮塔\子弹拿到代码里的变量里
  • 程序逻辑: 2.if语句检测用户有没有按下空格
  • 程序逻辑: 3.在炮塔坐标的位置,克隆子弹
  • 程序逻辑: 4.接着让子弹用translate()往Y轴方向移动
  • 程序逻辑: 5 接着让子弹添加Rigibody组件

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class RoleControl : MonoBehaviour
{
    程序逻辑:1.在场景中创建一个炮塔\子弹拿到代码里的变量里
    //程序逻辑: 2.if语句检测用户有没有按下空格
    //程序逻辑:  3.在炮塔坐标的位置,克隆子弹
    //程序逻辑:    4.接着让子弹用translate()往Y轴方向移动
    //程序逻辑:    5 接着让子弹添加Rigibody组件

    GameObject Tanke001;
    GameObject Zidanmuban001;
    GameObject CloneFather;
    GameObject TempObj;//这个变量用来存储临时克隆的物体子弹

   public float speed = 1;
    void Start()
    {
        Tanke001 = GameObject.Find("MainRole");
        Zidanmuban001 = GameObject.Find("ZidanMuban");
        CloneFather = GameObject.FindGameObjectWithTag("FatherClone");
        
    }

    // 
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Space)||Input.GetMouseButtonDown(0))
        {
            //用户按下了鼠标左键或者空格 克隆
            CloneZIdan();
        }

        if (TempObj!=null)
        {
            TempObj.transform.Translate(new Vector3(0, 1* speed*Time.deltaTime, 0));
        }

        GameObject.Destroy(TempObj, 3f);
    }

    void CloneZIdan()//用来发射
    {
        Debug.Log("这里去发射子弹");

        TempObj =   GameObject.Instantiate(Zidanmuban001, new Vector3(Tanke001.transform.position.x, Tanke001.transform.position.y, Tanke001.transform.position.z+1),Quaternion.Euler(90,0,0), CloneFather.transform);
        TempObj.AddComponent<Rigidbody>();
     }
}
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2153902.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5. 数字证书与公钥基础设施

5. 数字证书与公钥基础设施 (1) PKI 的定义、组成及应用 PKI(Public Key Infrastructure,公钥基础设施) 是一个使用公钥技术来提供安全服务的框架。它定义了如何管理和维护公钥,以及如何通过证书来验证公钥的真实性。PKI的核心组成部分包括: 证书颁发机构(CA, Certifica…

(done) 声音信号处理基础知识(4) (Understanding Audio Signals for ML)

来源&#xff1a;https://www.youtube.com/watch?vdaB9naGBVv4 模拟信号特点如下 时域连续(x轴) 振幅连续(y轴) 如下是模拟信号的一个例子&#xff1a; 数字信号特点如下&#xff1a; 一个离散值序列 数据点的值域是一系列有限的值 ADC&#xff1a;模拟信号到数字信号的…

Elionix 电子束曝光系统

Elionix 电子束曝光系统 - 上海纳腾仪器有限公司 -

Python包、模块、库辨析

目录 1 模块的基础介绍 2 包的概念解析 3 库的定义与作用 4 区分三者 5 实例 __init__.py addition.py multiplication.py main_scipt 1 模块的基础介绍 模块是 Python 编程的基本组成部分之一&#xff0c;它是单个文件 &#xff0c;包含 Python 代码&#xff0c;可以定…

GB28181协议接入SVMSPro平台

国标28181协议接入SVMSPro平台 步骤一&#xff1a;海康摄像机28181配置&#xff1b;登录海康摄像机网页进配置选项&#xff0c;左边选网络-高级设置-平台接入-类型选28181 勾选启用&#xff0c;28181协议版本选最新2016 SIP服务器ID:默认20位 34020000002000000001,也可在服务端…

Linux系统网络诊断工具MTR使用方法

我们一般做linux系统服务器测评的时候&#xff0c;基本都会进行网速方面的测试&#xff0c;这方面的脚本工具啥的有很多&#xff0c;其中MTR是Linux平台上一款非常好用的网络诊断工具&#xff0c;集成了traceroute、ping、nslookup的功能&#xff0c;用于诊断网络状态非常有用。…

胤娲科技:谷歌DeepMind祭出蛋白质设计新AI——癌症治疗迎来曙光

在科技的浩瀚星空中&#xff0c;DeepMind的“阿尔法”家族总是能带来令人瞩目的璀璨光芒。这一次&#xff0c;它们再次以惊人的姿态&#xff0c; 将AI的触角深入到了生命的微观世界——蛋白质设计领域&#xff0c;为我们描绘了一幅未来医疗的宏伟蓝图。 想象一下&#xff0c;一…

思通数科开源产品:免费的AI视频监控卫士安装指南

准备运行环境&#xff1a; 确保您的服务器或计算机安装了Ubuntu 18.04 LTS操作系统。 按照产品要求&#xff0c;安装以下软件&#xff1a; - Python 3.9 - Java JDK 1.8 - MySQL 5.5 - Redis 2.7 - Elasticsearch 8.14 - FFmpeg 4.1.1 - RabbitMQ 3.13.2 - Minio &#xff08;…

网络丢包定位记录(三)

网络IP层丢包 接口ip地址配置丢包 1. 本机服务不通&#xff0c;检查lo接口有没有配置地址是127.0.0.1&#xff1b; 2 .本机接收失败&#xff0c; 查看local路由表&#xff1a;ip r show table local|grep 子机ip地址&#xff1b;这种丢包一般会出现在多IP场景&#xff0c;子…

robomimic应用教程(一)——模型训练

Robomimic使用集中式配置系统来指定所有级别的(超)参数 本文介绍了配置&#xff08;推荐&#xff09;和启动训练运行的两种方法 目录 一、使用config json&#xff08;推荐&#xff09; 二、在代码中构造一个配置对象 三、查看运行结果 1. 实验结果会存在一个固定文件夹中…

S-Clustr-Simple 飞机大战:骇入现实的建筑灯光游戏

项目地址:https://github.com/MartinxMax/S-Clustr/releases Video https://www.youtube.com/watch?vr3JIZY1olro 飞机大战 这是一个影子集群的游戏插件&#xff0c;可以将游戏画面映射到现实的设备&#xff0c;允许恶意控制来完成游戏。亦或者设备部署在某建筑物中,来控制…

超实用的 Typora 插件

&#x1f33c;&#x1f4da;Typora 是一款高效、易用且跨平台的 Markdown 编辑器和阅读器&#xff0c;其具有小巧、快速、实时预览等特点&#xff0c;非常受大家的欢迎。今天给大家推荐一款如虎添翼的 Typora 插件(Typora Plugin)&#xff0c;它可以通过插件增强 Typora 的功能…

C++入门(03)萌新问题多(二)

文章目录 1. VS2022 控制台输出中文时&#xff0c;变成了一堆“&#xff1f;”1.1 字体、语言设置1.2 在程序中指定控制台编码1.3 修改注册表&#xff08;只能说试试吧&#xff09; 1. VS2022 控制台输出中文时&#xff0c;变成了一堆“&#xff1f;” 问题如下&#xff0c;Vi…

解决uniapp开发的app,手机预览,上下滑动页面,页面出现拉伸,抖动的效果问题,

在pages.json文件里“globalStyle”下面的"app-plus"里加入"bounce": "none"即可 "app-plus": { "bounce": "none", //关闭窗口回弹效果 }

[Leetcode] 227.基本计算器

标题&#xff1a;[Leetcode] 227.基本计算器 个人主页&#xff1a;水墨不写bug &#xff08;图片来源于网络&#xff09; // _ooOoo_ // // o8888888o // // …

linux 获取指定端口的PID netsat awk

使用netstat -ntpl 获取指定端口的PID #获取端口19000对应的PID netstat -ntpl | grep 19000 | awk {print $NF} | awk -F/ {print $1}

vcs/verdi常用命令(持续更新)

1. 操作rtl 1.1 加载rtl命令 verdi -dbdir simv.daidir的目录 1.2 显示某时刻rtl的值 首先鼠标左键在波形上选中某个特定时刻&#xff0c;然后鼠标选中rtl代码文件&#xff0c;按x就会显示&#xff0c;再按x就会退出显示。 1.3 查找字符串 按/ 1.4 vcs将rtl的信号加载到…

mockito+junit搞定单元测试(2h)

一&#xff0c;简介 1.1 单元测试的特点 配合断言使用(杜绝 System.out )可重复执行不依赖环境不会对数据产生影响spring 的上下文环境不是必须的一般都需要配合 mock 类框架来实现 1.2 mock 类框架使用场景 要进行测试的方法存在外部依赖(如 db, redis, 第三方接口调用等)…

HashMap扩容时机是插入前还是插入后?

结论 不管是HashMap还是ConcurrentHashMap都是插入后。 过程为&#xff1a; 先计算哈希值。对应的哈希槽插入数据&#xff0c;决定是红黑树还是链表插入完毕才计算是否需要扩容&#xff0c;假如需要则扩容 源码 源码如下&#xff1a; 其中addCount方法里面写入扩容。

如何设置 Django 错误邮件通知 ?

Django 是一个强大的 web 框架&#xff0c;非常适合那些想要完美快速完成任务的人。它有许多内置的工具和特性&#xff0c;一个有用的特性是 Django 可以在出现错误时发送电子邮件提醒。这对开发人员和管理员非常有用&#xff0c;因为如果出现问题&#xff0c;他们会立即得到通…