分类:Unity、C#、VS2015

创建日期:2016-04-02

一、基本概念

Unity已经内置了一些基本的3D对象,利用这些内置的3D对象就可以直接构建出各种3D模型(当然,复杂的三维模型还需要借助专业建模软件来完成)。

Unity 5.3.4内置的3D对象有:

Cube:立方体

Sphere:球体

Capsule:胶囊体。

Cylinder:圆柱体。

Plane:平面。

Quad:四方格。

Ragdoll:布娃娃系统。

Terrain:地形。

Tree:树。

Wind Zone:风。

3D Text:文字。

二、Cube基本用法

下面以Cube为例,说明直接创建3D模型的基本用法。

创建立方体(Cube)的办法:【GameObject】->【3D Object】->【Cube】:

创建一个Cube对象后,在层次视图中就会看到该对象的名称。

为了区分是哪个对象,也可以单击层次视图中刚创建的对象修改其名称,例如,将刚创建的对象改为“Cube01”。

按F快捷键(居中),就可以在场景中看到Cube01原始的形状:

下图是继续创建的Cube02(先在检视器中不勾选Cube01将其变为不可见,再选中Cube02,然后按R键进入缩放模式,再拖动鼠标左键分别缩放X、Y、Z方向):

下图是Cube01、Cube02都可见,且Cube01改变形状和位置后的效果。仍然是利用Q、W、E、R快捷键(手形、平移、旋转、缩放),并拖动鼠标来实现:

再创建一个Cube03:

同时选中Cube01、Cube02、Cube03,再利用【Duplicate】复制一份(快捷键:Ctrl+D):

下面是复制后的结果:

再旋转一下:

通过这些步骤,可看出仅利用Cube就可以创建出各种形状。

删除刚复制的对象(仅为了让你看看如何复制)。

下面给这三个Cube贴图。

将Grass01拖放到Cube01,将Brick_D拖放到Cube02和Cube03,并将Cube03(或者Cube02)贴图的【Tiling】属性中的x值设置为15,如下图所示:

这就得到了下面的效果:

利用内置的3D对象创建其他基本模型的办法与这里介绍的利用Cube创建各种3D模型的办法类似。

如果再将这些基本模型组合起来,就可以构造出各种形状的三维模型了。

三、说明

前面虽然介绍了如何在Unity中直接创建3D对象,但是,直接这样做有一个很大的缺点:由于每个3D对象都是一个独立的组件,而且其性质都相似,每次都新建这么多的独立对象很占用内存空间,渲染性能也较低。或者说,这种办法并不是一个好办法,那么,实际应该如何做呢?这就是下一节将要介绍的“预设(Prefab)”的作用。

【Unity】3.1 利用内置的3D对象创建三维模型的更多相关文章

  1. 关于Unity中Shader的内置值

    Unity provides a handful of builtin values for your shaders: things like current object's transforma ...

  2. ES6新特性:Javascript中内置的延迟对象Promise

    Promise的基本使用: 利用Promise是解决JS异步执行时候回调函数嵌套回调函数的问题, 更简洁地控制函数执行流程: 通过new实例化Promise,  构造函数需要两个参数, 第一个参数为函 ...

  3. JSP内置九个对象Request请求对象

    jsp内置对象是什么呢? 例如Java语言使用一个对象之前需要实例化(也就是所说的new一个对象),创建对象这个过程有点麻烦,所以在jsp中提供了一些内置对象,用来实现很多jsp应用.在使用内置对象时 ...

  4. JavaScript基础 -- js常用内置方法和对象

    JS中常用的内置函数如下: 1.eval(str):计算表达式的结果. 2.parseInt(str,n):将符串转换成整数数字形式(可指定几进制). 3.parseFloat(str):将字符串转换 ...

  5. android菜鸟学习笔记23----ContentProvider(三)利用内置ContentProvider监听短信及查看联系人

    要使用一个ContentProvider,必须要知道的是它所能匹配的Uri及其数据存储的表的结构. 首先想办法找到访问短信及联系人数据的ContentProvider能接受的Uri: 到github上 ...

  6. Unity3-各个内置面板,对象说明

    *在Inspector面板中,是表示每个物体(诸如摄像机,圆柱,正方体)的组件. 组件包含: 1.Transform,在第一节当中,可以用于变换物体的位置.每个物体对象都有. 2.cube,网格,对于 ...

  7. 【Unity】8.1 Unity内置的UI控件

    分类:Unity.C#.VS2015 创建日期:2016-04-27 一.简介 Unity 5.x内置了-套完整的GUI系统,提供了从布局.控件到皮肤的-整套GUI解决方案,因此可直接利用它做出各种风 ...

  8. unity shader 内置变量

    官网Manual:http://docs.unity3d.com/Manual/SL-UnityShaderVariables.html unity提供大量的内置变量,来供我们使用,主要包括一些 :矩 ...

  9. 浏览器内置Console函数使用详解

    浏览器内置Console函数比较好用:Chrome 和 FireFox(Firebug插件) 利用此功能可以像直接在面板里面运行JS一样(写法不同而已) 一.显示信息的命令 Firebug内置一个co ...

随机推荐

  1. java导出excel工具类

    java导出excel须要使用HSSFWorkbook这个类,须要导入poi-3.6-20091214.jar 工具类调用例如以下: package com.qlwb.business.util; i ...

  2. 〖Android〗dropbear一些操作命令备忘

    相关命令行: # 启动dropbear后台运行 /data/local/tmp/dropbear \ -A -N android -I -C -G -p \ -R /data/local/tmp/au ...

  3. 【Linux】find命令

    用途 find命令用于在指定目录下查找文件. 全称 无 参数 -name :后跟需要匹配的文件名模式,需要使用引号引起来 下面是一些简单的示例查找:(~表示$HOME目录) 1.查找当前$HOME下' ...

  4. Eureka客户端网卡和网段选择

    当机器上有多个网卡或者机器上配置了回环地址的时候,Eureka客户端呈报给服务端的IP将不可预见,为了指定IP我们需要增加以下配置: 在bootstrap.yml中增加配置内容: spring: cl ...

  5. Linux 系统 fstab错误导致系统无法启动的修复

    fstab错误的修复 vim /etc/fstab/dev/sda6 /mnt xfs defaults 0 0重启后系统无法启动,等待一段时间后输入root的密码可进入单用户模式,修改fstab后可 ...

  6. 【转】file_get_contents("php://input")的使用方法

    $data = file_get_contents("php://input");    php://input 是个可以访问请求的原始数据的只读流. POST 请求的情况下,最好 ...

  7. nsTimer的简单用法

    //用nstimer的用法 一种用法,要手动加入到NsRunLoop中 NSTimer *time= [NSTimer timerWithTimeInterval: target:self selec ...

  8. Java实现List数组的几种替代方案

    在Java中,禁止定义List<Integer>a[],这种List数组结构. 但是还是可以使用其它一些方式来实现列表数组. 一.使用Node把List包裹起来 public class ...

  9. IT编年史 技术生命周期起步,成长,成熟和衰退四个阶段 IT历史总结

    IT编年史 最近查看了大量的正史或者野史,体会了整个IT夜发展的风气云涌,颇为激动,撰写如下. 感谢google黑板报的浪潮之巅http://googlechinablog.com/2007/07/a ...

  10. [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)

    [Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...