Unity学习日志_动画系统简介

2023-10-30

Unity学习日志_动画系统简介

Animation,Legacy动画系统

若要使用Animation,需要在创建Clip之前为物体手动添加Animation组件。

Animation组件面板:

在这里插入图片描述

属性:

  1. Animation:动画片段。
  2. Animations:片段数组。
  3. Play Automatically:自动播放。
  4. Animate Phsics:如果设为true,那么动画将会在 FixedUpdate 中循环,这个只有和运动学刚体一起用才有效。
  5. Culling Type:分为总是播放(Always Animate),渲染时播放(Based On Render)

Animaiton录制器:

在这里插入图片描述

面板:

从左上开始向右介绍:

  1. 在这里插入图片描述
    :开始录制动画,也可以直接修改属性值进行录制。
  2. 在这里插入图片描述
    :回到起始帧。
  3. 在这里插入图片描述
    :回退一帧。
  4. 在这里插入图片描述
    :播放动画。
  5. 在这里插入图片描述
    :前进一帧。
  6. 在这里插入图片描述
    :到达终止帧。
  7. 在这里插入图片描述
    :采样值,值越小,动画播放的速度越慢。
  8. 在这里插入图片描述
    :添加关键帧。
  9. 在这里插入图片描述
    :添加动画事件。选中添加的事件标签后在inspector面板中可选择要触发的方法。
  10. 在这里插入图片描述
    :添加要录制的组件。
  11. 在这里插入图片描述
    :时间线显示动画关键帧。
  12. 在这里插入图片描述
    :曲线图显示动画的关键帧。

代码控制:

使用Animation类的方法进行控制。

倒放动画:

Animation ani = GetComponent<Animation>();
ani["die"].time = ani["die"].length;
ani["die"].speed = -1f; 
ani.Play("die");

Animator,Mecanim动画系统

Mecanim动画系统优点:

  1. 针对人形角色提供了一种特殊的工作流,包含Avatar的创建和对肌肉的调节。
  2. 动画重定向的能力,可以非常方便地把动画从一个角色模型应用到其他角色模型上。前提是模型是类人的。
  3. 提供了可视化Animator视窗,可以直观地通过动画参数和Transition等管理各个动画间的过度。

两种模型:

人形角色设置(Humanoid)动画可以通用。动画重定向。
非人性(通用)角色设置(Generic)动画不可以通用。

模型导入界面:

在这里插入图片描述

1. Model常用设置简介:

在这里插入图片描述

  1. Scale Factor:模型缩放,推荐使用这个属性而不是使用transform中的Scale。Scale可能导致模型失真。
  2. Convert Units:是否单位转换。
  3. Import BlendShapes:导入Blendshapes(用于表情动画)。
  4. Mesh Compression:网格压缩,会导致失真。
  5. Read/Write Enable:模型可以发生形变说明模型可读可写。
  6. Optimize Mesh:最优化网格。
  7. Generate Colliders:根据模型生成碰撞器。
  8. KeepQuads:保持四边形,不转换为三角形。我们在U3D中使用的网格,大部分是把所有的面都转换成了三角形,但是某些特定的需求下,四边形会得到更好的效果,例如Tessellation shaders(细分曲面着色器)。
  9. Weld Vertices:焊接顶点,如果开启,相同位置的顶点会被合并。
2. Rig常用设置简介:

在这里插入图片描述

  1. Animation Type:None(无),Legacy(旧动画系统),Generic(通用),Humanoid(类人)
  2. Avatar Definition:骨骼动画导入模式,Create From This Model(根据本模型创建),Copy From other Avatar(套用其他骨骼动画)
  3. Root Node:根节点。(Generic中的独有选项)
  4. Optimize Game Object:最优化模型。
3. Animation常用设置简介:

在这里插入图片描述

  1. Import Animation:导入动画。
  2. Anim. Compression:动画压缩方式。有Off(不压缩),Keyframe Reduction(减少关键帧),Optimal(最优化)
  3. Rotation Error,Position Error,Scale Error:数值越大,动画越不准确,性能越好;数值越小,动画越准确,性能越差。
  4. Clips:动画裁剪。
4. 动画裁剪

