如何从物体的位置向X局部枢轴箭头的另一个方向投射光线,就像我在屏幕截图中用绿色箭头显示的那样?我想使用本地枢轴点,因为如果我旋转平铺我想要雷也旋转。
RaycastHit hit;
if (Physics.Raycast(transform.position, /* ? */, out hit, maxRayDis)) {
}
我尝试了这个,但它似乎不起作用。
Vector3 testVec = new Vector3 (transform.localPosition.x, 0, 0);
Debug.DrawLine (transform.position, testVec, Color.green);
if (Physics.Raycast(transform.position, testVec, out hit, maxRayDis)) {
}
答案 0 :(得分:0)
你应该设置:
testVec = -transform.right;
答案 1 :(得分:0)
你错过了将本地矢量转换为世界空间。您的代码应该像这样修改:
Vector3 testVec = transform.TransformVector(new Vector3 (transform.localPosition.x, 0, 0));
Debug.DrawLine (transform.position, testVec, Color.green);
if (Physics.Raycast(transform.position, testVec, out hit, maxRayDis)) {
}