Unity实现画线条功能

废话不多说,今天实现一个用LineRender组件实现画图的功能。网上已有相关博文,感觉步骤有些模糊,今天就整理出来供大家学习

第一步、创建一个空对象,为其添加LineRender组件。

注意:将材质的Shader改为Particles/Additive,否则在代码里面控制颜色不起效。

二、再创建一个新的对象,来挂载脚本。脚本如下:

using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {

 private GameObject clone;
 private LineRenderer line;
 int i;
 //带有LineRender物体
 public GameObject target;
 void Start () {

 }

 // Update is called once per frame
 void Update () {
 if (Input.GetMouseButtonDown (0)) {
 //实例化对象
 clone=(GameObject)Instantiate(target,target.transform.position,Quaternion.identity);

 //获得该物体上的LineRender组件
 line=clone.GetComponent<LineRenderer>();
 //设置起始和结束的颜色
 line.SetColors(Color.red,Color.blue);
 //设置起始和结束的宽度
 line.SetWidth(0.2f,0.1f);
 //计数
 i=0;
 }
 if(Input.GetMouseButton(0))
 {
 //每一帧检测,按下鼠标的时间越长,计数越多
 i++;
 //设置顶点数
 line.SetVertexCount(i);
 //设置顶点位置(顶点的索引,将鼠标点击的屏幕坐标转换为世界坐标)
 line.SetPosition(i-1,Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x,Input.mousePosition.y,15)));

 }

 }
}

三、将第一步建的空对象,拖入Inspector面板

四、运行效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Unity绘制二维动态曲线

    一.前言 之前用Line Render实现过这个动态曲线的绘制,使用这个实在太不方便了,一直寻思怎么在一张图片上通过控制图片的像素值实现曲线的动态绘制.参考了Unity的官网教程实现了这个,效果图如图所示: 这样实现的效果比LineRender 要好,并且不怎么消耗计算和渲染 二.实现 1.代码创建一个背景贴图,并将这个贴图给UGUI的RawImage控件 //创建背景贴图 widthPixels = (int)(Screen.width * width); heightPixels = (in

  • Unity实现画线条功能

    废话不多说,今天实现一个用LineRender组件实现画图的功能.网上已有相关博文,感觉步骤有些模糊,今天就整理出来供大家学习 第一步.创建一个空对象,为其添加LineRender组件. 注意:将材质的Shader改为Particles/Additive,否则在代码里面控制颜色不起效. 二.再创建一个新的对象,来挂载脚本.脚本如下: using UnityEngine; using System.Collections; public class NewBehaviourScript : Mon

  • unity实现QQ截图功能

    本文实例为大家分享了unity实现QQ截图功能的具体代码,供大家参考,具体内容如下 效果: 代码如下: using System.Collections; using System.Collections.Generic; using System.Text.RegularExpressions; using UnityEngine; using NPinyin; using System.IO; public class NewBehaviourScript : MonoBehaviour {

  • Python使用pylab库实现画线功能的方法详解

    本文实例讲述了Python使用pylab库实现画线功能的方法.分享给大家供大家参考,具体如下: pylab 提供了比较强大的画图功能,但是函数和参数都比较多,很容易搞混.我们平常使用最多的应该是画线了.下面,简单的对一些常用的划线函数进行了封装,方便使用. # -*- coding: utf-8 -*- import pylab import random class MiniPlotTool : ''' A mini tool to draw lines using pylab ''' bas

  • python实现画圆功能

    本文实例为大家分享了python实现画圆功能的具体代码,供大家参考,具体内容如下 # -*- coding: utf-8 -*- """ __author__= 'Du' __creation_time__= '2018/1/4 17:30' """ import numpy as np import matplotlib.pyplot as plt # 该行用于设置chart 的样式,可以注掉 # plt.style.use("mys

  • 简单实现python画圆功能

    本文实例为大家分享了python实现画圆功能的具体代码,供大家参考,具体内容如下 import numpy as np import matplotlib.pyplot as plt from matplotlib.patches import Polygon import matplotlib.patches as mpatches fig = plt.figure(figsize = (16,8)) ax = fig.gca() ax.set_xlim(-5,18) ax.set_ylim(

  • Unity实现聊天室功能

    本文实例为大家分享了Unity实现聊天室功能的具体代码,供大家参考,具体内容如下 简单聊天室功能,客户端发送消息后,服务器接收到消息后分发到其它客户端上并显示聊天内容 聊天室服务器 服务器需要有以下几个步骤 1.确定Socket协议类型(采用TCP协议或者UDP协议) 2.绑定服务器的IP地址和端口号 3.设置最大监听数量 4.等到连接并处理消息 由于服务器属于一对多的处理关系,因为我们需要用线程来监听消息: class Client { private Socket clientSocket;

  • 基于java实现画图板功能

    本文实例为大家分享了java实现画图板功能的具体代码,供大家参考,具体内容如下 一.介绍 这个画图板主要实现的功能是画矩形(矩形使用的是一个函数画图的方法,这样画出来的图形比较有特点).椭圆.多变形(先画一条直线,鼠标每点击一个地方就会从上一个点连接到点击的点,当鼠标双击时,双击的点会和终点和起点相连).画线.橡皮以及颜色选择器,效果图如下所示: 二.具体实现 本项目主要使用的是java.swing以及java.awt的画图工具来实现.首先显示窗口的建立,先让主类draw继承javax.swin

  • unity实现无限列表功能

    本文实例为大家分享了unity实现无限列表功能的具体代码,供大家参考,具体内容如下 public static class RectTransformExtensions { public static bool Overlaps(this RectTransform a, RectTransform b) { return a.WorldRect().Overlaps(b.WorldRect()); } public static bool Overlaps(this RectTransfor

  • Java拖曳鼠标实现画线功能的方法

    本文实例主要实现Java拖曳鼠标画线的功能,为了达到画线的功能,分别用implements MouseListener与MouseMotionListener,并且由mousePressed(),mouseReleased()取得鼠标拖曳的开始与结束坐标.这是一个掌握Java鼠标事件的很好的范例. 具体实现代码如下: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class MouseDemo e

  • java实现画图板功能

    本文实例为大家分享了java实现画图板的具体代码,供大家参考,具体内容如下 画图板需要满足的功能有: 画线,画三角形,画矩形,画多边形,画曲线 设置不同颜色的画笔 改变窗口大小或最小化窗口后重新打开时图案不消失 画图方法的编写: 创建一个类,继承JPanel类,重写JPanel的绘制方法,重写方法时写上原有的绘制方法,再添加绘制已有的图形的方法.(为了在改变窗口大小和最小化窗口后再打开时图案不消失) 在画图方法中首先创建一个窗体,设置好各项参数后,将窗体设置边框布局.由于继承了JPanel类,重

随机推荐