【Unity3D日常】Mathf.Atan2函数研究
2019-09-24 11:03
5407 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/q764424567/article/details/101270385
一、前言
最近有用到这个函数,就把用这个函数的小技巧记录一下,可以让我后面可以复习一下
效果:
3d效果
2d效果
二、官方API
这个意思就是返回弧度角的正切是y/x。
返回值是x轴与起始零点和终点2D向量(x,y)的之间夹角。
注意此函数,x为0的情况,返回正确的角度,而不是抛出被零除的异常。
接下来就让我们来看看这个函数怎么用
三、用法
代码:
using UnityEngine; public class TestGetAnget : MonoBehaviour { public Transform m_target1; public Transform m_target2; public Transform target; public Transform target1; void Update() { GetAnglev3(); GetAngle(m_target1, m_target2); } void GetAnglev3() { Vector3 relative = target1.InverseTransformPoint(target.position); float angle = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg; target1.Rotate(0, angle, 0); } void GetAngle(Transform target1,Transform target2) { Vector3 dir = target1.position - target2.position; float angle = Mathf.Atan2(dir.y, dir.x) * Mathf.Rad2Deg; m_target1.rotation = Quaternion.AngleAxis(angle, Vector3.forward); } }
3D演示
这个时候就可以看下我们的效果了
2d的演示
相关文章推荐
- Unity3d TransformPoint 函数研究
- Printf 函数使用参考与研究
- Unity3d之MonoBehaviour函数整理
- unity3d中脚本运行顺序的个人研究
- jquery的匿名函数研究
- Unity3d之MonoBehavior的各个函数的执行顺序,回调,顺序,次数等
- TControl的主要功能研究(属性,函数,事件)
- Unity3D研究之与根据动态的两个轨迹点绘制面详解
- Unity3D之MonoBehaviour的可重写函数整理
- 关于Unity3D中的Debug类的一些函数内容
- Unity3d之MonoBehaviour的可重写函数整理
- Oracle-intersect-minus等日常函数
- Unity3D研究之Machine动画脚本自动生成AnimatorController
- opencv日常学习之approxPolyDP函数和boundingRect函数说明
- 菜鸟到大牛之——以c语言入门的日常练习十九(实现一个函数输出1000-2000的润年)
- 研究一下JS的转型函数
- Unity3D-Android版本调用Java函数
- Python内置的字符串处理函数详细整理(覆盖日常所用)
- TCP之send函数研究
- 大家都知道,木头一直都没有在大的游戏公司待过,没见识也没经历过优秀的项目。最近想研究一些开源的Unity3D框架,开拓一下自己的思维。 优先入坑的是Entitas框架,本系列教程基于0.42.3版本。