鹅肉网格画图形就是画三角形

画一个正方形

建一个空物体加一些组件Mesh Filter,Mesh Renderer.

找到对应顶点(AddVert添加顶点),就可以绘制了(顶点是可以变得),我就绘制了正面。(顺指针绘制可以看到正面,逆时针看到后面,想要正反都看到,就正反都绘制)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class Creatsquare : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){Mesh mesh = new Mesh();VertexHelper vh = new VertexHelper();vh.AddVert(new Vector3(0, 0, 0), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(0, 1, 0), Color.white, new Vector2(0, 1));vh.AddVert(new Vector3(1, 0, 0), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(1, 1, 0), Color.white, new Vector2(1, 1));vh.AddTriangle(0, 1, 3);vh.AddTriangle(0, 3, 2);vh.FillMesh(mesh);GetComponent<MeshFilter>().mesh = mesh;}// Update is called once per framevoid Update(){}
}

运行后

然后画正方体

想要看到下面就要逆着画

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class Creatcube : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){Mesh mesh = new Mesh();VertexHelper vh = new VertexHelper();//正面vh.AddVert(new Vector3(0, 0, 0), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(0, 1, 0), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(1, 1, 0), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(1, 0, 0), Color.white, new Vector2(0, 1));//右面vh.AddVert(new Vector3(1, 0, 0), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(1, 1, 0), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(1, 1, 1), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(1, 0, 1), Color.white, new Vector2(0, 1));//后面vh.AddVert(new Vector3(1, 0, 1), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(1, 1, 1), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(0, 1, 1), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(0, 0, 1), Color.white, new Vector2(0, 1));//左面vh.AddVert(new Vector3(0, 0, 1), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(0, 1, 1), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(0, 1, 0), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(0, 0, 0), Color.white, new Vector2(0, 1));//上面vh.AddVert(new Vector3(0, 1, 0), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(0, 1, 1), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(1, 1, 1), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(1, 1, 0), Color.white, new Vector2(0, 1));//下面vh.AddVert(new Vector3(0, 0, 0), Color.white, new Vector2(0, 0));vh.AddVert(new Vector3(0, 0, 1), Color.white, new Vector2(1, 0));vh.AddVert(new Vector3(1, 0, 1), Color.white, new Vector2(1, 1));vh.AddVert(new Vector3(1, 0, 0), Color.white, new Vector2(0, 1));//正面vh.AddTriangle(0, 1, 2);vh.AddTriangle(0, 2, 3);//右面vh.AddTriangle(4, 5, 6);vh.AddTriangle(4, 6, 7);//后面vh.AddTriangle(8,9,10);vh.AddTriangle(8,10,11);//左面vh.AddTriangle(12,13,14);vh.AddTriangle(12,14,15);//上面vh.AddTriangle(16, 17, 18);vh.AddTriangle(16, 18, 19);//下面vh.AddTriangle(20, 23, 22);vh.AddTriangle(20, 22, 21);vh.FillMesh(mesh);GetComponent<MeshFilter>().mesh = mesh;}// Update is called once per framevoid Update(){}
}

最后画个圆

找到对应三角形顶点

找到渲染图片位置

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class Creatcircle : MonoBehaviour
{int num = 100;//三角形个数int r = 1;//半径// Start is called before the first frame updatevoid Start(){Mesh mesh = new Mesh();VertexHelper vh = new VertexHelper();//圆float ang = (2 * Mathf.PI) / num;//弧度vh.AddVert(new Vector3(0, 0, 0), Color.red, new Vector2(0.5f, 0.5f));//原点for (int i = 0; i < num; i++){float x = Mathf.Sin(ang * i) * r;float y = Mathf.Cos(ang * i) * r;float uvx = (x + r) / (2 * r);float uvy = (y + r) / (2 * r);vh.AddVert(new Vector3(x, y, 0), Color.red, new Vector2(uvx, uvy));if (i == 0){vh.AddTriangle(0, num, 1);}else{vh.AddTriangle(0, i, i + 1);}}vh.FillMesh(mesh);GetComponent<MeshFilter>().mesh = mesh;}// Update is called once per framevoid Update(){}
}

