Unity画线(自定义线)
来源:互联网 发布:贾真的淘宝店地址 编辑:程序博客网 时间:2024/05/14 08:35
之前一直在想怎么画自定义线,一开始想到有两种方法
1.用拖尾效果(trailRenderer)
2.lineRenderer
后面还是选用lineRenderer,虽然这个会生成N多个点,对性能不知道会有多大影响,但是目前水平也就只能实现功能,优化就能做就做。。
代码相对简单就不弄太多注释了,写给HTC手柄用的,不需要的可以只看核心部分
using UnityEngine;
using System.Collections;
public class DrawLine : MonoBehaviour {
SteamVR_TrackedObject trackdeObjec; //steamVR的一个脚本,在手柄模型上
SteamVR_Controller.Device device;
LineRenderer lr;
Vector3 beforeVector3 = Vector3.zero; //记录上次划线的位置
int index = 0;
public Material ma; //需要更换的材质球
// Use this for initialization
void Start () {
trackdeObjec = transform.GetComponent<SteamVR_TrackedObject>();
print(trackdeObjec);
lr = transform.GetComponent<LineRenderer>();
}
// Update is called once per frame
void FixedUpdate () {
device = SteamVR_Controller.Input((int)trackdeObjec.index);
if (device.GetTouchDown(SteamVR_Controller.ButtonMask.Trigger))
{
index = 0;
device.TriggerHapticPulse(3000);
}
if (device.GetTouch(SteamVR_Controller.ButtonMask.Trigger))
{
if (beforeVector3 != transform.position)//核心部分
{
index++;
lr.SetVertexCount(index); //设置lineRenderer的点个数
lr.SetPosition(index-1, transform.position); //设置位置
beforeVector3 = transform.position;
}
}
if (device.GetPressDown(SteamVR_Controller.ButtonMask.Axis0))
{
lr.material = ma;
Debug.Log("用press按下了 “Axis0” “方向 ”");
}
}
}
- Unity画线(自定义线)
- unity画线
- 【Unity】unity 鼠标画线
- unity 实现椭圆画线(JavaScript)
- iOS大头针(自定义大头针,定位,画线)
- unity GL画线
- unity gl 画线
- unity简单画线
- android自定义画线
- unity使用GL库画线
- unity使用line renderer画线
- unity--鼠标画线、画图实现
- 【Unity】中用路点画线
- unity--鼠标画线、画图实现
- unity 使用GL画线段
- Unity实现画线条功能
- 使用unity shader画线,画圆
- Unity实现画线条功能
- Exception starting filter struts2 Unable to load configuration
- apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件或目录执行权限的设置方法
- 数据结构——链表(单链表、循环链表、双向链表、静态链表)
- swfupload #2049 鬼一样的问题终于解决了
- 操作系统——文件管理
- Unity画线(自定义线)
- 操作系统——进程与线程
- 在公交车上想出的一个java算法
- Maven3入门
- Class.getName()和class.getSimpleName()区别
- struts2+spring3+ibatis下类似淘宝搜索的的三级互联效果
- gitignore总结
- 禁止屏幕截图
- 单向链表的闭环判断