Unity --- 三维数学 --- Vector类 --- 向量部分

 

 1.注意每一个数字都表示一段有向位移 --- 有方向的距离

1.从尾到头那一段称为向量的模长 --- magnitude (direction对应的是向量的方向)

2.一个向量有大小 -- 模长(magnitude) , 有方向(direction)

1.向量的模长等于各分量的平方和的平方根

2.由于在计算机中计算平方和要比计算平方根更快,更简单,所以我们常常用向量的模长的平方(求平方和)来表示向量的大小。 

1.A向量的单位向量是在A向量的方向上模长为1的向量,用来表示A向量的方向 

1.tranform类中的Position属性用来表示物体的位置,是一个Vector3类型的三维点变量

在Unity中获取一个向量的方式有两种:

1.用公式来求

2.调用Vector3类中的 magnitude(模长)属性,直接获得模长 

3.每一个Vector3类对象都相当于一个向量,当我们给这个对象的Vector3数据是属于世界坐标系中的Position时,此时通过该对象计算的模长(magnitude)为从世界坐标系原点到该Position之间的长度

如果是localPositon的话,则是从父类坐标系原点到该localPositon的位置

4.Vector3中的静态属性zero中装的是一个点的坐标,这个点的坐标就是世界坐标系的原点

 

 1.获取单位向量的两种方法:公式法 --- 向量 / 模长  ---》得到的结果依然是一个向量(该向量的每一个分量的值等于 --- 原向量的每一个分量的值 / 模长),且该向量即为我们想求的单位向量

2.直接调用已有的属性 ---normalized来获取向量所对应的单位向量

1.两向量点相减之后得到的新的向量的大小(模长)为两向量点之间的距离

(a - b == a + (-b) --- -b  ==  b向量方向取反,大小不变)

2.如果是a向量点减去b向量点的话,则得到的新向量方向为b向量点指向a向量点,下面的那个同理

3.在unity中,一个Vector3类对象既可以表示一个三维空间点,也可以表示向量,当表示向量的时候,默认该向量的起点是世界坐标系原点 / 父物体坐标系原点 --- 如果向量点是用 position来表示的话就是世界坐标系为起点,并指向该向量点的positon位置,如果是localPositon的话则是父物体坐标系为原点,并指向该向量点的localPosition位置

1.如果给Translate方法传一个Vector3类对象作为参数的话,则调用该方法的游戏物体会沿着该Vector3类对象的向量形态对应的方向前进,且前进的距离等于向量的大小

(PS:如果想要让以单位距离1沿着向量方向前进的话,我们可以将向量的单位向量(normalized)作为参数传给translate方法 --- 单位向量与原向量的方向相同,但是大小为1)

(PS:在Unity中,Vector3类所形成的向量都是相对于世界坐标系的 --- 即向量起点选的是世界坐标系原点) 

 1.Unity中物体移动的本质其实就是向量相加 --- a向量+b向量最终呈现的效果就是a向量的终点沿着b向量对应的方向移动,移动的距离等于b向量的大小。 --- 移动之后就能够得到一个新的向量了 

1.向量与标量的乘除能够实现的就是向量长度的缩和放 --- 不会改变方向! 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IO流你了解多少

IO流你了解多少 🏠个人主页:shark-Gao 🧑个人简介:大家好,我是shark-Gao,一个想要与大家共同进步的男人😉😉 🎉目前状况:23届毕业生,目前在某公…

国产化大趋势下学习linux的必要性

由于国际上的一些国家的制裁和威胁。最近几年国产化大趋势慢慢的兴起,我们国产化硬件的需求越来越大。对国产操作系统的需求也越来越多,那么我们一直用的Windows系统为什么不用了呢?众所周知的原因,不管是最新的Windows11还是正值…

【Python入门第三十六天】Python丨文件写入

