unity3d 实现LOL英雄的寒冰的(万箭齐发)
先上效果图
放到人物身上的脚本Thefanattacks
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Thefanattacks : MonoBehaviour
{public string BulletOrigin;//子弹父类的路径public string bulletModelPath; //子弹模型路径public int angle;//扇形的角度public int interval;//间隔(间隔最好是Mathf.Abs(count / interval)*2 的偶数,负的也许只不过有一些偏差)Vector3[] vectors;//数组int sum;//记录最早角度(-(int)(angle/2))得到你输入的扇形角度的一半,负数角度int count;//得到你输入的扇形角度的一半,负数角度// Start is called before the first frame updatevoid Start(){sum = -(int)(angle/2);count= -(int)(angle / 2);//得到你输入的扇形角度的一半,负数角度int number = Mathf.Abs(count / interval)*2;if (number % 2 == 0)//判断是否是偶数{vectors = new Vector3[Mathf.Abs(count / interval) * 2 + 1];}//else//判断是否是基数//{// vectors = new Vector3[Mathf.Abs(count / interval) * 2 + 2];//}}// Update is called once per framevoid Update(){if(Input.GetKeyDown(KeyCode.Q)){if(vectors!=null){Vector3 bornPos; //世界空间Quaternion bornDir; //世界空间下的子弹方向for (int i = 0; i < vectors.Length; i++){vectors[i] = Quaternion.Euler(new Vector3(0, count, 0)) * Vector3.forward;count += interval;}bornPos = transform.TransformPoint(new Vector3(0, 0, 0));for (int i = 0; i < vectors.Length; i++){vectors[i] = transform.TransformDirection(vectors[i]); //拿到世界空间下的方向表示}for (int i = 0; i < vectors.Length; i++){bornDir = Quaternion.LookRotation(vectors[i]);var prefabBulletOrigin = Resources.Load<GameObject>("Prefabs/" + BulletOrigin);//加载var prefabBulletModel = Resources.Load<GameObject>($"Prefabs/Bullet/{bulletModelPath}");//加载var bulletOriginGo = GameObject.Instantiate(prefabBulletOrigin, bornPos, bornDir);//实例化var bulletModelGo = GameObject.Instantiate(prefabBulletModel, bulletOriginGo.transform);//实例化认父bulletModelGo.transform.localPosition = Vector3.zero;bulletModelGo.transform.localEulerAngles = Vector3.zero;}count = sum;}}}
}
子弹的移动脚本Move
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Move : MonoBehaviour
{public int speet;// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){transform.Translate(transform.forward*Time.deltaTime* speet,Space.World);Destroy(gameObject, 5);}
}
unity3d 实现LOL英雄的寒冰的(万箭齐发)相关推荐
- maya扇子动画_maya怎么制作一个万箭齐发的效果?
最近有基友大学作业需要做一个粒子效果的作业,我看到网上很多教程讲万箭齐发的,但是有的不细致有的重点都在表达式上,所以我写了一个快速get作业成果的教程.具体操作位置可以看末尾笔记哦. 软件名称:Aut ...
- 万箭齐发!COSCon' 21深圳分会场闪亮登场!
" 点击蓝字 / 关注我们 " | 作者:COSCon'21 组委会 | 编辑:钱奕 | 设计:朱亿钦 | 责编:沈于蓝 01 序言 世界上最遥远的距离,不是生与死的距离,而是你在 ...
- 高铁动车“万箭齐发”迎2019春运
向塘长轨基地隶属于中国铁路南昌局集团有限公司鹰潭工务机械段,是全国铁路16个高铁焊轨基地之一,也是目前华东地区最大的焊轨基地. 刘占昆 摄 高空俯瞰向塘长轨基地中整齐排列的钢轨. 刘占昆 摄 高空俯瞰 ...
- 2022年京东618万券齐发活动入口, 京东618红包领取地址
2022年京东618万券齐发活动入口, 京东618红包领取地址 618期间会有许多优惠券,比如家电优惠券.Iphone券等等,今年的京东618购物节活动正式来袭,并且在最近上线了618万券齐发的活动, ...
- 英雄联盟怎么解除小窗口_英雄联盟手游ping信号怎么发 怎么给队友发信号_英雄联盟手游...
英雄联盟手游也可以给队友发信号提示它们撤退或者打算gank某位英雄.有些小伙伴可能还不清楚英雄联盟手游ping信号怎么发,这里给大家做一个简单介绍. 如图所示,右上角有3个图标,对应的分别是" ...
- 古诗欣赏:君王城上竖降旗,妾在深宫那得知?十四万人齐解甲,更无一个是男儿!
君王城上竖降旗,妾在深宫那得知? 十四万人齐解甲,更无一个是男儿! 其实这事怪不到兵将身上,因为他们决定不了什么,甚至是什么也决定不了.
- bat ping 返回值_英雄联盟手游ping信号怎么发 怎么给队友发信号_英雄联盟手游
英雄联盟手游也可以给队友发信号提示它们撤退或者打算gank某位英雄.有些小伙伴可能还不清楚英雄联盟手游ping信号怎么发,这里给大家做一个简单介绍. 如图所示,右上角有3个图标,对应的分别是" ...
- Python分析《蜘蛛侠:英雄远征》11万条猫眼评论
分析蜘蛛侠11万条猫眼评论 一.需要用的模块 panda(用来读取文件) pyecharts (绘制图表) matplotlib (绘图) wordcloud (制作词云) jieba (中文分词) ...
- 随机邮箱_万豪随机发50美刀的礼券,看看你的邮箱有没有!英国航空BA里程缩水在即...
万豪撒50美刀礼品券 昨天晚些时候开始,部分同学收到了万豪发来的50美刀礼品券,这一活动对万豪来说很少发生,在国外的飞客网站上也成了热门话题 目前不知道 万豪发这个活动以什么为名,从反馈看,有30和5 ...
最新文章
- 《模拟信息转换器(AIC)的实现技术研究》读书笔记
- html和css之间有什么区别,html语法和css语法之间有什么区别
- Java 技术篇-利用exe4j工具生成exe文件实例演示,IntelliJ IDEA将项目转化为jar包方法,运行生成后的程序弹出exe4j提示处理,生成的程序显示控制台设置方法
- 广告点击率预测 [离线部分]
- iphone闪退修复工具_iOS14 beta5公测版更新:问题基本修复,已更新ios14的用户一定要更新!...
- android 空白占位符,android textview空格占位符以及一些其他占位符汇总
- c语言中的运算符按位或,|按位或运算符
- 怎么把图片四角去掉_端午“粽子”怎么做,有哪几种包法,嘉兴粽子闻名全国,软糯可口...
- python apache_Windows 配置 Apache Python CGI
- IDEA自动生成序列化ID
- 斐讯 K3刷梅林改固件ac-3100 成功配置定时任务
- ectouch 常用功能
- 【SQL】字符串去空格解决方法
- unity2d里实现鼠标拖拽物体的功能
- ERROR:cannot load flash device description
- Groovy 百度云分享下载各个版本SDK
- android 二进制 xml,如何将XML转换为Android二进制XML
- 球半篮球分析,NBA总决赛:勇士VS凯尔特人
- 【第二届】无锡太湖学院ICPC校队对抗赛原创 IOI D题题解
- GridView数据替换,数字按要求替换文字