原文地址:http://blog.csdn.net/liang_704959721/article/details/8548619

我们主要使用 3dsmax2010 进行制作,输出 FBX的类型导入 Unity3D中。

默认情况下,3dsmax8 能够和 U3D软件直接融合,自己主动转换为 FBX物体。

注意事项例如以下: 

1. 

面数控制 

在 MAX软件中制作单一 Game Object物体的面数不能超过 65000 个三角形,即 32500个多

边形 Poly。假设超过这个数量的物体不会显示出来。这就须要我们合理分布多边形和模型

数量。

打开 MAX场景,选择 File/Properties/Summary Info 能够打开文件属性记录。

当中 Faces能够看到每一个物体的实际数量,个体数量不能超过 65000 个 Faces 面。 

2. 

建模控制 

Unity3D软件支持Line渲染和编辑之后所产生的模型。

大部分模型都依靠Polygon进行制作。

在模型表面能够承认多出四边形的面。但不渲染交错的面。 

默认情况下,U3D引擎是不承认双面材质的,除非使用植物材质球 Nature 类型。

所以在制作窗户、护栏等物体。假设想在两面都能看到模型,那须要制作出厚度。或者复制

两个面翻转当中一个的 Normal 法线。 

3. 

文件的放置 

模型能够继承 MAX的材质,可是文件的设置要依照下面形式进行放 

在项目的 Assets目录内。新创建一个 Object 目录。 

并在当中创建 Materials和 Texture 目录(分别自己主动存放材质球和贴图)。 

模型物体并列保存在 Object 目录内。 

这个规律模式不要打乱。否则会破坏整个系统逻辑。

4. 

材质数量控制 

假设一个物体给与一个材质球。那么 Unity3D对于材质数量和贴图数量没有不论什么的限制。 

假设一个物体给与多个材质球。我们须要用 Multi/SubObject 来实现,可是这样的罗列的材质

球的数量没有严格的控制,但尽量保持在 10 以内,过多的数量会导致一些错误。 

假设不使用 Multi/SubObject 材质球。也能够选择一些面。然后给与一个材质球。这样系统

会自己主动将其转换成 Multi/SubObject 材质。

综合而言 Unity3D 软件对于材质的兼容还是非常好的。

5. 

物体的质感 

Diffuse 

Diffuse Bumped 

Bumped Specular 

这三种类型为经常使用类型,当中 Bumped 须要添加Normal 法线贴图来实现凹凸。

Decal 

这样的材质为贴花材质。即相当于 Mask 类型,能够再 Decal(RGBA)贴与一个带有 Alpha 通道

的图像,形成和原图像相叠加的效果。

Diffuse Detail 

这样的材质能够创造出污迹和划痕的效果,即相当于 Blend混合材质。 

Reflective 当中各种类型能够创造出金属反射效果,须要添加 Cubmap 贴图。

Transparent 

当中各种类型能够创造出透明的效果,须要添加具有 Alpha 的通道贴图。 

注意:假设要做玻璃贴图,Alpha 假设全是灰色或黑色(即要求全透明),那么 Alpha 就会

失效,假设要全透明,材质 Alpha当中必须至少有 1 像素为白色。

Nature 

当中 Soft Occlusion Leaves类型主要应用于片状的树叶材质。 

6. 

物体尺寸 

默认情况下 U3D 系统单位 1 等于 1 米,等于软件 1 单位。

假设我们制作是依照实际大小比

例制作,那么导入 U3D引擎会自己主动变成原来的 1%的大小。

由于默认情况下,U3D的 FBXImporter中的 Scale Factor的数值为 0.01。 

那个我们能够将 Scale Factor 的数值恢复为 1,可是这样会占用模型资源,比較消耗物理缓

存。

我们也能够将这个物体从 Hierarchy 中选择,并使用 Scale 放大 100 倍,这样的设置能够有非常

多优点,而且还能通过用脚本制作动画。 

7. 

关于复制 

场景中的灯光布局,反复的模型物体都能够使用系统 Prefab 进行关联复制。这样能够改变

一个參数的同一时候将全部关联物体属性改变。 

8. 

山脉控制 

在创建山脉之后,选择 Terrain/Set Resolution 能够设置山脉的大小和属性。 

须要注意的是,默认情况下 Terrain Width 和 Terrain Height为1000 米。假设设置这个数值太

小,那么绘制草的时候会产生偏移。由于草的尺寸必须降低到 0.1 的单位。

也就是说,山脉在处理 0.1 单位的时候会产生 0.01 的偏差,假设模型太小,这样的偏差是显而

易见的,所以建议用户不要让模型过小。

9. 

光晕控制 

光晕又称为 Lens Flare 即灯光光效。

能够选择一个 GameObject 物体给与Component/Rendering/Lens Flare,并在 Flare 中添加一个

Standard Assets/Light Flares/50mm Zoom项目。这样在执行之后就会产生光晕。 

但有时候假设光晕太远太高却看不到。 

一种办法是将光晕离近,还有一种办法是将全部摄影机 Camera 的 Far clip plane 的数值添加。 

10. 

摄影机控制 

假设场景中有多架摄影机。那么怎样确定第一打开时间所显示的摄影机。就须要设置 Camera

性能 Depth 号码值,号码值越大优先显示相机。