写入已有文件 如需写入已有的文件,必须向 open() 函数添加参数。 “a” - 追加 - 会追加到文件的末尾“w” - 写入 - 会覆盖任何已有的内容 实例 打开文件 “demofile2.txt” 并将内容追加到文件中: f open("demofile2.txt", "a&qu…

主动学习相关论文、代码

文章目录Object Detection2019Learning Loss for Active LearningAn Adaptive Supervision Framework for Active Learning in Object Detection2021Active Learning for Deep Object Detection via Probabilistic ModelingMultiple Instance Active Learning for Object Detec…

STM32数据搬运工DMA

DMA的概念DMA,全称为:Direct Memory Access,即直接存储器访问。DMA 传输方式无需 CPU 直接控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为 RAM 与 I/O 设备开辟一条直接传送数据的通路&#xff…

Linux进程概念—环境变量

Linux进程概念—环境变量1.孤儿进程2.环境变量2.1常见环境变量2.2查看环境变量方法2.3在环境变量中添加2.4和环境变量相关的命令2.5环境变量的组织方式2.6命令行参数🌟🌟hello,各位读者大大们你们好呀🌟🌟 &#x1f68…

五分钟带你了解 计算机操作系统——进程与线程(万字详解·图文)

进程线程可以说是操作系统基础,看过很多关于这方面知识的文章都是纯理论讲述,我准备用图解的形式带你学习和掌握进程、线程。文字力求简单明了,对于复杂概念做到一个概念一张图解,在操作系统课程的学习中,很多人对进程…

HTTP/HTTPS协议认识

写在前面 这个博客我们要要讨论的是协议,主要是应用层.今天我们将正式认识HTTP和HTTPS,也要认识序列化和反序列化,内容比较多,但是不难 再谈协议 我们程序员写的一个个解决我们实际问题, 满足我们日常需求的网络程序, 都是在应用层,我们要完成下面三个步骤. sock的使用 定制…

JAVA Session会话 Thymeleaf - 视图模板技术配置步骤

JAVAWebSession会话会话跟踪技术session保存作用域Thymeleaf - 视图模板技术配置过程Session会话 HTTP是无状态的:服务器无法区分这两个请求是同一个客户端发过来的,还是不同的客户端发过来的 现实问题:第一次请求是添加商品到购物车&#x…

STM32外设-定时器详解

0. 概述 本文针对STM32F1系列,主要讲解了其中的8个定时器的原理和功能 1. 定时器分类 STM32F1 系列中,除了互联型的产品,共有 8 个定时器,分为基本定时器,通用定时器和高级定时器基本定时器 TIM6 和 TIM7 是一个 16 位…

Html5版飞机大战游戏中(Boss战)制作

内容在“60行代码,制作飞机大战游戏”的基础上,继续追加入了Boss战的功能。 boss的血量默认设置为100了,可以二次开发调整……(^_^) 玩起来有一定难度哈。 试玩地址:点击试玩 实现功能 添加玩家飞机,并进行控制Boss能…

【AcWing刷题】蓝桥杯专题突破-广度优先搜索-bfs(11)

目录 写在前面: 题目:844. 走迷宫 - AcWing题库 题目描述: 输入格式: 输出格式: 输入样例: 输出样例: 解题思路: 代码: AC !!&#xff…

使用Docker 一键部署SpringBoot和SpringCloud项目

使用Docker 一键部署SpringBoot和SpringCloud项目 1. 准备工作2. 创建Dockerfile3. 创建Docker Compose文件4. 构建和运行Docker镜像5. 验证部署6. 总结Docker是一个非常流行的容器化技术,可以方便地将应用程序和服务打包成容器并运行在不同的环境中。在本篇博客中,我将向您展…

计算机组成原理|第四章(笔记)

目录第四章 存储器4.1 概述4.1.1 存储器分类4.1.2 存储器的层次结构4.2 主存储器4.2.1 概述4.2.2 半导体存储芯片简介4.2.3 随机存取存储器(RAM)4.2.4 只读存储器(ROM)4.2.5 存储器与CPU的连接4.2.6 存储器的校验4.2.7 提高访存速…

《硬件架构的艺术》读书笔记:Chapter 1 亚稳态的世界

Chapter 1 亚稳态的世界 一、简介 同步系统中,数据和时钟有固定的因果关系(在同一时钟域(Clock Domains))中,只要数据和时钟满足建立时间和保持时间的要求,不会产生亚稳态(meastable) 静态时序分析(STA) 就是基于同步电路设计模型而出现的&am…

安全防御 --- 防火墙

防火墙 1、基础 (1)防御对象:授权用户;非授权用户 (2)含义: 防火墙是一种隔离(非授权用户所在区域间)并过滤(对受保护网络中的有害流量或数据包&#xff0…

GCC 编译器的主要组件和编译过程

主要组件: 分析器:分析器将源语言程序代码转换为汇编语言。因为要从一种格式转换为另一种格式(C到汇编),所以分析器需要知道目标机器的汇编语言。 汇编器:汇编器将汇编语言代码转换为CPU可以执行字节码。 …

网络层协议 IP

目录 IP协议 基本概念 协议头格式(重要) 分片了如何组装: 那么判断是否片偏移就是: 分片对UDP和TCP有影响吗? 总结 网段划分(重要) 下面有两个例子: 特殊的IP地址 …

这几个SQL语法的坑,你踩过吗

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.com/…

人工智能能否取代软硬件开发工程师

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl 人工智能发展趋势 随着AI技术的不断发展,它正在改变我们的生活方式、商业模式和工作方式。人工智能技术的发展一直处于快速变化和持续创新的状态,以下…