Stealth视频教程学习笔记(第二章)

本文是对Unity官方视频教程Stealth的学习笔记。在此之前,本人整理了Stealth视频的英文字幕,并放到了优酷上。本文将分别对各个视频进行学习总结,提炼出其中的知识点和思路思想。

视频地址在(http://www.youku.com/playlist_show/id_23389553.html),是一个Stealth的专辑,这里只放上本章第一个视频,其它的大家在上面的链接中慢慢看吧。

第二章有一个视频是FLV格式的,我没法把字幕嵌入其中,所以优酷上就没有传。

偶然发现了一个流式介绍Stealth的文章(http://blog.csdn.net/kakashi8841/article/details/39451739),大家没事可以看看。

PS:有需要全部24个高清视频+字幕的同学,麻烦支持一下向我捐赠100元并留下你的Email。

201 - Player Setup

Collider是最基本的触发物理的条件,例如碰撞检测。基本上,没有Collider物理系统基本没有意义(除了重力)。

Rigidbody是物体的基本物理属性设置,当检测碰撞完之后,就要计算物理效果,而Rigidbody就是提供计算基本参数的玩意。

如果没有Rigidbody而设置了Collider碰撞的话,那这个物体就是个死死不会动的物体。

假设有Rigidbody去撞它的话,那将会被弹开。不过,假设该脚本控制的是位移而不是物理加力的方式的话,将穿透过去。

两个没有Rigidbody的物体,也是穿透。

两个只有collider而没有rigidbody啥都不会发生,碰撞时连OnTriggerEnter等函数也不会触发。

若碰撞体设置了isTrigger属性,将取代UNITY的物理函数来运算。可以在触发函数里将其屏蔽,再次触发碰撞等效果。

当改变刚体参数的时候(例如质量等),应该在FixedUpdate函数中使用它,物理模拟以离散的时间步执行。FixedUpdate函数在每一步之前被立即调用。

一个移动的gameobject,如果有collider,就应该给他一个rigidbody。

改变一个gameobject的位置、旋转角度,有两种方式:直接改变transform.position, transform.rotation;通过力(force)来改变。

音频侦听器(Audio Listener)配合音频源(Audio Sources),让你可以为你的游戏创建听觉体验。当音频监听器贴在场景中的一个游戏对象,任何音频源,如果足够接近侦听器就会被获取并输出到计算机的扬声器。每个场景只能有1个音频侦听器正常工作。音频监听器没有属性。它必须被添加才能使用。它总是默认地添加到主照相机。

202 - Player Animator Controller

一个Animator Controller就是控制动画的意思。它可以将多个FBX文件中的动画加载进来,每个动画都是一个状态,状态之间根据下图所示的"Parameters"进行转换。这就是所谓的状态机。Animator Controller会选择处于当前状态的动画并进行显示。

Avatar Mask可以屏蔽掉某些部分的动画,例如,屏蔽掉人的脚、腿、上身、右手的动画,使之不受此动画影响。

203 - HashIDs

可以用"Base Layer.Dying"这样的字符串指定你要使用的动画,也可以用int dyingState = Animator.StringToHash()方法获取其哈希值,便于引用。这样就不会有拼写错误了。

204 - Player Movement

Animator.SetLayerWeight()可以指定某层动画的权重。

Mecanim的layer可以在一个角色上播放超过一个动画

较高的layer会盖过下面的layer, 不过layer 0以外的layer weight预设是0, 要set为1才会播放。例如layer 0是站立或跑走的动画,layer 1是 挥剑的动画,用body mask控制layer 1只影响上半身,脚本中要挥剑就 Animator.SetLayerWeight(1,1f);完成后Animator.SetLayerWeight(1,0f);

这就是上一篇设计"HashIDs"的用处。使用hash.sneakingBool就避免了拼写错误。

这是根据用户输入的水平(X轴)和竖直(Z轴)方向的量来让player转向的代码。Quaternion.LookRotation()可以把向量转换为旋转角度。Quaternion.Lerp()可以实现平滑地转向。Rigidbody.MoveRotation()会转向你传入的角度。

在这里修改动画的速度就可以提速了。Speed应该指的是每秒动画执行的次数。

状态机所在的状态会在执行动画时显示这样的进度条。

205 - Player Health

No news

Stealth视频教程学习笔记(第二章)的更多相关文章

  1. Stealth视频教程学习笔记(第一章)

    Stealth视频教程学习笔记(第一章) 本文是对Unity官方视频教程Stealth的学习笔记.在此之前,本人整理了Stealth视频的英文字幕,并放到了优酷上.本文将分别对各个视频进行学习总结,提 ...

  2. 《DOM Scripting》学习笔记-——第二章 js语法

    <Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...

  3. The Road to learn React书籍学习笔记(第二章)

    The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...

  4. [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”

    [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...

  5. [HeadFirst-JSPServlet学习笔记][第二章:高层概述]

    第二章:高层体系结构 容器 1 什么是容器? servelet没有main()方法.它们受控于另一个Java应用,这个Java应用称为容器(Container) Tomcat就是这样一个容器.Web服 ...

  6. c#高级编程第七版 学习笔记 第二章 核心c#

    第二章 核心C# 本章内容: 声明变量 变量的初始化和作用域 C#的预定义数据类型 在c#程序中使用条件语句.循环和跳转语句执行流 枚举 名称空间 Main()方法 基本的命令行c#编译器选项 使用S ...

  7. 《Python基础教程(第二版)》学习笔记 -> 第二章 列表和元组

    本章将引入一个新的概念:数据结构. 数据结构是通过某种方式阻止在一起的数据元素的集合,这些数据元素可以是数字或者字符,设置可以是其他数据结构. Python中,最基本的数据结构是序列(Sequence ...

  8. Java 学习笔记 ------第二章 从JDK到IDE

    本章学习目标: 了解与设定PATH 了解与指定CLASSPATH 了解与指定SOURCEPATH 使用package与import管理类别 初步认识JDK与IDE的对应关系 一.第一个Java程序 工 ...

  9. 交换机安全学习笔记 第二章 MAC地址泛洪攻击

    本文为书中相关知识的摘要,由于书中以思科设备为配置依据,所以笔记中补充了华为.H3C设备的相关配置.华为设备配置参考华为S2352EI 产品版本:V100R005C01文档版本:02.  H3C配置参 ...

随机推荐

  1. 《CODE》书摘

    2016-11-08 14:59:16 可以说英语词汇就是一种编码. 2016-11-08 15:19:04 实际上任何两种不同的东西经过一定的组合都可以代表任何种类的信息. 2016-11-08 1 ...

  2. Forwards on Weibo (30)

    BFS,题意比较难懂,是求离query L层的总共人数 #include <stdio.h> #include <string.h> #include <iostream ...

  3. DbExpressionBinding requires an input expression with a collection ResultType. 参数名: input

    使用linq多表连接遇到的问题: 解决方案:注释为出错代码,更改使用GroupBy解决问题 context.ERG_TipOffsInfo.GroupBy(x => x.Data,(Data,C ...

  4. 图片轮播 js代码

    <script type="text/javascript"> //图片轮换 $(function () { //------------------ var sWid ...

  5. 在Windows上编译最新的CURL,含有zlib,openssl

    最近,从网上下载了一个curl库,使用时各种报错,都无法启动,于是干脆就直接自己编译了. 1. 准备工作 a. 下载zlib zlib可以使得HTTP请求支持gzip压缩,其地址如下: 官网:http ...

  6. javascript基础程序(算出一个数的平方值、算出一个数的阶乘、输出!- !- !- !- !- -! -! -! -! -! 、函数三个数中的最大数)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. HTML5界面开发工具jQuery EasyUI更新至v1.3.5

    本文转自:evget.com HTML5界面开发工具 jQuery EasyUI 最新发布v1.3.5,新版修复了多个bug,并改进了menu,tabs和slider等多个控件.jQuery Easy ...

  8. <<数字是世界的>>读后感

    我对这本书的第一印象就是很多书评中提到的,这是一本无论是否有学习过计算机专业知识的人都可以读的书.我一开始不是很能理解这些评价,我是抱着对这个问题的疑惑进行通读的,以后我发现了,它全书中都很少出现计算 ...

  9. [原] XAF 添加日期筛选下拉选择

    1.ListView 添加日期筛选下拉选择,选择指定,可指定日期范围 2.Code using DevExpress.Data.Filtering; using DevExpress.ExpressA ...

  10. NGUI 3.0.7的新锚点系统设置不好就会造成显示错误的错觉

    每次设置NGUI控件的锚点时,都需要刷新一下窗口,不然就会造成显示错误的错觉. 同时,NGUI控件设置锚点的参考对象为一个物体时还需要调整其控件大小,不然也会造成显示错误的错觉.