多语言展示
当前在线:1788今日阅读:190今日分享:11

【源码】Unity3D运行期间如何绘制直线?

Unity3D在运行期间如何绘制直线?简单几步,让你轻松解决。
工具/原料

Unity3D

方法/步骤
1

1.   打来Unity3D软件,创建工程如下图所示。

2

2.  创建下图所示的脚本文件,并将其拖拽到MainCamera对象下

3

3. 打开步骤2创建的脚本文件,编辑代码如下图所示。using UnityEngine;using System.Collections;public class DrawLines : MonoBehaviour{public Material lineMat;public GameObject mainPoint;public GameObject[] points;//public void setvoid DrawConnectingLines(){if (mainPoint && points.Length > 0){// Loop through each point to connect to the mainPointforeach (GameObject point in points){Vector3 mainPointPos = mainPoint.transform.position;Vector3 pointPos = point.transform.position;GL.Begin(GL.LINES);lineMat.SetPass(0);GL.Color(new Color(lineMat.color.r, lineMat.color.g, lineMat.color.b, lineMat.color.a));GL.Vertex3(mainPointPos.x, mainPointPos.y, mainPointPos.z);GL.Vertex3(pointPos.x, pointPos.y, pointPos.z);GL.End();}}}void OnPostRender(){if (points.Length == 0)return;DrawConnectingLines();}}

4

4. 在场景中创建如下图所示的球体作为测试

5

5. 为mainSphere球体创建材质并赋值给它,如下图所示。选中【MainSphere】->【MeshRender】->【Materials】

6

6. 同步骤5为其他的球添加材质如下图所示,LineMaterial设置如下。

7

7. 选中【MainCamera】下的脚本,为其变量赋值,如下图所示。

8

8. 运行结果如下图所示。源码下载地址见注意事项

9

如果您觉得有用,记得在下方点击投票、点赞、关注、留言,小编会定期奉上更多的惊喜哦,您的支持才是小编继续努力的动力,么么哒。

推荐信息