Unity3d C#实现获取两个对象的夹角值(0--360)
前言
- 前言
- 直观效果
- 实现过程
- 搭建场景
- 对象
- 划线对象
- 编码
- 获取夹角
- 转换夹角值
- 显示夹角
- 绘制夹角
- 项目源码
项目中经常会遇到两个对象的夹角计算,主要还是vector3.Angle的计算,有个问题是这个返回只在180之下。通过一番查阅资料这里将整理的demo分享一下。
直观效果新建了两个对象,一个正方体和一个球体,主要就是计算正方体前向和正方体到球体方向的夹角。
TextMesh用于显示计算的夹角值。
划线对象为了更直观的看到夹角,用两根线来连接出夹角。
编码 获取夹角求出两个向量的角度
float angle = Vector3.Angle(from, to);
from正方体的前向 to 正方体到球体的向量
转换夹角值 叉乘求法线向量
Vector3 nordir = Vector3.Cross(from, to);
点乘求出相似度
float dot = Vector3.Dot(nordir, Vector3.down);
转换值
if (dot
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?