线渲染器位置问题 - Unity 5.3.5

时间:2016-08-29 18:05:05

标签: unity3d

我正在关注射击激光的统一教程。在本教程中,线条渲染器应用于枪尖以便从中射击。应用“线条渲染器”后,它会将其指向一条直线,如下所示:

enter image description here

现在当我尝试应用Line Renderer时,它被放置在枪的旁边,如下所示:

enter image description here

如何将其调整为直线?我已经尝试检查枪尖的旋转和定位,这是一个空的游戏对象,但没有运气。请帮忙!

修改

添加层次结构:

enter image description here

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,当您将linerenderer组件默认添加到对象时,其顶点数为1,也有一些宽度,您可以在附加图像中看到粉红色的小线。  所以你要做的就是设置一些属性,比如

 LineRenderer.SetVertexCount()
 LineRenderer.SetWidth()

现在将顶点数设置为2  然后你可以通过它的索引(0和1)访问这两个顶点  将第一个顶点设置为起点(枪点),将第二个点设置为终点(目标)。

//Line renderer component is attached to gun
     LineRenderer linerenderer = GetComponent<LineRenderer >();
     lineRenderer.SetVertexCount(2);
     lineRenderer.SetPosition(0, "GUN TIP POSITION HERE");
     lineRenderer.SetPosition(1, "DESTINATION POSITION HERE");

当你的工作完成后,不要忘记将其顶点数设置回零:)

lineRenderer.SetVertexCount(0);