unity3d Animal Controller的Animal组件中General基础部分理解

news2024/11/15 11:17:05

在这里插入图片描述

控制器介绍

动物脚本负责控制动物的所有运动逻辑.它管理所有的动画师和刚体参数,以及所有的状态和模式,动物可以做。
动物控制器 是一个动画框架控制器,根动或到位,为任何生物或人形。它利用刚体与物理世界的互动和动画师的玩动画。

States

States 是不互相重叠的动画。例如,动物不能同时奔跑和跳跃,或者飞行和游泳。
这些动画还需要一些内部逻辑才能发挥作用。
对于行走,动物需要与地面保持一致。对于游泳,动物需要与水面保持一致。为了下降,动物需要使用重力。

Modes

另一方面,模式是一组被称为 才能, 它可以在 状态 动画。例如,动物可以在奔跑时攻击,在飞行时躲避,在下降时接受伤害等。
在大多数情况下,这些动画不需要使用任何特定逻辑,但如果它们需要任何自定义逻辑:可以使用模式修饰符来更改对模式动画的一些影响。

Stances 立场

状态是状态动画的变化。例如。运动动画(行走、跑步)可以用不同的方式演奏。如果动物受伤,或者蹲着/偷偷摸摸,或者站在两条腿上,这个角色的行走方式就不同了。他仍处于运动状态,但立场不同。

主要组成部分

动物管理员需要 动画组件 以及 刚体组件 去工作。这两个组件需要与动物脚本处于同一层次。

动画组件

因为我们用的是 刚体 构成部分: 更新模式 建议将其设定为 动画物理学 .
在这里插入图片描述

刚体组件

刚体组件允许动物与现场的其他刚性和静态物体相互作用。

旋转将由动物组成部分处理,因此,根据代码,所有的旋转将被冻结:
在这里插入图片描述

碰撞器

对于所有生物,建议两足动物或四足动物在生物的主要骨骼(如脊椎和头部)上添加碰撞器。但是,如果您愿意,您可以只向根游戏对象添加一个胶囊碰撞器。

在这里插入图片描述

重要的
如果在角色的根上添加主碰撞器,则碰撞器不得接触地面。这将导致斜坡上的滑动问题。
在这里插入图片描述

默认情况下,动物控制器设置为“animal”层。动物游戏对象层次结构中的所有游戏对象也应设置为同一层。
攻击触发器、交互触发器和其他不属于动物本身的碰撞器应设置在“忽略光线投射层”上。

动画控制器

… 动画控制器 是动物脚本的核心动画逻辑。它将通过动物剧本进行前后交流,告知哪些动画正在播放,哪些动画正在播放 状态 , 模式, 或 地位 动物在。

在这里插入图片描述

为了使动物控制器正常工作,动画状态被标记为唯一的 标签 寻找并检查活动的游戏动画是否与动物组成部分的指令相匹配。

像这样的标签 ( Locomotion, Jump, Idle, Fly, Fall, etc ).

这样,控制器就知道动画师是否在活动中播放了正确的动画 状态 .
在这里插入图片描述

Animal组件

General
Player 玩家
pivots 主要的

如果你只使用 局部 不与地形保持一致角色节点。
(在默认情况下,当添加一个新的动物成分时,会创建3个支点: 臀部 , 胸部 和 水 (游泳用)。)
臀部和胸部轴长度/乘数必须接触表面,甚至更远一点,这样动物就能永远找到地面
第一列是名称
第二列 是菜单按钮 用于更改显示的枢轴的下一个参数:

1、Position位置 枢轴相对于动物的局部位置。
2、Direction:轴的局部方向。默认情况下设置为矢量3.向下
3、Pivot Color 数据轴颜色: 在场景中显示的轴的颜色,游戏中没有作用

第六列或者第四列的m是乘法器:这个值是支点的长度。它用于设置用于控制器上的激光铸造的射线长度
最后一列是编辑模式,可以帮你快速定位支点位置。
在这里插入图片描述

Movement 运动

在这里插入图片描述

Camera Input 摄像机输入(动物会利用摄像头向前移动)
Always Forward 总是向前(动物将永远前进-就像在无穷无尽的跑步游戏)
Use Camera Up 使用相机向上(在水下飞行或游泳时,使用相机向上或向下移动的矢量–如果这是错误的,动物将需要一个向上或向下的输入来移动更高或更低。)
Smooth Vertical 光滑垂直的(用于操纵杆或移动输入,以提高速度通过棒压)
Can Sprint 能跑(动物能冲刺吗?)
Turn Multiplier 转弯乘数(更高的数值意味着动物会更快地转向)
In Place Damp 地方潮湿(平稳地转动。当它到达目标并在人工智能动物周围移动时,人工智能就会使用它)
Turn Limit 转动限制(当转弯角在所提供的限制范围之外时,使动物减速)
Animator Speed 动画速度(全球乘数动物的动画。更高的值意味着动画会玩得更快)
Time Multiplier时间乘数(当地时间乘数动物。可用于慢动作运动)
Ground 地面

在这里插入图片描述

