Unity Input,生命周期,Light,获取组件
- 1. 递归方法遍历获取指定子物体
知识点:递归的使用;transform.childCount、GetChild(index)


2. Input输入控制类,检测玩家输入
知识点:
Input.GetKeyDown();Input.GetKey();Input.GetKeyUp();
Input.GetMouseButton();
Input.GetAxis(“”);
按键设置:

按键按下、按的过程、按键抬起三个执行顺序:

鼠标按键的id

Asdw按键轴值获取:

小案例:按键控制旋转和移动,坦克发射子弹;
坦克控制类:


子弹控制类,一直沿着z轴向前运动

问题:一直发射子弹,会导致内存中不断积累子弹,有什么方法可以优化?提示:缓冲池解决。
3. 生命周期函数
知识点:熟悉各个内置函数的调用顺序和调用次数


4. Light灯光组件
知识点:详解第一个Unity组件,熟悉Unity组件的属性和使用方法,如灯光类型、灯光颜色调试、灯光影子类型;
Type:Light类型:Directional直射光;Point点光源;Spot聚光灯;Area区域光;
Color:灯光颜色;
Mode:灯光烘焙模式:Realtime:实时光;Mixed:混合光;Baked:烘焙光;
Instensity:光照强度;
Indirect Multiplier:光照乘数,间接光从另一个游戏物体反射到另一个游戏物体的光线;小于1时每次反射会变暗,
ShadowType:阴影类型:Soft Shadows:平滑阴影;HardShadow:硬阴影;NoShadows没有阴影;
BakeShadowAngle:人为增加阴影平滑度,让阴影更光滑;
Strength:阴影强度;
Resolution:阴影质量;质量越高,消耗越大;
Bias:阴影推移距离;
Normal Bias:光阴表面推移距离;
NearPlane:(在点光源和聚光灯下起作用)影子的近裁剪面;
Cookie:投射阴影的指定纹理; cookiesize:纹理大小;
Draw Halo:辉光是否开启;
Flare:光耀(只有电光源和聚光灯下起作用)赋值光耀文件;
Culling Mask:裁剪层;(一个十进制数字通过多个二进制数值)

5. 组件的获取
知识点:通过游戏物体获取组件GetComponent<>,获取到组件之后修改组件属性;
流程的理解:1.找到游戏物体;2.在游戏物体上获取组件;3.得到组件控制权之后修改组件属性;
案例:通过获取代码组件来设置子弹的速度;

作业:使用GetComponent方法获取坦克发射子弹的子弹控制代码,设置一个随机数作为子弹的运行速度;
Unity Input,生命周期,Light,获取组件的更多相关文章
- 【技术博客】Flutter—使用网络请求的页面搭建流程、State生命周期、一些组件的应用
Flutter-使用网络请求的页面搭建流程.State生命周期.一些组件的应用 使用网络请求的页面搭建流程 在开发APP时,我们常常会遇到如下场景:进入一个页面后,要先进行网络调用,然后使用调用返 ...
- Angular6 基础(数据绑定、生命周期、父子组件通讯、响应式编程)
Angular相比于vue来说,更像一个完整的框架,本身就集成了很多模块,如路由,HTTP,服务等,而vue是需要另外引入比如(vuex,axios等).Angular引入了依赖注入.单元测试.类等后 ...
- Unity脚本生命周期
前言 说到生命周期,影响最深刻的是,在接触Java的JSF组件时,JSF组件的五大生命周期,全要默写出来,嘿嘿…… 总结这两天在写小怪和掉落的糖葫芦时,老是遇到GameObject未销毁,一直存在场景 ...
- Servlet生命周期以及获取参数
1. 创建Servlet几种方式 1) 实现Servlet接口 控制Servlet的生命周期 构造器 init() service() des ...
- Unity脚本生命周期与执行顺序
文章目录 脚本生命周期 MonoBehavior生命周期图 脚本执行顺序 自定义执行顺序 在Unity中,脚本可以理解为附加在游戏对象上的用于定义游戏对象行为的指令代码.必须绑定在游戏对象上才能开始它 ...
- pomelo生命周期回调和组件加入
一 生命周期回调 生命周期回调可以让开发人员在不同类型的server生命周期中进行详细操作. 提供的生命周期回调函数包含:beforeStartup,afterStartup,beforeShutdo ...
- 简单记录一下vue生命周期及 父组件和子组件生命周期钩子执行顺序
首先,vue生命周期可以用下图来简单理解 当然这也是官方文档的图片,详细的vue周期详解请参考这里 然而当同时存在父子组件的时候生命周期钩子是如何执行的呢? 请看下文: 加载渲染过程父beforeCr ...
- Servlet生命周期 Servlet获取配置信息 ServletContext
一.Servlet生命周期 实例化 ——> 初始化 ——> 服务 ——> 销毁 出生:(实例化 然后 初始化)tomcat第一次访问,Servlet就出生(默认情况下) 活着:( ...
- react学习(三)之生命周期/refs/受控组件 篇
挂载/卸载 //在类组件中 class Clock extends React.Component { constructor(props) { super(props); this.state = ...
随机推荐
- linux怎么实时查看目录下是否有文件生成
inotify-tools 是为linux下inotify文件监控工具提供的一套c的开发接口库函数,同时还提供了一系列的命令行工具,这些工具可以用来监控文件系统的事件. inotify-tools是用 ...
- Windows下Redis安装过程
1.去github下载Redis-x64-2.8.2402.zip压缩包 2.将压缩包解压到你要安装的目录下 3.将redis设置为开机自启动服务 redis-server --service-ins ...
- python 三种 安装包的方法
1.pycharm安装第三方库 然后点+搜索库安装. 注意 : 有时候点+会出现下图提示:Nothing to show,这就需要在点加号前点一下绿色圈圈的conda标志. 点+号出现下图的内容才是正 ...
- servlet的生命周期和servlet的继承关系
一.servlet的生命周期 一个servlet类的对象 加载——>实例化——>初始化——>服务——>销毁 第一次访问某个servlet的时候 首先调用其 构造函数 pub ...
- Python之删除空白
Python能够找出字符串开头.末尾.两端多余的空白. lstrip()方法可以剔除字符串开头的空白: rstrip()方法可以剔除字符串末尾的空白: strip()可以剔除字符串两端的空白: fav ...
- 18.python关于mysql的api
一.pymysql模块1.pymysql是Python中操作MySQL的模块2.执行sql语句(1)连接数据库: import pymysql #连接mysql数据库创建conn对象(host连接的机 ...
- cpp实验二
1.函数重载编程练习 编写重载函数add(),实现对int型,double型,Complex型数据的加法.在main()函数中定义不同类型 数据,调用测试. #include<iostream& ...
- Pycharm桌面图标(Fedora)
1.解压pycharm压缩包至/usr/local/pycharm文件夹下 2.在/usr/share/applications/目录下,新建Pycharm.desktop文件,内容如下: [Desk ...
- Linux----------Openssh介绍以及用法
一.OpenSSH介绍 OpenSSH这一术语指系统中使用的Secure Shell软件的软件实施.用于在远程系统上安全运行shell.如果您在可提供ssh服务的远程Linux系统中拥有用户帐户,则s ...
- Boot Hill 布特山
发售年份 1977 平台 街机 开发商 Midway 类型 射击 https://www.youtube.com/watch?v=yFVZhSCjo6w