Unity3D随机vector3在局部空间

时间:2015-09-14 14:59:23

标签: unity3d vector local space raytracing

我必须在X轴和Y轴的随机变量和变量之间随机化vector3。所以Z轴是向前的,我需要在该向量周围的圆圈中找到随机向量3,但这一切都在局部空间中。创建vector3并将其添加到本地空间是一个坏主意。 enter image description here 玩家可以绕Y轴行走和旋转,他的脸可以围绕X轴移动。

1 个答案:

答案 0 :(得分:1)

is this what you want?

var cam       = Camera.main;
var distance  = 1000f;
var tolerance = 1f;
var offset    = cam.transform.forward * distance;
var direction = (offset + new Vector3(Random.Range(0f, tolerance), Random.Range(0f, tolerance), 0f)).normalized;

var lineOfSight = new Ray(cam.transform.position, direction);