unity3d NavMeshAgent 寻路画线/画路径
今天在群里看见有个小伙在问Game视图寻路时怎么画线
正好前几天写了个寻路,而且自己也不知道具体怎么在寻路时画线,所以决定帮帮他,自己也好学习一下
在百度查了一下资料,直接搜寻路画路径、寻路画线......
我可不是伸手党,我只是想看看别人是怎么实现的
结果什么都没有搜到!!那就直接搜unity3d 画线吧..... 果然很多资料!!
Debug.DrawLine;使用这个函数只能在 screen 中看见画的线,在 game 中看不见
那我们要怎么在game中画线呢
百度给我答案:LineRenderer(线渲染器)
然后查圣典:http://game.ceeger.com/Script/LineRenderer/LineRenderer.html
怎么用的自己看,我在这里就不多说了
ok,开始敲代码咯
首先我们创建一个空gameobject,然后添加 Line Renderer 组件
属性设置如下图:
材质我是随便拖的,无关紧要
这个时候我们双击刚才创建的 gameobject 以在 scene 视图中查看
我们可以看见有一条线出现了,因为我材质的问题,我这里显示的是椭圆形!!脑补一下线的样子吧
我们在组件中设置的两个坐标其实就是两个点,两点一线,就这样生成了线。。。好像是废话
好了,我们开始敲代码吧,组件设置没啥好说的
设置两个变量
public Transform line;//就是我们刚才添加的 gameobject
private LineRenderer _lineRenderer;//储存 gameobject 的 LineRenderer 组件
在 Start 方法中初始化 _lineRenderer
void Start ()
{
_lineRenderer = line.GetComponent<LineRenderer>();
}
最后我们在寻路后画线
Vector3[] _path = Nav.path.corners;//储存路径
_lineRenderer.SetVertexCount(_path.Length);//设置线段数
for (int i = ; i < _path.Length; i++)
{
_lineRenderer.SetPosition(i, _path[i]);//设置线段顶点坐标
}
就这么简单,看看代码,看不懂先去看我上文提到的手册
由于我的项目中有很多无关寻路画线的代码,而且以上代码比较简单,我就不贴出完整代码了
下面是测试结果:
本文链接:http://www.cnblogs.com/shenggege/p/4129405.html
unity3d NavMeshAgent 寻路画线/画路径的更多相关文章
- 【液晶模块系列基础视频】4.1.X-GUI图形界面库-画线画圆等函数简介
[液晶模块系列基础视频]4.1.X-GUI图形界面库-画线画圆等函数简介 ============================== 技术论坛:http://www.eeschool.org 博客地 ...
- Unity3d NavMeshAgent 寻路问题(1)
navMeshAgent调用setDestination 后,会有一个计算路径的时间,计算过程中pathPending为true. 在这个过程中remainingDistance一直为0.
- Unity3d LineRenderer画线
原地址:http://www.cnblogs.com/88999660/archive/2013/01/21/2869498.html 1. 画多条线 画多条线需要在场景中放置多个GameObjec ...
- Unity3D 画线插件 Vectrosity_Simple2DLine
Vectrosity是一个很方便的画线插件,用它我们可以画出2D,3D,贝塞尔,圆,椭圆等各种线条图案. :链接: http://pan.baidu.com/s/1pJjTFjt 密码: uesn 首 ...
- unity3d之在屏幕上画线
如何在屏幕上画线,简单的代码如下: using UnityEngine; public class Test : MonoBehaviour { void OnGUI() { GL.LoadOrtho ...
- unity3d 使用GL 方式画线
这个是画线部分 private Vector3[] linePoints; public int m_LineCount; public int m_PointUsed; public void Re ...
- CGContextRef 画线简单用法
CGContextRef CGContextMoveToPoint(context,150,50);//圆弧的起始点 CGContextAddArcToPoint(context,100,80,130 ...
- iOS小画板画线总结
一:基本画线: 使用贝赛尔曲线画: //创建路径 UIBezierPath* aPath = [UIBezierPath bezierPath]; //设置线宽 aPath.lineWidth = 5 ...
- IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
// Only override drawRect: if you perform custom drawing. // An empty implementation adversely affec ...
随机推荐
- HDU 5805
题意: 退役狗 NanoApe 滚回去学文化课啦! 在数学课上,NanoApe 心痒痒又玩起了数列.他在纸上随便写了一个长度为 nn 的数列,他又根据心情随便删了一个数,这样他得到了一个新的数列,然后 ...
- React中最基础的jsx语法
import React, { Component } from 'react'; class App extends Component { render() { return ( <div ...
- [JSOI2010]部落划分
嘟嘟嘟 一道不错的题,解法不少. 最易于理解的是最小生成树的做法: 首先每两个点之间都连一条长度为这两个点的距离的边,形成完全图. 然后跑最小生成树,直到剩k个联通块,这时候合并成k - 1个联通块的 ...
- 课堂笔记-------字符串类型string------练习
字符串类型 一.string //打出s.时就会出现一堆的方框,要找不带箭头的(不带箭头的是我们现在可以用的到的),不要找带箭头的(带箭头的是扩展,现在还用不到) //不带箭头的都是对s的操作(动作和 ...
- 【题解】洛谷P1445 [Violet]樱花 (推导+约数和)
洛谷P1445:https://www.luogu.org/problemnew/show/P1445 推导过程 1/x+1/y=1/n! 设y=n!+k(k∈N∗) 1/x+1/(n!+k)=1 ...
- 利用pt-query-digest分析MySQL慢查询
1.用法与参数说明 pt-query-digest [OPTIONS] [FILES] [DSN] --create-review-table ##当使用--review参数把分析结果输出到表中时,如 ...
- WebSocket 和socket 的区别
去年光棍节的时候,我写过一篇 quick-cocos2d-x 中的 socket 技术选择:LuaSocket 和 WebSocket .这篇文章介绍了我为何决定在项目中使用 LuaSocket . ...
- css3 笔记
1.元字符使用: []: 全部可选项 ||:并列 |:多选一 ?: 0个或者一个 *:0个或者多个 {}: 范围 2.CSS3属性选择器: E[attr]:存在attr属性即可: E[attr=val ...
- Redis高可用复制集群实现
redis简单介绍 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库.Redis 与其他 key - value 缓存产品有以下三个特点: 支持数据的持久化,可以将 ...
- kafka概述
kafka概述 Apache Kafka是一个开源 消息 系统,由Scala写成.是由Apache软件基金会开发的一个开源消息系统项目. Kafka最初是由LinkedIn开发,并于2011年初开源. ...