#pragma strict
function Awake(){ var pMeshFilter : MeshFilter = gameObject.AddComponent(typeof(MeshFilter)) as MeshFilter;//网格过滤器
var pMeshRender : MeshRenderer = gameObject.AddComponent(typeof(MeshRenderer)) as MeshRenderer;//网格渲染
var pMesh : Mesh = pMeshFilter.mesh as Mesh; //网格过滤器的实例化的Mesh //u3d中绘制图形都是三角形绘制法。顺时针。所以先记录全部的点,然后在确定三角形绘制的顺序 var pVector : Vector3 [] = new Vector3[36];
var pTriangles : int [] = new int[pVector.length]; //forword
pVector[0] = new Vector3(0.0f,0.0f,0.0f);
pVector[1] = new Vector3(0.0f,1.0f,0.0f);
pVector[2] = new Vector3(1.0f,0.0f,0.0f); pVector[3] = new Vector3(1.0f,0.0f,0.0f);
pVector[4] = new Vector3(0.0f,1.0f,0.0f);
pVector[5] = new Vector3(1.0f,1.0f,0.0f);
//back
pVector[6] = new Vector3(0.0f,0.0f,1.0f);
pVector[7] = new Vector3(0.0f,1.0f,1.0f);
pVector[8] = new Vector3(1.0f,0.0f,1.0f); pVector[9] = new Vector3(1.0f,0.0f,1.0f);
pVector[10] = new Vector3(0.0f,1.0f,1.0f);
pVector[11] = new Vector3(1.0f,1.0f,1.0f);
//left
pVector[12] = new Vector3(0.0f,0.0f,0.0f);
pVector[13] = new Vector3(0.0f,0.0f,1.0f);
pVector[14] = new Vector3(0.0f,1.0f,1.0f); pVector[15] = new Vector3(0.0f,1.0f,1.0f);
pVector[16] = new Vector3(0.0f,1.0f,0.0f);
pVector[17] = new Vector3(0.0f,0.0f,0.0f);
//right
pVector[18] = new Vector3(1.0f,0.0f,0.0f);
pVector[19] = new Vector3(1.0f,0.0f,1.0f);
pVector[20] = new Vector3(1.0f,1.0f,0.0f); pVector[21] = new Vector3(1.0f,1.0f,0.0f);
pVector[22] = new Vector3(1.0f,0.0f,1.0f);
pVector[23] = new Vector3(1.0f,1.0f,1.0f);
//up
pVector[24] = new Vector3(0.0f,1.0f,0.0f);
pVector[25] = new Vector3(0.0f,1.0f,1.0f);
pVector[26] = new Vector3(1.0f,1.0f,0.0f); pVector[27] = new Vector3(1.0f,1.0f,0.0f);
pVector[28] = new Vector3(0.0f,1.0f,1.0f);
pVector[29] = new Vector3(1.0f,1.0f,1.0f);
//down
pVector[30] = new Vector3(0.0f,0.0f,0.0f);
pVector[31] = new Vector3(0.0f,0.0f,1.0f);
pVector[32] = new Vector3(1.0f,0.0f,0.0f); pVector[33] = new Vector3(1.0f,0.0f,0.0f);
pVector[34] = new Vector3(0.0f,0.0f,1.0f);
pVector[35] = new Vector3(1.0f,0.0f,1.0f); for(var nIndex : int = 0; nIndex < pTriangles.length;++nIndex){
pTriangles[nIndex] =nIndex;
}
pMesh.Clear();
pMesh.vertices = pVector;//网格顶点
pMesh.triangles = pTriangles;//三角形
pMesh.RecalculateBounds();
}