Ground Layer 地面所在层级 (如果动物开始 堕落 无缘无故,应该是因为 地面层 是空的,或者动物下面的游戏对象层需要添加到 地面面膜 ).
Orient To Ground面向地面(一个使动物能够向地面旋转的切换器-为类人动物禁用它!)
Debris Tag 碎片标签(你的残片是什么?标记你的小石头,楼梯,和其他动物可以行走的小物体,以便更好的雷射计算从动物默认设置为" 楼梯 ")
Height 高度(从动物臀部到地面的距离
Slope Limit 坡度限制(动物能行走的斜坡的最大角度.如果动物试图走在比这高的斜坡上,它就会滑下来。
Slide Threshold 滑动阈值 (在地形上的角度开始向下滑动)
Slide Amountr 滑动量(如果一只动物因为斜坡而往下滑,他们应该被往下推多少
Slide Damp (Dampening) 滑动湿气(阻尼)(阻尼值来激活滑动效果-低值意味着滑动发生得更快)
Ground Alignment 地面对准
Align Pos Lerp 在接地时,光滑度值应快速下降
Align Pos Delta 对齐位置增量(在使用非接地状态(如坠落)时捕捉到地面的平滑度值)
Align Rot Lerp 平滑度值 平滑度值与接地时的地面斜率一致
Raycast Radius 用于检查动物下面地面的探测器半径
Align Cycle 当动物被接地时,控制器应该经常检查每一个框架,以调整动物。更高的值=更精确的值=更好的性能默认值是每帧1
Gravity 引力
Direction 方向

作为矢量的重力方向3。y轴上的默认值为-1。例如,标准地球重力直接向下推动。

Force 力量

这只动物落地的力量有多大。默认值为9.8

Start Gravity Cycle 开始重力循环

用额外的时间启动重力,将动物向下推。较高的数值=较强的重力

Clamp Gravity Speed 压紧重力速度

控制重力的速度。设置为0将忽略此设置。

Ground Changes Gravity 地面变化重力

允许动物在任何表面上向任何方向移动的开关,例如倒置或类似于管道周围的声波

Strafing 冲击

施特拉需要一套新的动画。确保您有适当的动画设置来使用此功能!

Strafe 猛击

启动对动物的扫射–一个通常在运行时使用的可拖曳的地方–你通常不需要自己设置它。

Normalize 使正常化

规范动物的射射角度。180到180变成1到1

Lerp 勒普

勒普值顺利进入状态
默认值为5

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

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

相关文章

canvas绘制圆形进度条

canvas绘制圆形进度条 用canvas绘制了一个圆形进度条&#xff0c;记录一下&#xff1a; 效果如下&#xff1a; 感觉效果还行&#xff0c;不过有待优化 代码如下&#xff1a; 我是用Vue写的 组件的代码&#xff1a; progressCanvas.vue <template><div><can…

Linux VM虚拟环境 设置静态IP

目录 查看自己的网卡配置说明重启网卡实例测试配置情况测试网络 查看自己的网卡 ip a配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens32配置说明 [rootlinux-server ~]# cd /etc/sysconfig/network-scripts/ #网卡配置文件存放路径 [rootlinux-server network-scri…

C/C++中{}的用法总结(全)

C基础专栏&#xff1a;http://t.csdnimg.cn/UjhPR 目录 1.定义初始化列表&#xff08;Initializer List&#xff09; 2.类成员初始化列表 3.无默认构造函数的类的默认初始化&#xff08;C11 及以后版本&#xff09; 4.初始化器列表构造函数&#xff08;C11 及以后版本&…

js判断对象是否有某个属性

前端判断后端接口是否返回某个字段的时候 <script>var obj { name: "John", age: 30 };console.log(obj.hasOwnProperty("name")); // 输出 trueconsole.log(obj.hasOwnProperty("email")); // 输出 falselet obj11 { name: "Joh…

一文搞懂多模态:BeiT-3之前的14个多模态+4个周边原理解读

在人工智能的世界里&#xff0c;多模态学习不断地展现出其重要性。这个领域的迅速发展不仅促进了不同类型数据之间的深度融合&#xff0c;还为机器理解世界提供了更加丰富和细腻的视角。随着科技的不断演进&#xff0c;人工智能模型已经开始渐渐具备处理和理解从文本、图像&…

MySQL主从复制的原理

MySQL 主从复制是一种数据复制技术&#xff0c;用于在多个数据库服务器之间的数据同步。在主从复制架构中&#xff0c;一个服务器被设置为主服务器&#xff0c;充当数据源&#xff0c;其他服务器被设置为从服务器&#xff0c;用来复制主服务器的数据。 1.主从复制优点 主从复…

Unity Timeline学习笔记(3) - SignalTrack信号轨道和自定义带参数的Marker信号和轨道

信号轨道&#xff0c;顾名思义就是运行到某处发送一个信号。 普通用法 普通用法就是没有任何封装的&#xff0c;个人感觉特别难用&#xff0c;但是有必要理解一下工作原理。 添加信号 我们添加一个信号资源 生成后可以看到资源文件&#xff0c;这个是可以拖到SignalTrack上…

web 服务搭建

实验拓扑图&#xff1a; 实验环境搭建 Centos7-5作为Client&#xff08;12.0.0.12/24&#xff09;&#xff1b;Centos7-1作为网关服务器&#xff08;配置两块网卡ens33 192.168.246.7/24&#xff0c;ens36 12.0.0.1/24&#xff09;&#xff1b;Centos7-2作为Web1&#xff08;19…

2024年云仓酒庄深惠公司发布会圆满落幕:共襄盛举,携手共赢

原标题&#xff1a;2024年云仓酒庄深惠公司发布会圆满落幕&#xff1a;共襄盛举&#xff0c;携手共赢 随着岁月的流转&#xff0c;云仓酒庄以其卓越的品质和不懈的创新精神&#xff0c;在葡萄酒行业中独树一帜。2024年&#xff0c;云仓酒庄再次迎来了一场盛大的发布会——深惠…

一文读懂『归并排序』算法(Merge Sort)

目录 归并排序算法&#xff08;Merge Sort&#xff09;简介 算法基本思想和流程&#xff08;时间复杂度O(nlogn) &#xff09; ​编辑代码实现 归并排序模板&#xff08;背诵&#xff09; 归并排序算法&#xff08;Merge Sort&#xff09;简介 归并排序&#xff08;Merge …

MyBatis入门(JDBC规范,MyBatis,连接池,Lombok)【详解】

目录 一、JDBC规范【了解】 1. JDBC介绍 2. JDBC示例 3. JDBC的问题 二、MyBatis入门【重点】 1. Mybatis是什么 2. Mybatis使用步骤 3. Mybatis入门案例 1.创建SpringBoot工程 2.创建Mapper 3.功能测试 三、连接池【了解】 1. 什么是连接池 2. 有哪些数据库连接池…

Java_9最大连续1的个数

最大连续1的个数 给定一个二进制数组 nums &#xff0c; 计算其中最大连续 1 的个数。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,0,1,1,1] 输出&#xff1a;3 解释&#xff1a;开头的两位和最后的三位都是连续 1 &#xff0c;所以最大连续 1 的个数是 3. 示例 2: 输入…

SIP-7043 SV-7043网络吸顶喇叭商场会议室播放器10W网络有源吸顶喇叭

SIP-7043 SV-7043网络吸顶喇叭商场会议室播放器 10W网络有源吸顶喇叭 一、描述 SIP-7043是我司的一款SIP网络有源吸顶喇叭&#xff0c;具有10/100M以太网接口&#xff0c;内置有一个高品质扬声器&#xff0c;将网络音源通过自带的功放和喇叭输出播放&#xff0c;可达到功率1…

Ubuntu23.10安装FFmpeg及编译FFmpeg源码

安装FFmpeg: 打开终端: 输入 sudo apt install ffmpeg 安装成功: 验证FFmpeg 默认安装位置与库与头文件位置 使用FFmpeg源码编译: 1.安装YASM sudo apt-get install yasm

STM32 晶振(用示波器测RCC频率是否一致)

如果测出的频率不准确&#xff0c;可以修改一下看看是否有改善&#xff1a;

1. 用两种方式在springboot项目中实现适配器模式

文章目录 用两种方式在springboot项目中实现适配器模式1. 场景2. 方式1&#xff0c;通过实现类定义类型字段实现2.1 创建接口2.2 创建mysql实现类2.3 创建oracle实现类2.4 创建接口,在接口中注入service集合&#xff0c;根据每个实现类中定义的dbType进行匹配后进行调用2.5 测试…

个人博客系列-后端项目-用户注册功能(7)

介绍 用户注册API的主要流程&#xff1a;1.前端用户提交用户名&#xff0c;密码 2. 序列化器校验用户名&#xff0c;密码是否合法。3.存入数据库。4.签发token 创建序列化器 from rest_framework import serializers from rest_framework_simplejwt.serializers import Toke…

harmonyOS简介及背景

harmonyOS的场景模式18n: 1&#xff08;入口手机&#xff09;8&#xff08;电脑、VR、手环、iPad、智慧屏、&#xff09;–wifi—n(车载、智能家居等所有)harmonyOS不需要考虑软硬件的差异&#xff0c;是一个兼容N种的超级终端harmonyOS干了两件事&#xff1a; &#xff08;1&a…

前端项目,个人笔记(一)【定制化主题 + 路由设计】

目录 1、项目准备 1.1、项目初始化 1.2、elementPlus按需引入 注&#xff1a;使用cnpm安装elementplus及两个插件&#xff0c;会报错&#xff1a;vueelement-plus报错TypeError: Cannot read properties of null (reading isCE ) &#xff0c;修改&#xff1a; 测试&#…

[Redis]——Redis持久化的两种方式RDB、AOF

目录 RDB快照模式 概念&#xff1a; 触发时机&#xff1a; 异步做快照 AOF追加模式 概念&#xff1a; 触发时机&#xff1a; bgrewriteaof命令&#xff1a; 比较两种模式&#xff1a; RDB快照模式 概念&#xff1a; RDB模式就是保存当前Redis的状态到本地磁盘文件&am…