当前位置: 首页 > news >正文

公司网站管理规定网站建设 语言

公司网站管理规定,网站建设 语言,做网站之前备案,天津网站建设推广服务考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇。 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、…

考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇

  • 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、流程控制、面向对象等,适合没有编程基础的同学入门。
  • 【unity通用篇】:主要讲解unity的基础通用的知识,包括unity界面、unity脚本、unity资源管理、unity动画、unity摄像机等,适合unity初学者入门。
  • 【unity3D篇】:主要讲解unity3D的知识,unity3D角色、unity3D物理系统、unity3D光照等,适合只想做2D游戏的开发者学习。
  • 【unity2D篇】unity2D篇:主要讲解unity2D的知识,包括unity2D角色、unity2D物理系统、unity2D光照等,适合只想做3D游戏的开发者学习。

这样方便大家按需选择性的去学习,比如有编程基础的大概率可以直接从unity通用篇开始入门,没有编程基础的建议从C#篇开始学习。只想做2D游戏的话,可以直接从unity2D篇开始学习,3D篇大概率就不需要看了,节约学习时间成本。

前言

1、什么是老动画系统?

Unity中有两套动画系统:

Legacy Animation System(老系统)Mecanim Animation System(新系统)
组件类型Animation组件Animator组件
动画控制方式线性动画片段直接播放状态机驱动动画逻辑
版本支持Unity 4及更早版本原生支持Unity 4开始引入(当前主流)
动画资源格式.anim 动画片段支持.anim与更复杂的动画控制器.controller
骨骼系统基础骨骼支持完善的人形动画重定向系统

值得注意的是,随着unity更新老动画系统已经逐渐被淘汰了,目前可能主要用于处理老版本项目和简单的一些自制动画。新项目已经不建议大家使用了,所以这部分内容大家作为了解就行。

2、老动画系统控制动画播放

注意
在创建动画之前为对象添加Animation组件之后再制作动画。
这时制作出的动画和之前的动画格式是有区别的。

老动画系统创建Animation前要给生成动画的对象添加Animation脚本,挂载过后Unity就会认为这个对象要使用老动画系统。
在这里插入图片描述

挂载过会按老套路在Animation窗口新建Animation动画,选择文件夹存储。
在这里插入图片描述
因为对象添加了Animation组件,创建后Unity不会自动创建Animator文件并且给对象添加Animator组件。只会把新创建的Animation文件和Animation组件关联。Animation窗口上的操作和之前一模一样。
在这里插入图片描述
要注意老版本创建出来的Animation文件上的参数和新版本是不同的。

一、老Animation组件参数

在这里插入图片描述

介绍
Animation动画默认播放的动画。
Animations该动画组件可以控制的所有动画,对对象新创建老版本的Animation后会自动添加关联到这里。
Play Automatically是否一开始就自动播放默认动画。
Animate physics动画是否与物理交互。
Animate physics是否用物理方式驱动动画
Culling type决定什么时候不播放动画;Always Animate:始终播放。Based On Renderers:基于渲染的方式执行,动画离开屏幕了就不再执行,节省性能

二、老Animation文件参数

在这里插入图片描述

  • Default:读取设置得更高的默认重复模式。
  • Once:播放一次就停止。
  • Loop:从头到尾不停循环播放。
  • ClampForever:播放结束会停在最后一帧,并且会一直播放最后一帧(相当于状态不停止),表现效果和Once一样,但是逻辑处理上不同。
  • PingPong:从头到尾从尾到头不停播放。

三、老Animation动画系统代码控制

1、得到Animation组件

要把脚本挂载到对象上,用脚本得到Animation组件

private Animation animation;void Start()
{animation = this.GetComponent<Animation>();
}

2、播放动画

Animation.Play方法

//Animation的Play方法 播放动画
//播放没有混合的动画。
//会直接生硬的切换动画 假如播放到一半切换动画 回强行停止第一个播放的动画 切换到第二个播放动画的初始状态 进行播放
if (Input.GetKeyDown(KeyCode.Alpha1))
{animation.Play("1");
}
if (Input.GetKeyDown(KeyCode.Alpha2))
{animation.Play("2");
}

3、淡入播放,自动产生过渡效果

Animation.CrossFade方法

//Animation的CrossFade方法 淡入播放,自动产生过渡效果
//在后续 time 秒的时间段内,使名称为 animation 的动画淡入,使其他动画淡出。
//会先淡出把状态慢慢变成要播放的动画的初始在状态,再播动画
if (Input.GetKeyDown(KeyCode.Alpha3))
{//当你要播放的动画的开始状态 和当前的状态 不一样时 //就会产生过渡效果animation.CrossFade("3");//animation.Play("3");
}

