Unity3D使用mesh创建一个正方形
using UnityEngine;
using System.Collections; public class Quad : MonoBehaviour
{
// Use this for initialization
void Start () {
CreateQuad ();
} private float m_width = ;
private float m_length = ; public void CreateQuad()
{
/* 1. 顶点,三角形,法线,uv坐标, 绝对必要的部分只有顶点和三角形。
如果模型中不需要场景中的光照,那么就不需要法线。如果模型不需要贴材质,那么就不需要UV */
Vector3[] vertices = new Vector3[];
Vector3[] normals = new Vector3[];
Vector2[] uv = new Vector2[]; vertices [] = new Vector3 (, , );
uv [] = new Vector2 (, );
normals [] = Vector3.up; vertices [] = new Vector3 (, , m_length);
uv [] = new Vector2 (, );
normals [] = Vector3.up; vertices [] = new Vector3 (m_width, , m_length);
uv [] = new Vector2 (, );
normals [] = Vector3.up; vertices [] = new Vector3 (m_width, , );
uv [] = new Vector2 (, );
normals [] = Vector3.up; /*2. 三角形,顶点索引:
三角形是由3个整数确定的,各个整数就是角的顶点的index。 各个三角形的顶点的顺序通常由下往上数, 可以是顺时针也可以是逆时针,这通常取决于我们从哪个方向看三角形。 通常,当mesh渲染时,"逆时针" 的面会被挡掉。 我们希望保证顺时针的面与法线的主向一致 */
int[] indices = new int[];
indices [] = ;
indices [] = ;
indices [] = ; indices [] = ;
indices [] = ;
indices [] = ; Mesh mesh = new Mesh ();
mesh.vertices = vertices;
mesh.normals = normals;
mesh.uv = uv;
mesh.triangles = indices;
mesh.RecalculateBounds (); MeshFilter filter = this.gameObject.AddComponent<MeshFilter> ();
if(filter != null)
{
filter.sharedMesh = mesh;
} MeshRenderer meshRender = this.gameObject.AddComponent<MeshRenderer> ();
Shader shader = Shader.Find ("Diffuse");
meshRender.sharedMaterial = new Material (shader);
}
}
Unity3D使用mesh创建一个正方形的更多相关文章
- PS网页设计教程XXVIII——如何在PS中创建一个干净的网页布局
作为编码者,美工基础是偏弱的.我们可以参考一些成熟的网页PS教程,提高自身的设计能力.套用一句话,“熟读唐诗三百首,不会作诗也会吟”. 本系列的教程来源于网上的PS教程,都是国外的,全英文的.本人尝试 ...
- Unity3D 创建一个简单的2D游戏
开始研究Unity3d 中的2D游戏. 首先创建出一个项目: 然后创建出一个场景: 然后添加一个背景: 然后创建一个主人公对象: 可以是自己做的素材,也可以是用unity裁剪的素材, 下面贴出裁剪素材 ...
- 【淡墨Unity3D Shader计划】一间 创建一个游戏场景 & 第一Shader写作
本系列文章由@浅墨_毛星云 出品.转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/40723789 作者:毛星云(浅墨) ...
- 【Unity Shaders】Reflecting Your World —— 在Unity3D中创建一个简单的动态Cubemap系统
本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...
- Unity3D之Mesh【创建动态Mesh的学习网站】
觉得不错!做记录! 1.http://gamerboom.com/archives/76484 2.http://jayelinda.com/ 3.几个私人的博客,可能有启发:http://blog. ...
- Unity3D之Mesh(七)绘制长方体
前言: 从现在开始,终于感觉进入一点点正题了!动态创建三维立体模型mesh!依然从简单入手:长方体. 一.基本思路 由于是创建长方体mesh,由之前的研究得知,两个数据必须要有,即:顶点的数据:ver ...
- Unity3D之Mesh(一)绘制三角形
前言: Unity自带几种简单的模型,如cube等:一般情况下,其余模型有3D建模软件生成,以合适的文件格式导入unity中:而mesh(以我目前很粗浅的了解)的一般用途就是:对现有的模型进行变形,以 ...
- 如何用Unity创建一个的简单的HoloLens 3D程序
注:本文提到的代码示例下载地址>How to create a Hello World 3D holographic app with Unity 之前我们有讲过一次如何在HoloLens中创建 ...
- 【webGL】threejs入门 ---创建一个简单立方体
开发环境 Three.js是一个JavaScript库,所以,你可以使用平时开发JavaScript应用的环境开发Three.js应用.如果你没什么偏好的话,我会推荐Komodo IDE. 调试建议使 ...
随机推荐
- Linux下更新瑞芯微固件
有这样的需求,是因为提供的BSP中是在windows下烧写的系统.我直接在linux下开发,每次编译后代码都要在windows下烧写,是一个很麻烦的事情.为了解决这个问题我尝试着用VirtualBox ...
- IOS 开展 分别制定了iphone 和 ipad 好? 或开发一个 Universal好?
最近因为工作的需要,.因为时间短的开发周期 开发的需要 积 至iphone 和 ipad 台 执行 优势的版本号 1.安装包,轻松管理,分布 2.您下载iphone,ipad 会自己主动下载 3.审核 ...
- Html遮罩效果
遮罩效果 <!DOCTYPE html> <html> <head> <title>DIV CSS遮罩层</title> <scrip ...
- ios9配置info.plist中关于安全访问问题
打开info.plist文件 - >添加App Transport Security Settings 字典类型,在App Transport Security Settings下增加Allow ...
- poj3254Corn Fields题解
Corn Fields Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 9623 Accepted: 5092 Descr ...
- C++中的面向对象笔记
公共继承,相当于属于关系.如CLASS B:public A,表示B就是A,A做到的,B也能做到. CLASS A {}; CLASS B:public A {}; A a; B b; a=b;//错 ...
- Android 内部启动其他应用,以及打开指定qq聊天界面
在自己应用中打开第三方应用,有好多种方法,这里举例一种: //以打开微信为例,前提需要知道打开应用的包名,一般一个发布版本的应用,包名不会轻易改变的,但是,打开QQ就要注意了,毕竟QQ的发布版本有不下 ...
- Android.Hack.02_Animations
#01# TextView 和 ImageView TextView和Imageview切换卡顿,为了实现更好的切换,可以用动画来实现,系统自带的TextViewSwitcher 和ImageView ...
- 关于 <video> 的兼容性测试
测试浏览器 Firefox: 33.0.1 Chrome: 38.0.2125.111 m Safari: 5.1.7 IE: 9 和 10(6,7,8不考虑) 经测试:FF.Chrome.Safar ...
- Maven管理Android项目1
maven-android-plugin网站:https://code.google.com/p/maven-android-plugin/wiki/GettingStarted android ...