Unity 网格画图形相关推荐

  1. Unity网格篇Mesh(一)

    程序代码实现网格 这里根据CSDNSpring5211的一篇文章,进行网格学习为网格材质合并作为一个基础 本文的目标 创建网格坐标 使用携程计算他们位置 利用三角形确定一个面 自动生成法线 添加纹理坐 ...

  2. python简单图画程序_用Python的Turtple画图形

    不知道各位是否还记得在小学或者初中的时候,我们接触过一种语言叫做logo语言,这个语言可以画正方形,画三角形,画圆.而用Python画图形也有点类似logo语言的意思. 在画图之前,我们需要启动一个模 ...

  3. 用python可以画的可爱的图形_用Python的Turtple画图形

    不知道各位是否还记得在小学或者初中的时候,我们接触过一种语言叫做logo语言,这个语言可以画正方形,画三角形,画圆.而用Python画图形也有点类似logo语言的意思. 在画图之前,我们需要启动一个模 ...

  4. 【QT 5 学习笔记-学习绘图相关+画图形图片等+绘图设备+基础学习(2)】

    [QT 5 学习笔记-学习绘图相关+画图形图片等+绘图设备+基础学习(2)] 1.说明 2.实验环境 3.参照连接 4.自己的学习与理解 5.学习与实践代码 (1)移动图片测试实验 (1)继续之前的工 ...

  5. win10画图程序拖动鼠标画图形功能用python实现的思路

    win10画图程序本质上是一个位图处理程序.其最主要的功能是画各种图形,包括线.矩形.椭圆(圆)和各种多边形等,并将各种图形保存到位图中.线.矩形.椭圆(圆)和各种多边形都可以用一个矩形定位,这点在前 ...

  6. openlayers学习——8、openlayers画图形

    openlayers画图形 前言:基于Vue,学习openlayers,根据官网demo,记录常用功能写法.本人不是专业GIS开发,只是记录,方便后续查找. 参考资料: openlayers官网:ht ...

  7. QT绘图(添加背景,画图形)

    绘图设备: QPixmap:针对屏幕进行优化了,和平台相关 QImage:和平台无关,可以对图片进行修改,在线程中绘图 QPicture:保存绘图的状态,保存为二进制文件 画背景图 创建一个widge ...

  8. unity 网格面片生成抛物线,折线

    unity 网格面片生成抛物线,折线 实现效果 工程文件下载地址 一. 网格面片的建立方法 编写一个通用的网格面片线生成方法 线宽的处理 网格面片线建立相对于,管道线建立<unity 线绳管道纯 ...

  9. 学习笔记:unity通过Mesh网格绘制图形:三角形正方体圆柱

    一,介绍 Mesh类:通过脚本创建或是获取网格的类,网格包含多个顶点和三角形数组.顶点信息包含坐标和所在面的法线. unity中3D的世界的所有图形全部都是由三角形构成的. 比如unity已经装配好的 ...

最新文章

  1. linux apache配置多线程,linux apache 日志配置
  2. ASP.NET 2.0中如何连接到Mysql(转)
  3. 使用Data::Dumper
  4. ecs 对比 本地服务器_ECS训练营Day03_SLB负载均衡实践 - 魔笔钨丝浣
  5. Oracle 11g R2手动配置EM(转)
  6. NOIP2017TG D1T2 时间复杂度
  7. Mac python Tesseract 验证码识别
  8. python连接sqlite数据库的代码_Python3实现连接SQLite数据库的方法
  9. C++中全局变量的使用
  10. 漫画:什么是神秘的“凯利公式”?
  11. .NET Core 管道
  12. mysql日期函数转换_Mysql日期函数大全 转
  13. Linux下网络抓包工具(ngrep)
  14. C#-实现的鼠标钩子
  15. 《Adobe Photoshop CS6中文版经典教程(彩色版)》目录—导读
  16. 记录struts2 和struts1的页面验证码生成
  17. React 360 全景VR交互项目实战
  18. python opencv灰度转rgb
  19. websphereJDBC提供驱动程序配置问题,导致报错:Illegal attempt to enlist multiple 1PC XAResources
  20. win 7系统出现计算机内存不足,win7系统计算机内存不足的解决方法

热门文章

  1. 【使用python获取pdf所需数据】
  2. [PHP问题]Cannot redeclare xxxxxx() (previously declared in C:\WWW\xxx.xxx:xxx)
  3. 网站排名下降怎么恢复(网站降权的原因如何知道)
  4. 手把手教你用jQuery Mobile做相册
  5. 如何让win7在桌面显示ie图标
  6. pbl和sbl_探讨:PBL教学法
  7. 山海演武传·黄道·第一卷 雏龙惊蛰 第十三章 穷奇长梦(上) 十四 穷奇长梦(下)
  8. Android 面部识别之二(调用开源面部识别算法seetaface检测)
  9. 中国31省 5G网速 排名!
  10. 蛮力法 第5关:白帽子红帽子问题