4、前一个播完直接再播放下一个

Animation.PlayQueued方法

//Animation的PlayQueued方法 前一个播完直接再播放下一个
//在先前的动画播放完毕后再播放动画。
//可以理解为把动画加到队列中 等上一个动画播放完再播 会生硬的切换初始状态
if (Input.GetKeyDown(KeyCode.Alpha4))
{animation.PlayQueued("2");
}

5、前一个播完淡入播放下一个

Animation.CrossFadeQueued方法

//Animation的CrossFadeQueued方法 前一个播完淡入播放下一个
//使动画在上一个动画播放完成后交叉淡入淡出。
//可以理解为把动画加到队列中 等上一个动画播放完再播 会先淡出把状态慢慢变成要播放的动画的初始在状态,再播动画
if ( Input.GetKeyDown(KeyCode.Alpha5) )
{animation.CrossFadeQueued("2");
}

6、停止播放所有动画

Animation.Stop方法

//Animation的Stop方法 停止播放所有动画
//停止所有使用该动画启动的正在播放的动画。
//animation.Stop();

7、是否在播放某个动画

Animation.IsPlaying方法

//Animation的IsPlaying方法 是否在播放某个动画
//名称为 name 的动画是否正在播放?
if ( animation.IsPlaying("1") )
{}

8、播放模式设置

Animation.wrapMode变量

//Animation的wrapMode变量 播放模式设置
//应如何处理超出此剪辑播放范围的时间?
//可以进去看枚举
//animation.wrapMode = WrapMode.Loop;//设置成循环播放

9、其它

层级和权重以及混合(老动画系统需要通过代码来达到动画的遮罩、融合等效果)

//设置层级
animation["1"].layer = 1;
//设置权重
animation["1"].weight = 1;
//混合模式 叠加还是混合
animation["1"].blendMode = AnimationBlendMode.Additive;
//设置混组相关骨骼信息
animation[""].AddMixingTransform();

四、实战

修改动画为循环,并拖入绑定动画
在这里插入图片描述
通过代码方式播放动画
在这里插入图片描述

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Animation : MonoBehaviour
{void Start(){}void Update(){//点击鼠标左键开始播放动画if (Input.GetMouseButtonDown(0)){//播放为right的动画片段GetComponent<Animation>().Play("right");}}
}

专栏推荐

地址
【零基础入门unity游戏开发——C#篇】
【零基础入门unity游戏开发——unity通用篇】
【零基础入门unity游戏开发——unity3D篇】
【零基础入门unity游戏开发——unity2D篇】
【制作100个Unity游戏】
【推荐100个unity插件】
【实现100个unity特效】
【unity框架/工具集开发】

完结

好了,我是向宇,博客地址:https://xiangyu.blog.csdn.net,如果学习过程中遇到任何问题,也欢迎你评论私信找我。

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

http://www.dtcms.com/a/524316.html

相关文章:

  • std::iota
  • SQL进阶:not exists谓词
  • Eclipse 添加书签
  • 2025年渗透测试面试题总结-217(题目+回答)
  • 专业网站建设市场豫建市2021 42号
  • 自己做的网站不满屏单纯做网站的公司
  • 在本地部署LangManus
  • wordpress 网站投票网站使用特殊字体
  • 视觉Transformer实战 | Transformer详解与实现
  • 032:vue+threejs 实现物体点击后在地面上拖动平移,点击地面可旋转
  • Java 中数组和集合的遍历方式
  • 网站建设评估及分析wordpress 视频 批量
  • 自己开发网站需要什么技术青海网站建设与维护
  • sqli-labs第二关
  • 大数据Spark(七十):Transformation转换算子cogroup和zip使用案例
  • Drools在java中的使用
  • 【办公类-121-02】20251024淘宝视频红包(UIBOT点击“左箭头”“视频”“消息”切换)
  • 9 种高级 RAG 技术及其实现方法
  • 计算机网络面试核心知识点大全
  • 做网站建站现在什么传奇最火电脑版
  • C语言需要掌握的基础知识点之图
  • 做一个类似京东的网站海外注册公司
  • python舆情分析可视化系统 情感分析 微博 爬虫 scrapy爬虫技术 朴素贝叶斯分类算法大数据 计算机✅
  • 压缩与缓存调优实战指南:从0到1根治性能瓶颈(六)
  • 做百度手机网站优化点asp网站制作教程
  • element+vue3 table上下左右键切换input和select
  • 元萝卜 1.0.27| 免Root,XP模块框架,支持应用多开分身,一键微信平板模式
  • 长春企业网站seo珠海企业官网设计制作
  • MySQL 函数详细说明
  • 《Memcached 连接:深入理解与优化实践》