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

初学unity学习七天,经验收获总结

初学unity七天,经验收获总结

学习就是认识新观念和新想法的过程。

假如人们始终以同一种思维方式来考虑问题的话,那么始终只会得到同样的结果。

因为我对你讲述的许多内容是你以前从未接触过的,所以我建议你,在你还没有做之前,不要轻易下结论。

没有想象力的人是很难成就大事的。

​ ----送给正在学习的我们。

start

  • 番茄我始终有一个梦,一个大家可能都有过的梦,那就是:做游戏。

  • 内心中总会有一个声音,它告诉我,我应该做点什么。我想最好的开始时间就是现在,于是我出发了。

  • 目前学习了一周的unity,总结一下自己的所学。

  • 时常总结,才会感受到收获。

收获

1. 控制人物角色的移动。

从原理上来看,其实任务角色的移动就是修改对应角色再坐标轴上的位置。

人物角色的移动,目前我学习到有两种方式。

  1. 普通的物体,直接修改物体的 transform 属性即可。 它有三个参数,分别对应 X轴,Y轴,Z轴。
  2. 对于 rigid body 的元素,可以修改物体的 velocity 元素,给予物体一个力;

当然这只是目前学习到的移动物体的方式,后续其他厂家在做学习。

其他人编写的博客–Unity中人物移动的几种方式

怎么获取到角色移动的方向?

//  分别获取-垂直和水平。 返回值返回范围 -1~1
float translation = Input.GetAxis("Vertical");
float rotation = Input.GetAxis("Horizontal");// 除此之外,还有函数 GetAxisRaw。
// GetAxis对比GetAxisRaw,拥有平滑过渡。
// input.GetAxis()的值是根据你 按键时间 以及 按键顺序 决定。例如当你一直按住 “A键” ,input.GetAxis()的返回值会随时间从 0 到 1 ,但是中途如果按下了 “D键”,那么就会保持按下 “D键”时的返回值。

GetAxisRaw方法的官方解释

在这里插入图片描述

2. 角色的动画

可以选中角色,然后打开动画器,添加多个图片,按指定的时间频率切换,达到一种动态的效果。

同时一个角色可以有多个动画,可以添加多个动画,然后在 动画器 中,添加参数,增加判断条件,来切换角色的动画。

例如:原地站立,奔跑,跳跃,攻击。

3. 元素的销毁

static void Destroy(Object obj, float t = 0.0F);// 使用 Destroy 销毁元素,传入元素对象即可,第二个参数可以定义延迟多久销毁元素。
// 销毁当前元素,可以使用 this ,例如: Destroy(this.gameObject);

4.unity中的生命周期

生命周期的钩子比较多,说一下目前学习到的常见的。

场景第一次加载阶段
场景开始时被调用,场景中的每个对象调用一次
Awake 方法:始终在任何 Start 方法之前并在实例化预制体之后调用。(如果游戏对象在启动期间处于非活动状态,则在激活之后才会调用 Awake 。)
OnEnable 方法:(仅在对象处于激活状态时调用)在启用对象后立即调用此函数。当一个MonoBehaviour 实例被创建时(例如加载关卡或实例化具有脚本组件的游戏对象时)调用。第一帧更新之前的阶段
Start 方法:启用脚本实例后,在第一帧更新之前调用 Start 方法。
注意:对于当前场景中所有的游戏对象而言,Start 方法会在所有脚本中的 Update 方法之前调用。在游戏运行过程中实例化对象时,不能强制执行此调用。FixedUpdate 方法:调用 FixedUpdate 的次数比 Update 更多。帧率比较低时,该方法每帧会被调用多次;帧率比较高时,可能不会每帧都被调用。这也是因为 FixedUpdate 是基于可靠的计时器(独立于帧率,不受帧率影响)。因此,FixedUpdate 主要用来处理物理计算和更新的相关逻辑,例如处理刚体。在 FixedUpdate 内应用运动计算时,无需将值乘以 Time.deltaTime。
Update 方法:每帧调用一次 Update。按帧更新的主要方法。
LateUpdate 方法:每帧调用一次 LateUpdate(在 Update 执行完成后)。LateUpdate 的一个常见用途就是第三人称的摄像机跟随。如果你把角色的移动和选择放到 Update 中,那么就可以把所有摄像机的移动和旋转放在 LateUpdate 中计算执行。这是为了摄像机追踪角色位置之前,确保角色已经完成移动。