Unity项目优化--开发项目的小经验的更多相关文章

  1. 跨端开发技术 | 拼团商城项目同时开发app和小程序的要点

    此项目为拼团商城类型,主要功能包括商品分类.商品详情.商品搜索.拼团.订单管理等. 项目源码在 https://github.com/apicloudcom/group-ec 仓库的 widget 目 ...

  2. 总结使用Unity 3D优化游戏运行性能的经验

    原地址:http://www.gameres.com/msg_221889.html 作者:Amir Fasshihi 流畅的游戏玩法来自流畅的帧率,而我们即将推出的动作平台游戏<Shadow ...

  3. (转)总结使用Unity 3D优化游戏运行性能的经验

    http://www.199it.com/archives/147913.html 流畅的游戏玩法来自流畅的帧率,而我们即将推出的动作平台游戏<Shadow Blade>已经将在标准iPh ...

  4. [转]总结使用Unity 3D优化游戏运行性能的经验

    转载自:http://www.gameres.com/msg_221889.html 作者:Amir Fasshihi 流畅的游戏玩法来自流畅的帧率,而我们即将推出的动作平台游戏<Shadow ...

  5. Duilib 开发中的小经验

    # duilib开发中收集的小代码 # ## 1 窗体创建 ## - 窗体多继承于 public WindowImplBase ,简单的定义几个函数就可以实现:拖曳caption移动(设置xml窗体的 ...

  6. 记录微信支付开发中的小经验(errcode = 40163; errmsg = "code been used")

    今天上午客户提出问题,看了一下报错截图,应该是我更新版本时少传了一个参数,导致后续报错, 心里想着小问题,直接生产环境添加一下就行了,于是就为了我这一上午的悲剧埋下了伏笔 十分自信的把页面中的代码添加 ...

  7. 大三小学期 web前端开发的一些小经验

    1.html是页面的布局设计,就是页面上要放哪些东西,比如登录界面需要按钮,输入框等等:css是被用于使用设计部件和布局,例如哪些部件放在哪里,多宽多大,是否有边框等:js/jQuery是用于实现函数 ...

  8. Unity全面优化

    前言 Unity的项目优化已经是老生常谈,很多人在项目完成之后,即便创意新颖,也会觉得差强人意,原因就在于没有做详细的项目优化.众所周知,Unity是一个综合性的3D开发引擎,其中包含图像渲染,逻辑处 ...

  9. 项目优化经验分享(八)TeamLeader经验总结

    引言 通过前面的七篇博客.我把自己在项目优化过程的经验进行了分享,今天这篇博客,作为一个总结,就来讲讲作为一个TeamLeader,在项目管理中遇到的问题和解决经验! 正文 问题一:团队之间怎么沟通? ...

随机推荐

  1. hdu4635(最多加多少边,使得有向图不是强连通图)

    连边的最后肯定是两个集合x,yx集合的每个元素,到y集合中的每个元素都是单向的边x集合,和y集合都是完全图设a为x集合的点的个数, b为y集合的那么答案就是 a * b + a*(a-1) + b*( ...

  2. html弹窗,与弹出对话框

    弹出对话框 <script type="text/JavaScript"> <!-- alert("Good Morning!"); //al ...

  3. Java的wait(), notify()和notifyAll()使用心得(转)

    本篇文章是对java的 wait(),notify(),notifyAll()进行了详细的分析介绍,需要的朋友参考下wait(),notify()和notifyAll()都是java.lang.Obj ...

  4. jquery实现仿select列表的即时搜索及拼音搜索

    这里提到select,其实不是select,而是用<li><input>标签去仿造一个select,以实现对已有“option”的快速检索功能. 以<input>标 ...

  5. 尺取法 poj3061 poj3320

    尺取法就是反复推进区间的开头和结尾,来求满足条件的最下区间. poj3061 http://poj.org/problem?id=3061 给定一个都是正整数的序列,要我们求总和不小于S的连续子序列的 ...

  6. friend keyword 对于模板 并不只不过友元!!!

    friend是C++中封装的漏网之鱼. C++中的friend同意其它的类或者是函数訪问本类的不论什么成员.甚至是private成员,仅仅要该类声明其为友元. 但是,在有些情况下,并非同意外界訪问类的 ...

  7. erlang集群IP及port管理

    erlang集群是依靠epmd维护的,epmd是erlang集群节点间port映射的守护进程.负责维护集群内的节点连接.提供节点名称到IP地址及port的解析服务. epmd 自己定义port号 ep ...

  8. swift 学习资源 大集合

    今天看到一个swift学习网站,其中我们收集了大量的学习资源 Swift 介绍 Swift 介绍 来自 Apple 官方 Swift 简单介绍 (@peng_gong) 一篇不错的中文简单介绍 [译] ...

  9. iOS 购物—个人中心界面

    上一个QQ界面真实无心插柳,想不到一个新手的普通界面可以上首页推荐,在这谢谢那些csdn工作者对新手的支持,谢谢soledadzz  的特别推荐: 以下这个界面也是师傅锻炼我的题目主要是让我熟悉tab ...

  10. python可变参数调用函数的问题

    已使用python实现的一些想法,近期使用python这种出现的要求,它定义了一个函数,第一种是一般的参数,第二个参数是默认,并有可变参数.在第一项研究中python时间,不知道keyword可变参数 ...