Unity2D 面向目标方向

在2d空间上,假设角色的自身的y轴方向为正方向,如果要让角色随时面向一个目标点。

这里假设(0,0)点为目标点

第一种:

Vector3 v = Vector3.zero - transform.position;                               //首先获得目标方向
v.z = 0;                                                                                            //这里一定要将z设置为0
float angle = Vector3.SignedAngle(Vector3.up,v,Vector3.forward);//得到围绕z轴旋转的角度
Quaternion rotation = Quaternion.Euler(0, 0, angle);                     //利用角度得到rotation
transform.rotation = rotation;

第二中:

Vector3 v = Vector3.zero - transform.position;
v.z = 0;
Quaternion rotation = Quaternion.FromToRotation(Vector3.up, v);
transform.rotation = rotation;

点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java游戏服务器 建造者模式

!(https://oscimg.oschina.net/oscnet/3b58bc7ab4dc4dedc9f0f10f0919a6987f4.jpg)这里的具体的建造者ConcreteBuilder可以多个这里我们以建造汽车为例:假设汽车需要:方向盘、汽车壳、还有四个轮子 这三样才能跑起来如果你因为粗心漏了其

前端性能优化 - 雅虎军规

无论是在工作中,还是在面试中,web前端性能的优化都是很重要的,那么我们进行优化需要从哪些方面入手呢?可以遵循雅虎的前端优化35条军规,这样对于优化有一个比较清晰的方向.35条军规1.尽量减少HTTP请求个数——须权衡2.使用CDN(内容分发网络)3.为文件头指定Expires或CacheControl,使内容具有缓存性。4.避免空的

2802:小游戏

这题可以使用递归来进行求解,让点分别向4个方向进行探索,直到遇到目标点,或者最后执行失败。如果找到了目标顶点,就对totalStep进行对比赋值。但step已经比目前的totalStep大时,应忽略这种情况,因为这样下去是没有意义的。题目如下:2802:小游戏查看(https://www.oschina.net/ac

Decision Surface

一、深入理解超平面很多讲解支持向量机的文章从一开头就开始讲超平面及其方程,这样对多数没有基础的人来说较难理解,下面将从一维直线讲起,带你逐步过渡理解超平面。例如,下面是一个只有x轴的一维坐标轴,该轴同样存在原点,x轴正方向和x轴反方向,且该轴上分布了很多点:!(https://oscimg.oschina.net/oscnet/2d9

Unity3D 键盘控制物体平面移动(操作相对于摄像机方向)

Intro目标是实现目标随摄像机方向的不同而进行不同方向移动——而且,目标不需要随摄像机一起旋转。使用摄像机的四元数旋转voidHandleKeyboardAction(){varhorizontalInput.GetAxis("Horizo