在这里插入图片描述

  1. Start:动画开始处。
  2. End:动画结束处
  3. Loop Time:循环。
  4. Loop Pose:实现动作无缝衔接,循环匹配的时候,loop match为绿色。
  5. Cycle offset:动画偏移量。
  6. Root Transform:设置根变化。
    1. Bake Into Pose:勾选之后将无视动画造成的对应数值改变(有些动画可能会造成模型位移或者旋转,勾选之后会无视掉)。
  7. Miroor:镜面,勾选后,动画将左右颠倒播放。
  8. Curves:曲线
  9. Events :事件,添加原理和Animation相同。
  10. Mask:遮罩,控制器中会详细说明。
5. Materials:

在这里插入图片描述

  1. Import Materials 是否导入材质。如果否,则不生成新的材质,默认使用“Default-Diffuse”。
  2. Naming 材质命名方式。
  3. Search 材质搜索方式。

Animator面板:

在这里插入图片描述

1. 属性:
  1. Controller:动画控制器。
  2. Avatar:模型骨骼。
  3. Apply Root Motion:是否使用动画自带的位移。
  4. Update Mode:动画更新模式,有Normal(Update更新),Animation Physics(FixedUpdate更新),Unscaled Time(无视ScaleTime的Update更新)。
  5. Culling Mode:动画裁剪模式(当相机看不到游戏对象时)有Always Animate(一直更新),Cull Update Transform(Transform重定向),Cull Completely(完全禁用)
2. Avatar:

选择类人动画才可以使用该界面,当类人骨骼自动匹配失败时,可以选择Rig -》Configure来打开并手动配置。

在这里插入图片描述

  1. Mapping:
    1. Clear:清空。
    2. Automap:自动适配骨骼。
    3. load:导入骨骼信息。
    4. save:保存骨骼信息。
  2. Pose:模型摆出的姿势。
    1. Sample Bind-Pose:模型初始姿势。
    2. Enforce T-Pose:使模型摆出T姿势。
  3. Muscles&Settings:此界面可以调节具体的骨骼动画参数并观察效果,可以用于检测模型骨骼动画是否正常等。

动画控制器/状态机:

Animator可以在Project面板创建。
在这里插入图片描述

1. 右键菜单栏:

在这里插入图片描述

  1. Create State:创建动画状态,有Empty(空状态),From New Blend Tree(创建混合树)
  2. Create sub-State Machine:创建新的子状态机。可以将一个系列的连续动画做成一个子状态机来使用。
  3. Copy current StateMachine:复制当前状态机。
2. Parameters:
  1. Float
  2. Int
  3. Bool
  4. Trigger:使用一次之后自动失效。
  5. 设置方法:Animator中的set&get方法。
3. Layers:

通过设置多层动画和Mask遮罩实现多种动画一起使用,比如在跑动的时候攻击。用户可以通过“+”来创建新的动画图层。

在这里插入图片描述

  1. Weight:层权重,权重越高,则本层中的动画优先级越高。多层最高权重则按层级创建顺序决定先后。

  2. Mask:遮罩,设置为绿色的为本层可以使用的躯体动画,红色为本层不可使用的躯体动画。

    1. 在这里插入图片描述
  3. Blending:动画覆盖的方式:有Override(重写,覆盖),Additve(累加,在原动画层动画的基础上来进行本层的动画)

  4. IKpass:是否开启反向运动学,开启反向运动学之后可以使用代码通过子物体来控制父物体。在后面的代码控制详细举例。

4. 动画状态:
  1. Entry:进入状态机,Entry所连的动画状态为初始状态。
  2. Any State:任何状态都可以直接转为Any State所连的动画状态,应当配合参数使用。
  3. Exit:退出状态机,退出后会再次进入状态机。

动画状态监视器:

此面板为控制器中添加状态后点击状态可以查看的面板。

在这里插入图片描述

1. 右键菜单栏:

在这里插入图片描述

  1. Make Transition:拉出过渡线
  2. Set as Layer Default State:设为本层的默认动画(进入状态机后最先被调用的状态)。
  3. Copy:复制
  4. Create new BlendTree in State:在该状态中创建混合树。
  5. Delete:删除该状态。
2. 属性:
  1. Motion:动画片段。
  2. Speed:播放速度。
  3. Multiplier:速度的乘数。
  4. Parameter:是否使用参数调节左侧属性。
  5. Normalized Time:标准化时间。
  6. Mirror:镜像。
  7. Cycle Offset:动画周期偏移量。
  8. Foot IK:是否使用脚步动画约束。
  9. Write Defaults:是否对没有动画的属性写回默认值。
  10. Transitions:过渡线/转换。

