Unity:计算两个物体(没有父子关系)的相对坐标

  • 问题描述
  • 实现方法
  • 实现原理
  • 参考链接

问题描述

计算Unity场景中物体B在物体A坐标系下的坐标,且两物体没有父子关系

实现方法

计算一个物体A的position相对于另一个物体B(origin)的坐标

private Vector3 GetRelativePosition(Transform origin, Vector3 position)
{Vector3 distance = position - origin.position;Vector3 relativePosition = Vector3.zero;relativePosition.x = Vector3.Dot(distance, origin.right.normalized);relativePosition.y = Vector3.Dot(distance, origin.up.normalized);relativePosition.z = Vector3.Dot(distance, origin.forward.normalized);return relativePosition;
}

实现原理

计算物体A在物体B下的坐标,即将物体B的坐标origin视为坐标原点,物体A的坐标即为(B-A)*B的归一化方向。

参考链接

https://www.it610.com/article/1293777356627976192.htm

Unity:计算两个物体(没有父子关系)的相对坐标相关推荐

  1. 【Unity3D】3D 物体概念 ① ( 轴心点概念 | 物体的父子关系 | 子节点相对坐标 )

    文章目录 一.轴心点概念 二.物体的父子关系 三.子节点相对坐标 一.轴心点概念 3D 物体的 轴心 Pivot , 是 操作的基准点 , 移动物体 时 , 是 轴心点 沿着指定的坐标轴方向移动 ; ...

  2. Unity3D分离子物体解除父子关系/也可实现对子物体的删除

    关于解除父子关系首先看下官方给出的讲解代码. using UnityEngine; using System.Collections;public class example : MonoBehavi ...

  3. unity判定两个物体距离

    float sqrLenght = (target.position - transform.position).sqrMagnitude;//获取两个物体向量的平方长度if (sqrLenght & ...

  4. Unity - 计算两个向量之间的夹角

    项目案例:判断一个目标点是否在角色的视野范围. 思路分析 视野的大小我们是用角度来确定,假如视野的大小是90度,即角色看向正前方,从角色位置出发,任意一个向量和正前方的向量的夹角 <= 45 度 ...

  5. Unity子物体脱离父物体,解除父子关系,子物体不随父物体移动

    在Unity中创建一个手雷,并且需求是扔出手雷时,手雷不能跟随人物移动 这个需要调用 gameObject.transform.DetachChildren方法,将GrenadePosition下的所 ...

  6. Unity学习日志_Unity父子关系与Camera

    Unity学习日志_Unity父子关系与Camera ​ 本次组件简单介绍将不包含monoBehaviour类及其向上回溯的父类. 1. 关于父子物体 ​ 首先需要声明的一点是所有游戏物体的Trans ...

  7. Unity 判断两物体碰撞方向

    Unity 判断两物体碰撞方向 问题描述:游戏玩家可以在两个平面之间不断进行跳跃,且出现玩家顶着上面平面飞着走的情况. 问题原因:玩家碰撞体与平面不断进行碰撞体检测,导致游戏玩家可以不断进行跳跃. 解 ...

  8. Unity两个物体发生碰撞的条件

    好吧,网上好多资料显示发生碰撞条件如下: 两个对象都有Collider组件且至少一个有Rigidbody组件 其中至少一个物体(必须运动的)必须带有碰撞器(collider)+刚体(Rigidbody ...

  9. 效用分析 ( 效能分析、Power analysis)是什么?效用分析在线计算器介绍(分析样本量、效用和效应量之间的关系时,需要把其中一个因素固定,计算另外两个因素间的关系、或者给定两个因素计算第三个

    效用分析 ( 效能分析.Power analysis)是什么?效用分析在线计算器介绍(分析样本量.效用和效应量之间的关系时,需要把其中一个因素固定,计算另外两个因素间的关系.或者给定两个因素计算第三个 ...

最新文章

  1. 机器学习陷入困境,谷歌大脑专家发文吐槽 AI 工程现状
  2. wxpython问卷调查界面_调查问卷使用说明书,问卷就要这么设计!
  3. 三十七、数据泛化(面向属性的归纳)
  4. C++中的deque、stack、queue及priority_queue
  5. VS2010附加进程调试DLL时断点无法断下的解决方法
  6. The path is not a valid path to the xx-generic kernel headers
  7. 最短路径——dj+floyd+spfa(hdu2544)
  8. 如何给数组用fill函数和memset函数给数组赋初值
  9. Android 快捷键
  10. 徘徊于斗牛之间 —— 星象、星宿与星座(风水)
  11. mysql+mmm+主动模式_Zabbix主动代理模式 + 主动模式agent客户端
  12. Chrome安装插件Hackbar
  13. JS中var、let以及const关键字到底怎么用?
  14. Daemon Tools 4.x 或SPTD.SYS导致Windows不能启动的问题的解决方案
  15. 中科院数学所夏令营试卷
  16. Dubbo学习笔记:No provider available for the service ...异常问题的解决
  17. C++——VS2019调整字体和主题
  18. 噩梦射手(SurvivalShooter)教程(九)
  19. 服务器上搭建git仓库
  20. ARC101E Ribbons on Tree

热门文章

  1. 在组装机上安装ubuntu系统-配置pytorch-GPU学习环境
  2. 龚本灿c语言程序设计,c语言程序设计初步-求索学堂.ppt
  3. Given no hashes to check 131 links for project 'pip': discarding no candidates
  4. drupal用户注册邮件smtp及社会化登录模块安装
  5. Origin坐标轴上的连字符修改为负号
  6. 适用于监控大屏的websocket
  7. Robot Framework(十三):使用RF进行web测试(下)
  8. 以水稻为例教你如何使用BSA方法进行遗传定位(上篇)
  9. 一起学习R语言吧——R语言+RStudio
  10. 怎么把PDF转换成PPT