unity3d Animal Controller的动物组件使用明天继续

news2024/11/25 4:53:22

控制器介绍

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

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 范围

在这里插入图片描述

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

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

相关文章

算法刷题Day7 | 454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和

目录 0 引言1 四数相加II1.1 使用map解题1.2 总结 2 赎金信2.1 我的解题 3 三数之和3.1 双指针法 4 四数之和4.1 双指针题解 🙋‍♂️ 作者:海码007📜 专栏:算法专栏💥 标题:算法刷题Day7 | 454.四数相加II…

Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 4-4、线条平滑曲面(修改颜色)去除无效点

环境和包: 环境 python:python-3.12.0-amd64包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 代码: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata fro…

redis 中的八大问题

前言 在分布式系统中,由于redis分布式锁相对于更简单和高效,成为了分布式锁的首先,被我们用到了很多实际业务场景当中。 但不是说用了redis分布式锁,就可以高枕无忧了,如果没有用好或者用对,也会引来一些意…

查找和最小的 K 对数字

优质博文IT-BLOG-CN 一、题目 给定两个以 非递减顺序排列 的整数数组nums1和nums2, 以及一个整数k。 定义一对值(u,v),其中第一个元素来自nums1,第二个元素来自nums2。 请找到和最小的k个数对(u1,v1), (u2,v2) ... (uk,vk)。 示例 1: 输入: nums1 […

PTA L2-007 家庭房产

给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数、人均房产面积及房产套数。 输入格式: 输入第一行给出一个正整数N(≤1000),随后N行,每行按下列格式给出一个人的房产: …

k8s中calico网络组件部署时一个节点一直处于Pending状态

k8s中calico网络组件部署时一个节点一直处于Pending状态 故障截图 故障排查思路,通过describe查看具体原因 ~]# kubectl describe pod calico-node-pzlfv -n kube-system通过describe查看得知报错 Warning FailedScheduling 58s (x23 over 23m) default-sche…

pytest生成allure的报告

首先要下载安装配置allure allure serve ./outputs/allure_report 可以生成html的文件自动在默认浏览器中打开

【NR 定位】3GPP NR Positioning 5G定位标准解读(十六)-UL-AoA 定位

前言 3GPP NR Positioning 5G定位标准:3GPP TS 38.305 V18 3GPP 标准网址:Directory Listing /ftp/ 【NR 定位】3GPP NR Positioning 5G定位标准解读(一)-CSDN博客 【NR 定位】3GPP NR Positioning 5G定位标准解读(…

Java输出流之BufferWriter类

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…

<AI大模型学习>——《人工智能AI》

<AI大模型学习>——《人工智能AI》 一、AI大模型通识 1.AI介绍 人工智能(Artificial Intelligence),英文缩写为AI。 是新一轮科技革命和产业变革的重要驱动力量, 是研究、开发用于模拟、延伸和扩展人的智…

【滤波专题-第8篇】ICA降噪方法——类EMD联合ICA降噪及MATLAB代码实现(以VMD-ICA为例)

今天来介绍一种效果颇为不错的降噪方法。(针对高频白噪声) 上一篇文章我们讲到了FastICA方法。在现实世界的许多情况下,噪声往往接近高斯分布,而有用的信号(如语音、图像特征等)往往表现出非高斯的特性。F…

【大厂面试演练】知道ZooKeeper有什么应用场景吗

面试官:咳咳咳,看你简历写了精通ZooKeeper,那我就随便考考你吧 面试官:不用慌尽管说,错了也没关系😊。。。 每日分享大厂面试演练,感兴趣就关注我吧❤️ 面试官:知道ZooKeeper有什么…

Docker安装步骤笔记

一、环境准备 VM网络配置 打开VMware软件 --编辑 --虚拟网络编辑器 二、VM创建虚拟机 三、安装rhel8.9操作系统 1、rhel8.9 镜像下载 第一步:进入redhat官网进行注册第二步:下载rhel8.9镜像文件 https://access.redhat.com/downloads/content/rhel …

Pytorch搭建AlexNet 预测实现

1.导包 import torch import matplotlib.pyplot as plt import json from model import AlexNet from PIL import Image from torchvision import transforms 2.数据预处理 data_transform transforms.Compose([transforms.Resize((224, 224)), # 将图片重新裁剪transform…

JDBC连接Mysql(executeQuely)3/13

resultset-->executeQuery import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement;public class Demo3 {public static void main(String[] args) throws Exception {//1.注册驱动Class.forName("com.mys…

【Java,Redis】Redis 数据库存取字符串数据以及类数据

1、 字符串存取数据 Resource private StringRedisTemplate stringRedisTemplate;//从Redis中获取string字符串 stringRedisTemplate.opsForValue().get("cache:shop:"id); //Json -> class Shop shop JSONUtil.toBean(ShopJson,Shop.class); //字符串写入redis…

C# Stopwatch计算代码运行时间

文章目录 前言一、计算范围时间1、起始位置2、结束位置3、获取时间封装成对象(1)、完整代码(2)、使用示例 二、计算检查点时间1、初始化2、检查点封装成对象(1)、完整代码(2)、使用示…

SQL Server错误:15404

执行维护计划失败,提示SQL Server Error 15404 无法获取有关... 异常如下图: 原因:数据库用户名与计算机名称不一致 解决办法:1.重名称数据库用户名 将前缀改成计算机名 2.重启SQL Server代理

C++Qt学习——不用UI文件编程

在创建文件的时候不要选中Generate form这块 创建的文件如下图所示,比起之前的没有了form这一快 1、在mainwindow.h里面声明按钮对象 2、在mainwindow.cpp里实例化按钮 2.1、方法一 pushButton new QPushButton();pushButton->show(); 但是发现显示是分离的 2…

保研复习数据结构记(8)--排序

一.内部排序 1.概念 什么是排序?是将一个任意排列的记录或者是数据元素,排列成按关键字有序的序列什么是排序方法是稳定的?按照关键字排序的kikj,在排序之后,两个关键字相等的记录的顺序与排序之前相同,若…