过渡线/转换面板:

在这里插入图片描述

  1. Transtions:过渡线,Solo表示:源状态中只有过渡线可用;Mute:禁用该条过渡线。
    1. 当一个Solo被勾选,则该状态的其他过渡/转换会被Mute。
    2. 如果一个过渡/转换的Solo和Mute同时被勾选,则表现为Mute。
  2. Has Exit Time:动画过渡时是否有固定的退出时间(动画状态是否可以被直接打断)。 当勾选时只有当动画播放完后才可以进入下一状态。
  3. Exit Time:动画过渡时本状态的退出时间。
  4. Transtions Duration:转换持续时间。
  5. Transtion offset:目的状态偏移量,形象说就是时间轴中目的状态的位置。
  6. settings下面的时间轴是设置过渡时间段用的。
  7. Conditions:设置本过渡线的条件,条件取自控制器中的Parameter,分为三大部分:条件参数(取决于Parameter),条件谓词(条件逻辑词),条件值。

脚本控制:

注:Animator类通过AnimatorStateInfo类来获取当前某层的动画状态信息,通过isname方法来判断某个动画是否正在播放。

Animator常使用set方法通过设置过渡线上条件参数的值从而控制动画的播放和切换。

动画事件进阶:

在Animator中添加事件我们常常将动画事件类分为两大部分:

  1. 事件行为类EventBehaviour:此类中存放要挂在Event时间轴上的方法,充当事件源,方法内部则为要触发的事件(面向对象封装),挂载在模型上。如图:

    1. 在这里插入图片描述
  2. 事件类Event:此类负责充当监听者,负责事件的具体实现,挂载在模型空父物体上。如图:

    1. 在这里插入图片描述

注:Animator动画事件只会检测用户后添加的脚本是否含有对应事件名

混合树BlendTree:

混合树用于相似动画的混合。例如可以对角色不同方向的跑动动画来进行混合。

1D混合:

只需要一个参数控制的混合,用户需要选择一个Parameter来控制。

在这里插入图片描述

  1. Blend Type:选择混合树类型。
  2. Parameter:选择使用的参数。
  3. Parameter下方的图形:
    1. 横轴:参数范围。
    2. 纵轴:动画权重。
    3. 红线:当前参数的值所在的位置。
  4. Motion:需要绑定的动画片段或者混合树。
  5. Automate Thresholds:是否使用自动阈值。
  6. Compute Thresholds:根据用户从动画剪辑中的根部动作获取的数据设置阈值。
2D混合:

参数由一个参数分为两个参数。

在这里插入图片描述

2D Simple Directional(2D简单定向模式):

该混合模式适用于所有动画都具有一定的运动方向或者其中任意两段动画的运动方向都不相同的情形。此模式下,每一个方向上都不应存在多段动画,例如向前跑和向前走不可同时存在。

2D Freeform Directional(2D自由定向模式):

该混合模式适用于所有动画都具有一定的运动方向,但在同一方向上可以存在多段动画,例如向前跑和向前走可以同时存在。

2D Freeform Cartesain(2D自由笛卡尔模式):

该混合模式适用于所有动画具有不一定的运动方向,例如向前走然后向右转。此模式下的参数可以代表不同含义,例如x和y可以分别代表角速度和线性速度。

直接混合:

通常使用一个动画一个参数的形式。

在这里插入图片描述

直接混合常用于动画表情的混合。

IK逆向运动学:

大多数的角色动画都是通过将骨骼动画的关节角度旋转到预定值来实现的。一个子关节的位置是由父节点的旋转角度决定的,这样,处于节点链末端的节点位置是由此链条上的各个节点的旋转角和相对位移来决定的。这种决定骨骼位置的方法称为前向运动学,而反过来由子节点位置决定父节点位置的方法就叫做逆向运动学。

实际开发中,IK的应用非常广泛,如角色头部跟随,在崎岖不平的表面角色脚部会根据地面高度而抬起,都是IK的应用。

IK可以使用脚本控制。下面为常用的控制方法:

