unity绘制线和绘制面
绘制线条代码,其实就是指定至少两个点,然后赋予贴图即可,不废话,上代码;
using UnityEngine;
using System.Collections; public class LineT_1 : MonoBehaviour {
private LineRenderer lineRender;
private int lineLenght=;
private Vector3 v0 =new Vector3(1.0f,0f,0f);
private Vector3 v1= new Vector3(0f,1.0f,0f);
private Vector3 v2=new Vector3(0f,0f,1.0f);
private Vector3 v3=new Vector3(1.0f,0f,0f);
// Use this for initialization
void Start () {
lineRender=GetComponent<LineRenderer>();
lineRender.SetVertexCount(lineLenght);
} // Update is called once per frame
void Update () {
lineRender.SetPosition(,v0);
lineRender.SetPosition(,v1);
lineRender.SetPosition(,v2);
lineRender.SetPosition(,v3);
}
}
显示结果如图:
可以看出,这里主要就是用了
lineRender.SetPosition(index,point)
这个函数。第一个参数是当前要设置的点的索引,从0 开始; 第二个参数是这个点位置。是一个vector3 类型的值; 下面来看一下绘制面,上代码:
using UnityEngine;
using System.Collections; public class MeshBulider : MonoBehaviour {
private Mesh myMesh;
private Vector3[] vertices;
private Vector2[] uvPoints;
// Use this for initialization
void Start () {
myMesh=GetComponent<MeshFilter>().mesh;
vertices=new Vector3[]{new Vector3(5f,0f,0f),new Vector3(0f,5f,0f),new Vector3(0f,0f,5f),new Vector3(-5f,0f,0f),new Vector3(0f,-5f,0f),new Vector3(0f,0f,-5f)};
uvPoints=new Vector2[]{new Vector2(, ), new Vector2(, ), new Vector2(, ),new Vector2(, ), new Vector2(, ), new Vector2(, )};
} // Update is called once per frame
void Update () { myMesh.vertices=vertices;
myMesh.uv=uvPoints;
//如果不写triangles这个属性的话三角形不会被显示;
myMesh.triangles=new int[]{,,,,,};
}
}
实际上也是指定点,然后赋予贴图,不同的是绘制面的时候指定点用了两步:
第一:声明并实例化一个vector3 类型的数组(这个数组保存了面的各个顶点,所以,这个数组的元素数量也必须是3的倍数);
第二:为mesh 的triangles 属性赋值 ,其值是一个int类型的数组,元素个数与声明的顶点数组一一对应;
运行结果如图:
检视面板:
从图中也可以看出,贴图的渲染也是从第一个点开始渲染的,第一个点就是渲染贴图开始地方,对应贴图的左下角(这个不知道说的对不对,眼下是这么觉的~)。~~~
欢迎大家和我一起一起学习,一起进步~
unity绘制线和绘制面的更多相关文章
- Unity3D研究院之游戏对象的访问绘制线与绘制面详解(十七)
一眨眼学习Unity3D 也有一段时间了,基本已经拿下了这套游戏引擎,回过头来想想以前写的RPG 游戏引擎,越来越发现以前写的就是垃圾.人果然是要不断学习与不断进步,好好学习,天天向上.哇咔咔- 加油 ...
- R绘图 第六篇:绘制线图(ggplot2)
线图是由折线构成的图形,线图是把散点从左向右用直线连接起来而构成的图形,在以时间序列为x轴的线图中,可以看到数据增长的趋势. geom_line(mapping = NULL, data = NULL ...
- ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点、线、圆,显示提示信息
ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点.线.圆,显示提示信息 /// <summary> /// 绘制界面上的点和线 /// ...
- Unity编辑器 - 使用GL绘制控件
Unity编辑器 - 使用GL绘制控件 控件较为复杂时,可能造成界面卡顿,在EditorGUI中也可以灵活使用GL绘制来提升性能. 以绘制线段为例: using UnityEngine; using ...
- canvas绘制线和矩形
###canvas绘制矩形 HTML中的元素canvas只支持一种原生的图形绘制:矩形.所有其他的图形的绘制都至少需要生成一条路径 1.绘制矩形 canvas提供了三种方法绘制矩形: ----> ...
- Matplotlib 误差线的绘制和子图的创建方式
一.绘制误差线 使用errorbar方法可以绘制误差线. x = np.linspace(0,10,50) dy=0.8 y = np.cos(x) + dy*np.random.randn(50) ...
- 12-UIKit(View绘制、绘制曲线、绘制文字、贴图)
目录: 1. View绘制 2. 绘制曲线 3. 绘制文字 4. 贴图 回到顶部 1. View绘制 1.1 做出自己的视图对象 TRCell : UITableViewCell : UIView U ...
- Unity动态构建mesh绘制多边形算法流程分析和实践
前言 先说一下,写这篇博文的动机,原文的博主代码写的十分潇洒,以至于代码说明和注释都没有,最近恰逢看到,所以以此博文来分析其中的算法和流程 参考博文:https://blog.csdn.net/lin ...
- IOS 绘制基本图形( 画圆、画线、画圆弧、绘制三角形、绘制四边形)
// 当自定义view第一次显示出来的时候就会调用drawRect方法- (void)drawRect:(CGRect)rect { // 1.获取上下文 CGContextRef ctx = UIG ...
随机推荐
- Collection使用方法
package cn.stat.p3.conection.demo; import java.util.ArrayList; import java.util.Collection; import j ...
- javascript返回顶部几种代码总结
纯js代码 /** * 回到页面顶部 * @param acceleration 加速度 * @param time 时间间隔 (毫秒) **/ function goTop(acceleration ...
- IP地址的存储和使用
ip地址使用int类型存储,用INET_NTOA()和INET_ATON()转换 mysql'),inet_aton('127.0.0.1'); +-------------------------+ ...
- JQuery控制input的readonly和disabled属性
jquery设置元素的readonly和disabled Jquery的api中提供了对元素应用disabled和readonly属性的方法,在这里记录下.如下: 1.readonly $('in ...
- Holes in the text Add problem to Todo list Problem code: HOLES
import sys def count_holes(letter): hole_2 = ['A', 'D', 'O', 'P', 'Q', 'R'] if letter == 'B': return ...
- 字符串处理(正则表达式、NSScanner扫描、CoreParse解析器)-备用
搜索 在一个字符串中搜索子字符串 最灵活的方法 1 - (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptio ...
- 如何用js检测手机是否安装某个app
问题描述 如果本地安装了app那么直接打开,否则苹果要跳转到app-store,安卓则要跳到对应的市场 解决方案 一 //html代码中 的 a 标签,以微信为例,默认的是调用weixin schem ...
- qmake使用实践:包含动态库的Qt4工程
文章来源:http://blog.csdn.net/dbzhang800/article/details/6317006 本文是qmake的一个使用练习,是半年前所学的 分析与学习Qt Solutio ...
- asp.net 管道模型+生命处理周期
http://www.cnblogs.com/qianlifeng/archive/2010/12/16/1908568.html https://msdn.microsoft.com/zh-cn/l ...
- JAVA常用类库简介(转)
Java编程语言中为方便学习者学习,编制了许多类,这些类已经经过测试,都是我们编程的基础.如果不利用这些已存在的类,我们的编程工作将变得异常复杂并且效率低下.所以我们应尽可能多的掌握Java基本类库的 ...