Articles of 轮换

用于航向修正的PID控制器误差值

我在我的AI中使用一个PID控制器来引导我的NPC到一个所需的方向(通过增加扭矩)。 我已经调整了这里的代码: http : //answers.unity3d.com/questions/199055/addtorque-to-rotate-rigidbody-to-look-at-a-point.html 上面的例子使用两个标题的叉积作为PID控制器的误差值。 如果希望的和当前的方向之间的角度小于90度,但是如果角度大于这个角度,则PID控制器纠正到与我想要的相反的方向(因为它试图纠正为零)。 两个vector之间的良好误差值传递到一个PID控制器中,无论希望的和当前的方向之间的角度如何,都能正常工作? 注意:因为PID控制器将校正作为vec3返回,所以错误值也必须是vec3

Unity对象不能绕着枢轴点旋转

突然,出于某种原因,统一编辑器中的对象开始围绕自己的重心旋转(至less这是我认为正在发生的事情),而不是旋转点。 我尝试将对象放置在一个空的对象内,像往常一样用作新的枢轴点,但是这并没有改变任何东西。 这是一些设置或一些更新的function? 我怎么能阻止它?

基于鼠标的缓动动作中的抖动/滞后

我正在旋转一个基于相机每帧运动的对象。 当鼠标不移动时,对象应该旋转回原来的旋转。 这是我的代码: this.xRot -= UTILS.getAngleDist(mouseDir, oldMouseDir); if (this.xRot) this.xRot *= Math.pow(0.99, delta); oldMouseDir = mouseDir; 这取决于最后的鼠标方向和新的鼠标方向之间的差异,并将其应用于对象。 然后它也简化了旋转。 但是,当我移动我的鼠标旋转的对象是紧张的。 如果我删除easing它旋转很好,但不旋转回来。 有没有更好的方法来实现这一目标?

字符在目标周围旋转

我使用Unity的xaitment插件作为演示级别的AI,但是我遇到了问题。 我的角色应该走到随机点,但是在走路的时候,它正在旋转。 我看不出是什么原因导致我的代码中,我假设这是我的lookatfunction using UnityEngine; using System.Collections; public class MovementGoto : MonoBehaviour { // target position for the movement private Vector3 mTargetPosition; public Vector3 TargetPosition { get { return mTargetPosition;} set { mTargetPosition = value;} } public float Speed = 40.0f; // Update is called once per frame void FixedUpdate() { // get the current […]

我怎样才能find表示角度的旋转之间的差异?

find两个2D旋转/方向之间的区别最简单的方法是什么? 我想testing一个旋转是否在另一个旋转角度内。 我只是减去,但也有一些问题,因为我想保持每个旋转0和359之间。例如0是在359 10°之内,但简单的减法会声称它们相距359度。

仿射变换:旋转与另一个平面平行的平面

我正在写一个函数,可以在三维建模软件中find一个2D样条。 我需要翻译一组点P的方法,使它们都位于一个新的平面L(保持点之间的距离)。 P是Z = 0的所有点; L由(0,0,0)定义,法向量为N. 我正在使用处理,它有共同的matrix和向量function(但不是四元数)概念或伪代码的答案是好的。

在缩放unity3d时,将子元素放在父圆的边上

我遇到了一些不同的情况。 我有一个圆形精灵,我正在旋转不断旋转的同时旋转我想使圆圈越来越大。 我有一个对象在圆的边缘,我已经把这个对象作为圆的孩子。 现在我的问题是如何使这个孩子对象留在边缘,而我缩放圆形精灵。 这可能吗 ? 谢谢。

帮助与转动炮塔和枪口火光精灵

我正在制作一个自上而下的游戏,坦克正在旋转炮塔并向其他坦克开火。 我的炮塔独立于坦克本身围绕中心旋转。 不过,我现在正在试图用炮塔来旋转一个枪口眩光精灵animation。 当炮塔旋转时,我正在努力保持枪管末端的炮口闪光。 这里是位置(0,0)排列的两个精灵: 这里是我想要的枪口喇叭的位置: 问题是,当炮塔旋转时,枪口喇叭不能保持偏移(45,8)。 我曾尝试使用方程式: x2 = x * cos(θ)-y * sin(θ) y2 = x * sin(θ)+ y * cos(θ) 其中x = 45和y = 8。 但是我没有运气。 我的math在哪里错了?

(团结5)强迫孩子对象垂直于地面?

正如我在标题中提到的,我想让我的MainCamera子对象保持垂直于地面,任何想法?)

指定Unity中的旋转中心

我想旋转我的游戏对象,而不是原点,所以我该怎么做呢?