SetIKHintPosition 设置反向动力学提示的位置。
SetIKHintPositionWeight 设置反向动力学提示的转换权重(0 = 在反向动力学前的原始动画处,1 = 在提示处)。
SetIKPosition 设置反向动力学目标的位置。
SetIKPositionWeight 设置反向动力学目标的转换权重(0 = 在反向动力学前的原始动画处,1 = 在目标处)。
SetIKRotation 设置反向动力学目标的旋转。
SetIKRotationWeight 设置反向动力学目标的旋转权重(0 = 在反向动力学前旋转,1 = 在反向动力学目标处旋转)。
SetLookAtPosition 设置 LookAt 位置。
SetLookAtWeight 设置 LookAt 权重。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unity学习日志_动画系统简介 的相关文章

  • GBA编程和汉化常用软件汇总

    内容来自GBA吧中的痴狂小黑 本人只是做个汇总和搬运 1 简易图片导入导出套装 PicSimpleImEx AutoPicRock Ver1 0 这两个软件是用C 写的 想要用 先装dotNetFx40 Full x86 x64 exe 然
  • visual studio:是否统一换行符 提示弹窗是否显示

    工具 选项 环境 文档 加载时检查一致的行尾
  • 什么是页面文件使用率

    你好 很高兴能看到你的问题 也很高兴我能够回答你的问题 你提问 什么是页面文件使用率 首先我们必须要了解什么叫 页面文件 页面文件是一个存放在硬盘上的文件 大多数情况下都放在系统磁盘 如C 盘 的根目录下 这个文件不允许用户访问 只能够被操
  • Unity3d 插件 系列——DoTweenPro介绍(图文详细+案例)

    Unity3d 插件 系列 DoTweenPro介绍 图文详细 案例 前言 一 DoTweenPro简介 二 DoTweenPro安装 三 DoTweenPro主要组件 1 DoTweenAnimation 2 DoTweenPath 3
  • Unity之获取游戏物体对象或组件的几个方法

    文章目录 前言 通过物体名称获取对象 GameObject Find Transform Find 通过物体标签获取对象 GameObject FindWithTag GameObject FindGameObjectWithTag Gam
  • Unity 键盘控制人物移动——之输入方式代码的编写

    键盘输入 控制人物移动 在我们制作游戏中最常见的需求之一就是使用键盘移动游戏角色 那么我们首先需要获取键盘输入 以下提供两种方法获取键盘 这里尽量通过截图解释让大家理解代码的含义 GetInput void FixedUpdate Move
  • Unity保存图片到相册

    Unity保存图片到Android相册 Java 纯文本查看 复制代码 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
  • 两点。。。等来金蝶中间件的面试通知

    晚上笔试 说是大约一点通知 等到十二点 困了 上床 睡不着啊 1点半翻起来 打开手机 没有 打开Gmail 没有 于是抽了支烟 等到两点多一点 手机响了 接到面试通知 下午一点 石头终于落地 因为上午还有一场网易游戏的笔试 担心冲突 还好
  • Unity3d + NGUI 的多分辨率适配

    移动端的多机型适配 现在要介绍的是 锁链战记 这款游戏的适配方法 这种适配方法是UI是一个基础尺寸 背景是一个基础尺寸 背景比UI多出的部分是一些没有实际作用的部分 这样的适配方式避免了在iPhone5这样的小屏幕上镶边 首先设定UIRoo
  • Unity在UI界面上显示3D模型/物体,控制模型旋转

    https blog csdn net ChinarCSDN article details 81058773
  • 基于java的俄罗斯方块游戏系统设计与实现

    基于java的俄罗斯方块游戏系统设计与实现 I 引言 A 研究背景和动机 基于Java的俄罗斯方块游戏系统设计与实现的研究背景和动机 俄罗斯方块是一种经典的益智游戏 游戏规则简单 但难度较大 需要玩家有良好的计算能力和手眼协调能力 近年来
  • 基于Python手把手教你实现flappy bird游戏

    目录 前言 开始前的准备工作 进入正题 结束语 前言 想必玩过游戏的都知道 Flappy Bird是一款简单却富有挑战性的经典的小鸟飞行游戏 让许多玩家为之痴迷 而作为开发者 那肯定要通过技术手段来再做一遍这款经典游戏 那么本文就来通过万能
  • C++ 游戏服务器方向需要多少功底?

    这篇文章是回答一位知友的提问 现在大二了马上升大三 就读于一个很垫底的211 专业是计算机相关的 但是对本专业内容不感兴趣 希望能从事c 后端的工作 对游戏比较有兴趣 但又不知道需要哪方面的知识 希望各位能给出一个客观的评价或者批评 帮忙指
  • 打开游戏提示缺少(或找不到)XINPUT1_3.DLL怎么解决

    在电脑使用过程中 我们可能会遇到一些错误提示 其中之一就是xinput1 3 dll丢失 那么 xinput1 3 dll是什么文件 它对电脑有什么影响 本文将详细介绍xinput1 3 dll丢失的原因以及五个详细的解决方法 帮助大家解决
  • zkSend — — 在Sui上发红包像发电子邮件一样简单

    12月14日 知名区块链媒体平台The Block发表了这篇关于对Mysten Labs联合创始人Adeniyi Abiodun的采访 文中 我们 指代该媒体 数据均为截止撰写文章时数据 以下是正文 两年前 当五名前Facebook工程师创
  • 全面解析找不到xinput1_3.dll无法继续执行代码的多种解决方案(实用教程)

    xinput1 3 dll文件是什么 xinput1 3 dll是一个动态链接库文件 它是DirectInput的组件之一 DirectInput是微软公司开发的一种输入设备驱动程序 用于处理游戏控制器 键盘 鼠标等输入设备的信号 xinp
  • 游戏策划:游戏开发中的关键环节

    在数字游戏的世界里 游戏策划是构建一个成功游戏的基石 游戏策划不仅仅是一个创意过程 它涉及从故事构建到技术实现的各个方面 以下是游戏策划中需要重点关注的几个重要内容 1 故事情节与世界观构建 一款游戏的魅力很大程度上取决于其故事情节和世界观
  • 游戏被攻击了要怎么办

    有客户反馈刚上线新款游戏 没两天就被攻击了 导致用户无法登录 来咨询到我们这边能不能帮他解决 今天就来分享下 怎么预防游戏攻击和已经被攻击的游戏服务器该怎么处理 服务器不管是个人还是企业 被攻击的都有 在所难免 特别是新上线时候要承受住外来
  • U3D游戏开发中摇杆的制作(UGUI版)

    在PC端模拟摇杆 实现玩家通过控制摇杆让玩家移动 以下是完整代码 using System Collections using System Collections Generic using UnityEngine using Unity
  • 游戏开发创建操作之玩家信息系统的建立

    游戏一般都需要玩家信息系统 那么我们应该如何搭建玩家信息系统 接下来我将展示一种简单的方法 完整代码如下 using System Collections using System Collections Generic using Uni