在这里插入图片描述

unity生命周期相关博客

英文单词

transform 转换

rigid body 刚体

animation 动画

attack 战斗

idle 闲置的,懒惰的

jump

Vertical 垂直的

horizontal 水平的

axis 对称轴

end

  • 目前总结的就这么多,加油。
  • 很好奇以后在回过头看现在自己所写的会是什么感受。┓( ´∀` )┏

相关文章:

初学unity学习七天,经验收获总结

初学unity七天,经验收获总结 学习就是认识新观念和新想法的过程。 假如人们始终以同一种思维方式来考虑问题的话,那么始终只会得到同样的结果。 因为我对你讲述的许多内容是你以前从未接触过的,所以我建议你,在你还没有做之前&…...

hcip实验2

根据地址分配完成基础配置 先配置r1,r2,r3的ospf以及与isp通讯: 配置缺省路由: 完成nat配置: 完成r5,r6,r7,r8,r15的mgre以及整个网络的ospf配置 mgre: area 2 和3之间用多进程双向重发布技术完成: area4和5之间用虚…...

js:使用canvas画一个半圆

背景 需求需要画一个半圆&#xff0c;或者多半圆&#xff0c;其实一下子就能想到 canvas 中的圆弧&#xff0c;核心使用 context.arc context.arc(x,y,r,sAngle,eAngle,counterclockwise)接下来我们看看示例 例一 <!DOCTYPE html> <html lang"en"> &…...

1.框架介绍项目环境配置与项目启动!

目录 1.框架开发方向:2.项目启动与环境搭建 1.框架开发方向: 1.前后端分离项目 2.纯后端项目 3.移动端开发uni-app(ios、Android、H5、微信小程序) 4.内容管理系统2.项目启动与环境搭建 1.安装node.js 下载地址可以用nvm安装 便于运行前端项目https://juejin.cn/post/7094576…...

LeetCode算法题解:螺旋矩阵

LeetCode算法题解&#xff1a;螺旋矩阵 题目描述 给定一个 m x n 的矩阵&#xff0c;按照螺旋顺序返回矩阵中的所有元素。 解题思路 1. 初始化变量 我们首先定义四个边界变量来跟踪螺旋遍历的边界&#xff1a;top、bottom、left 和 right。 2. 螺旋遍历 开始从左到右遍历…...

【Java 设计模式】设计原则之开放封闭原则

文章目录 1. 定义2. 好处3. 应用4. 示例结语 在软件开发中&#xff0c;设计原则是创建灵活、可维护和可扩展软件的基础。 这些原则为我们提供了指导方针&#xff0c;帮助我们构建高质量、易理解的代码。 ✨单一职责原则&#xff08;SRP&#xff09; ✨开放/封闭原则&#xff08…...

数据分析求职-知识脑图

今天和大家聊聊数据分析求职常见面试题&#xff0c;这是这个系列的第一篇文章&#xff0c;但是我不想开始就直接罗列题目&#xff0c;因为这样的文章实在太多了&#xff0c;同学们的兴趣程度肯定一般。所以&#xff0c;我想先和大家聊聊在准备面试题时候通常遇到的困扰&#xf…...

SQL-修改数据

&#x1f389;欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克&#x1f379; ✨博客主页&#xff1a;小小恶斯法克的博客 &#x1f388;该系列文章专栏&#xff1a;重拾MySQL &#x1f379;文章作者技术和水平很有限&#xff0c;如果文中出现错误&am…...

Rockchip | FIQ-Debugger调试工具

FIQ-Debugger fiq debugger是集成到内核中的一种系统调试手段。 FIQ在arm架构中相当于nmi中断&#xff0c;fiq debugger把串口注册成fiq中断&#xff0c;在串口fiq中断服务程序中集成了一些系统调试命令。 一般情况下串口是普通的console模式&#xff0c;在串口工具下键盘输入…...

第二百六十三回 给geolocator插件提交问题

文章目录 1. 知识回顾2. 问题描述与解决2.1 问题描述2.2 问题解决 3. 心得与感受 1. 知识回顾 我们在前面章回中介绍过如何获取位置信息&#xff0c;主要介绍的是geolocator这个三方包&#xff0c;不过在最近使用时却发现了问题&#xff0c;尝试搜索解决&#xff0c;但是没有结…...

分组背包问题

题目来源&#xff1a;9. 分组背包问题 - AcWing题库 题目&#xff1a; 有 N 组物品和一个容量是 V 的背包。 每组物品有若干个&#xff0c;同一组内的物品最多只能选一个。 每件物品的体积是 vij&#xff0c;价值是 wij&#xff0c;其中 i 是组号&#xff0c;j 是组内编号。 …...

WinForm 中Label自动换行 解决方法

Label自动换行 1.单行完全显示&#xff1a;Label.AutoSize true&#xff1b; 2.换行显示&#xff1a;Label. AutoSize false;(Label框高度用户指定)。 3.多行显示 根据字数自动控制高度&#xff1a;Label.AutoSize true&#xff1b;Label.MaximumSize new Size(w,0); …...

【蓝桥杯软件赛 零基础备赛20周】第7周——二叉树

文章目录 1 二叉树概念2 二叉树的存储和编码2.1 二叉树的存储方法2.2 二叉树存储的编码实现2.3 二叉树的极简存储方法 3 例题4 习题 前面介绍的数据结构数组、队列、栈&#xff0c;都是线性的&#xff0c;它们存储数据的方式是把相同类型的数据按顺序一个接一个串在一起。简单的…...

SpringBoot+SSM项目实战 苍穹外卖(12) Apache POI

继续上一节的内容&#xff0c;本节是苍穹外卖后端开发的最后一节&#xff0c;本节学习Apache POI&#xff0c;完成工作台、数据导出功能。 目录 工作台Apache POI入门案例 导出运营数据Excel报表 工作台 工作台是系统运营的数据看板&#xff0c;并提供快捷操作入口&#xff0c…...

Maven 基础总结篇

Maven 基础总结篇 Maven是专门用于管理和构建Java项目的工具&#xff0c;它的主要功能有&#xff1a; 提供了一套标准化的项目结构&#xff1a;用于解决不同IDE&#xff08;例如eclipse与IDEA&#xff09;不同的项目结构的问题 提供了一套标准化的构建流程&#xff08;编译&…...

MySQL的导入导出及备份

一.准备导入之前 二.navicat导入导出 ​编辑 三.MySQLdump命令导入导出 四.load data file命令的导入导出 五.远程备份 六. 思维导图 一.准备导入之前 需要注意&#xff1a; 在导出和导入之前&#xff0c;确保你有足够的权限。在进行导入操作之前&#xff0c;确保目标数据…...

【机器学习】常见算法详解第2篇:K近邻算法各种距离度量(已分享,附代码)

本系列文章md笔记&#xff08;已分享&#xff09;主要讨论机器学习算法相关知识。机器学习算法文章笔记以算法、案例为驱动的学习&#xff0c;伴随浅显易懂的数学知识&#xff0c;让大家掌握机器学习常见算法原理&#xff0c;应用Scikit-learn实现机器学习算法的应用&#xff0…...

@KafkaListener指定kafka集群

基于KafkaListener注解的kafka监听代码可以手动指定要消费的kafka集群&#xff0c;这对于需要访问多套kafka集群的程序来说&#xff0c;是有效的解决方案。这里需要注意的是&#xff0c;此时的消费者配置信息需使用原生kafka的配置信息格式&#xff08;如&#xff1a;ConsumerC…...

什么是算法的空间复杂度?

一、问题 常常⽤算法的空间复杂度来评价算法的性能&#xff0c;那么什么是算法的空间复杂度呢&#xff1f; 二、解答 算法的空间复杂度是指在算法的执⾏过程中&#xff0c;需要的辅助空间数量。 辅助空间数量指的不是程序指令、常数、指针等所需要的存储空间&#xff0c;也不是…...

WebDav协议相关软件@简单配置局域网内的http和WebDav服务器和传输系统

文章目录 相关软件windows自带第三方软件 chfs(CuteHttpFileServer)下载软件GUI方案 补充命令行方案命令行程序定位简单创建服务站点使用配置文件配置细节 使用软连接或符号链接等手段将向共享站点的根目录添加文件开机自启服务包装nssm包装使用powershell包装 服务启动chfs服务…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...