Unity3d修炼之路:用Mesh绘制一个Cube的更多相关文章

  1. 用DirectX12绘制一个Cube

    之前一篇文章讲了DirectX12的初始化流程,现在来看看在此基础上如何绘制一个Cube. 首先,我们要为这个Cube准备一个shader,来告诉GPU绘制的具体流程,DirectX中的shader使 ...

  2. 用DirectX 11绘制一个Cube

    之前一篇文章讲了如何初始化DirectX 11,现在在此基础上绘制一个Cube,总体可概括为以下几个步骤: 定义Cube顶点数据结构 创建Vertex Buffer和Index Buffer 编写应用 ...

  3. Unity3d修炼之路:GUIbutton简单使用,完毕对一个简单对象Cube的移动,旋转

    #pragma strict private var m_pCubeObj : GameObject = null; private var m_pMeshFilter : MeshFilter = ...

  4. Unity3d修炼之路:载入一个预制体,然后为该对象加入组件,然后查找对象,得到组件。

    #pragma strict function Awake(){ //载入一个预制体 资源必须在 Resources目录下 Resources.LoadLoad(); //载入后 必须演示样例化 Ga ...

  5. Unity3d修炼之路:游戏开发中,3d数学知识的练习【1】(不断更新.......)

    #pragma strict public var m_pA : Vector3 = new Vector3(2.0f, 4.0f, 0.0f); public var m_pB : Vector3 ...

  6. Unity3D学习笔记1——绘制一个三角形

    目录 1. 绪论 2. 概述 3. 详论 3.1. 准备 3.2. 实现 3.3. 解析 3.3.1. 场景树对象 3.3.2. 绘制方法 4. 结果 1. 绪论 最近想学习一下Unity3d,无奈发 ...

  7. Unity3D学习笔记2——绘制一个带纹理的面

    目录 1. 概述 2. 详论 2.1. 网格(Mesh) 2.1.1. 顶点 2.1.2. 顶点索引 2.2. 材质(Material) 2.2.1. 创建材质 2.2.2. 使用材质 2.3. 光照 ...

  8. Unity3D学习笔记4——创建Mesh高级接口

    目录 1. 概述 2. 详论 3. 其他 4. 参考 1. 概述 在文章Unity3D学习笔记2--绘制一个带纹理的面中使用代码的方式创建了一个Mesh,不过这套接口在Unity中被称为简单接口.与其 ...

  9. [Modern OpenGL系列(三)]用OpenGL绘制一个三角形

    本文已同步发表在CSDN:http://blog.csdn.net/wenxin2011/article/details/51347008 在上一篇文章中已经介绍了OpenGL窗口的创建.本文接着说如 ...

随机推荐

  1. 杭电(hdu)ACM 4548 美素数

    美素数 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Total Submis ...

  2. 广东工业大学2016校赛决赛-网络赛 1169 Problem A: Krito的讨伐 优先队列

    Problem A: Krito的讨伐 Description Krito终于干掉了99层的boss,来到了第100层.第100层可以表示成一颗树,这棵树有n个节点(编号从0到n-1),树上每一个节点 ...

  3. 杂项-报表:Formula One(Active电子表格控件)

    ylbtech-杂项-报表:Formula One(Active电子表格控件) Formula One是一款应用软件,是由Visual Components公司开发的基于Windows平台的.类似于E ...

  4. 7个好用的在线YouTube视频下载工具

    title: 7个好用的在线YouTube视频下载工具 toc: false date: 2018-10-10 15:11:00 categories: methods tags: youtube C ...

  5. POJ 1414 暴搜

    题意比较复杂 (但是很好理解) 大概意思是给你等边三角形(详见题目中的图). 最后一行有n个数,下一次要填的数是c. 里面预先已经填好了数字.(0为未填) 得分的标准是这个分数的连通块周围没有空的地方 ...

  6. POJ 2137 DP

    思路: 枚举第一个点集中起点是哪个. 因为第i个点集总和第i-1个点集和第i+1个点集相连. 我们就可以DP求出最优解了. f[i][j]=min(f[i][j],f[i-1][k]+dis(i,j, ...

  7. (转)Django学习之 第四章:Django模板系统

    前面的章节我们看到如何在视图中返回HTML,但是HTML是硬编码在Python代码中的 这会导致几个问题: 1.显然,任何页面的改动会牵扯到Python代码的改动 网站的设计改动会比Python代码改 ...

  8. Incorrect integer value: '' for column 'RegNum' at row 1

    数据库版本: 5.6.16​​操作系统: Red Hat Enterprise Linux Server release 6.3 (Santiago)​​在插入数据的时候提示告警:​mysql> ...

  9. vue-cli webpack配置中 如何启动less-loader sass-loader

    在vue-cli中构建的项目是可以使用less的,但是查看package.json可以发现,并没有less相关的插件,所以我们需要自行安装. //第一步:安装 npm install less les ...

  10. Android琐碎知识点集合

    1.最近发现android studio更新之后用的v7包,每次创建Activity的时候自动继承的是AppCompatActivity,很不舒服,还是习惯Activity.没什么大的毛病,毕竟goo ...