随机推荐

  • python爬虫,wallhaven热门壁纸多线程采集下载源码

    新年新气象 祝大家牛转乾坤 牛气冲天 过年期间收到了很多朋友的新年祝福 没有一一回应 见谅 很久没写爬虫了 手生了 在吾爱找了一个练手网站 国外的壁纸网站 wallhaven 这里采集下载热门图片为例 重温一下python图片爬虫 感兴趣的
  • Veeam 备份还原操作手册

    目录 一 安装Bakup Replication 1 1 选择 Backup Replication 1 2 选择Install安装 二 添加VC主机 2 1 VMWARE VSPHERE 添加 2 2 VC主机名 2 3 用户认证 三 配
  • Linux I/O多路复用——epoll模型实现服务端Socket通信

    目录 epoll模型 epoll函数 epoll create epoll ctl epoll wait 程序流程 水平触发 LT 边沿触发 ET select poll epoll对比 为什么ET模式下 需要将套接字设置为非阻塞式 epo
  • C语言_指针

    C语言指针 指针 这个要从直接访问与间接访问说起 在程序中一般通过变量名来引用变量的值 程序通过编译后就会把变量名转化为变量的地址 通过地址对数据进行存取操作 这种方式称为直接访问 而间接访问是将变量i的地址存放在另一变量中 然后通过该变量
  • 手写Spring框架(四)

    逻辑梳理 这部分完成AOP部分 先梳理AOP的步骤 getBean 方法作为入口 而后是几个关键的类 Context在前文都有提到 现在解释一下其他的类 AdviseSupport 通知的工具类 完成配置文件的解析 将Advise和目标类的
  • Spring bean的生命周期

    学习spring源码主框架 从源码角度开发学习Spring bean的生命周期 spring创建bean方法org springframework beans factory support AbstractBeanFactory getB
  • 程序员成长为架构师必备的十项技能

    一 卓越的程序员 1 每个好架构师都是一位出色的程序员 架构师 听起来是如此神秘的一个称号 尤其是在开发领域刚入门不久的菜鸟级程序员眼中 架构师都是高手 都是牛人 都是如此高高在上的存在 不过 在搞了四 五年编程之后 程序员们往往早已失去了
  • 【IT之路】LoadRunner系列-Win7 64bit下搭建Loadrunner11破解版

    一直想提升下性能测试知识 但是都因为这样那样的原因 没有实际上系统梳理下 在此 刚好空出时间来了 一步步把性能测试知识重新拾一下 本文介绍的是在vmware的环境下进行的Loadrunner环境搭建 一 环境准备 Win7 64bit Lo
  • 云计算基础知识:

    云计算 cloud computing 是分布式计算的一种 指的是通过网络 云 将巨大的数据计算处理程序分解成无数个小程序 然后 通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户 云计算早期 简单地说 就是简单的分布式计
  • 数据结构(一)数组

    概述 说起数组我们都不陌生 几乎在每一种编程语言中 基本上都会有数组这种数据类型 不仅如此它还是是最基础最简单的数据结构 尽管如此 可能还是有一些人并没有真正的理解这个基础数据结构的精髓所在 首先 我们都知道 在java中数组是从 0 开始
  • Linux-epoll机制

    主要接口 epoll create epoll ctl epoll wait epoll create 头文件 include
  • Windows核心编程:字符和字符串处理

    Windows核心编程 字符和字符串处理 1 字符编码 ANSI 字符 一个字符一字节 8位 最多只能表达256个字符 UTF 的全称是Unicode Transformation Format Unicode转换格式 UTF 16 将 每
  • Transformer哲学

    一切苦痛 皆为过往 当我们科研遇到困难时 请大胆寻求Transformer的帮助吧 Transformer用一种苍老的声音问询 你有什么 你要什么 你怎么给我这些东西 一个翻译任务 我有英文 我需要中文 我以embedding形式给 一个目
  • Spring的@Component 、@Value 和 Springboot 的 @Component 、@ConfigurationProperties 使用

    application yml配置 book name 一个人的朝圣 author 蕾秋 乔伊斯 age 35 Spring的 Value 程序代码里 Spring主要在 Value注解的参数中使用EL表达式 注入普通字符串 注入操作系统属
  • C++异常处理机制的详细介绍

    1 C 异常处理的套路 1 1 C 异常处理机制之抛出异常关键字 throw 1 2throw关键字的使用 在哪可能出现异常就在哪里使用throw关键字抛出异常 这个异常可以使用一个常量 字符串 或类对象 都可以来抛出 throw 常量 字
  • 最佳买卖股票时机含冷冻期

    题目 给定一个整数数组 其中第 i 个元素代表了第 i 天的股票价格 设计一个算法计算出最大利润 在满足以下约束条件下 你可以尽可能地完成更多的交易 多次买卖一支股票 你不能同时参与多笔交易 你必须在再次购买前出售掉之前的股票 卖出股票后
  • 手游SDK-悬浮球

    一 游戏内显示悬浮球 手游SDK的悬浮球和一般的悬浮窗有点不一样 它只需要在游戏内显示即可 不需要也不能在桌面中显示出来 所以如果使用WindowManager创建悬浮窗 需要监听App是否在前台 如果在 则显示 如果不在则隐藏悬浮窗 而A
  • yolov7 姿态 pose训练部署笔记

    目录 pytorch开源相关资料 有tensorrtc 代码 预测时间测试结果 导出onnx代码
  • oppor15android版本8.1,OPPO R15搭载最新ColorOS 5.0系统,基于安卓8.1更好用

    原标题 OPPO R15搭载最新ColorOS 5 0系统 基于安卓8 1更好用 手机的发展十分之快 硬件性能普遍过剩 而手机系统的更新迭代变得异常重要 而越来越多的消费者也意识到这个问题 想获得更好的使用体验 不仅仅是硬件上的支持 操作系
  • Unity学习日志_动画系统简介

    Unity学习日志 动画系统简介 Animation Legacy动画系统 若要使用Animation 需要在创建Clip之前为物体手动添加Animation组件 Animation组件面板 属性 Animation 动画片段 Animat