Unity3D美术制作规范及导出流程图
3d效果图制作流程
3d效果图制作流程3D效果图制作是一种将平面图像转化为三维空间的技术,广泛应用于建筑设计、游戏开发和电影制作等领域。
下面将详细介绍一下3D效果图制作的流程。
第一步:准备工作在开始制作3D效果图之前,首先需要明确设计的目标和需求,包括场景的设置、物体的形状和材质等等。
然后根据需求确定所需的软件和工具。
第二步:建模建模是制作3D效果图的关键步骤之一,其目标是根据设计需求创建三维模型。
常用的建模软件有3ds Max、Maya、SketchUp等。
在建模过程中,可以使用基本的几何体如立方体、球体等进行组合,也可以使用平面制作曲线和网格结构。
通过调整顶点、边缘和面的位置,根据设计稿创建出一个个物体的模型。
第三步:贴图贴图是将平面图像映射到三维模型表面的过程。
可以使用Photoshop等软件创建纹理图像,并将其应用到模型表面,使模型更加真实。
在贴图过程中,需要考虑到材质的属性,如颜色、光泽、透明度等,以及物体的表面细节和纹理。
第四步:灯光设置在3D效果图中,灯光的设置非常重要,它可以为场景增加光影效果,提高真实感。
可以在软件中选择不同类型的灯光,如点光源、平行光源、聚光灯等,并调整灯光的位置、强度和颜色,以达到所需的效果。
此外,也可以添加阴影效果或环境光,增加场景的立体感。
第五步:摄像机设置摄像机设置决定了3D效果图的视角和展示效果。
在软件中可以调整摄像机的位置、焦距、方位角和仰角等参数,来达到所需的视觉效果。
可以选择近景或远景、俯视或仰视等不同视角,以呈现出最佳的设计效果。
第六步:渲染输出渲染是将3D场景转换为二维图像的过程。
可以选择不同的渲染模式,如线框渲染、平坦渲染、真实渲染等,以及不同的渲染引擎,如V-Ray、Arnold等。
渲染过程可能比较耗时,需要根据实际情况进行调整。
最后可以导出渲染后的图像或动画。
第七步:后期处理在输出之前,可以通过后期处理软件如 Photoshop 对图像进行进一步的调整和修饰。
某Unity引擎3dArpg手游项目美术场景制作规则
某Unity引擎3dArpg手游项目美术场景制作规则一、3dmax应用版本_系统单位设置及命名规范:1.应用软件版本:应使用3dmax2013-2014版进行模型制作的标准版本开发,或者更高版本(外包不低于3dmax2010版)以上3dmax版本应用需求是基于u3d引擎所需,在给的官方文档导出说明部分中有明确说明,高版本3dmax中的fbx格式插件会随着版本升级而升级.2.单位设置:单位为厘米(CentiMeters)如截图所示:3.命名规范:初期命名规范(使用到2014年9月份):必须使用汉语拼音或英文场景名称+物体名称+必要时可以加上局部描述+物体编号+(_AL)_D例:桃花林的物品,命名为TaoHuaLin_MuWu_WuDing_001_D.所有不带镂空的普通贴图加后缀_D有镂空通道的贴图后面加_AL后缀;后期命名规范(2014年10月份之后新做的资源命名):必须使用汉语拼音或英文场景名称缩略字母+物体名称+必要时可以加上局部描述+物体编号+(_AL)_D 例:桃花林的物品,命名为THL_MuWu_WuDing_001_D.这样命名长度跟字符数量都降低了一点。
所有不带镂空的普通贴图加后缀_D有镂空通道的贴图后面加_AL后缀;max源文件的名字要与贴图、材质球、模型的命名要统一。
二、模型制作规范材_贴图尺寸材质及提交说明1.贴图制作要求:1)尺寸: 以像素为单位,以2的倍数的任意组合,例如2,4,8,16,32等,并不一定必须是正方形,例如256*64。
以256*256贴图为主,最大应用尺寸为512*512,综合整体应节省贴图的应用数量2)格式:Diffuse贴图为16位TGA格式。
透明贴图为32位TGA格式。
3)公用性质:场景模型人员制作时应考虑贴图的公用性质,在发现有类似资源的前提下尽可能在公共材质库中找类似资源和贴图。
在无类似情况下可以增加新的贴图,增加的贴图要考虑通用性和预留与类似贴图合并的位置。
Untiy3D美工知识
Untiy3D美工知识Unity3D教程:FBX如何内嵌纹理FBX打开后如何会自动生成贴图呢?FBX格式是可以内嵌纹理的,在导出FBX的对话框中勾选Embed Media即可。
Untiy3D美工知识。
现在的图形显卡可以很好的支持很多的多边形,但是他们他们还是有一些瓶颈的。
所以如果你有一个有100个三角形的MESH,它渲染起来所需要花费的运算跟1500个面数的物体是没有多大差别的。
因此最佳的渲染设置时每个模型大约1500-4000个三角面。
只有在游戏组件中的属性栏中勾选Mesh Renderer选项显卡才会渲染相应的模型,并且在场景中的空的GameObject组件是不会被渲染的。
所以,最好的导入渲染设置时合并Objects直到他们每个模型在1500个三角面面甚至更高一些,并且为整个模型使用一个材质。
如果只是把两个模型合并在一起但是不共同使用同一个材质并不会给你的图形带来一点优化。
如果你想有效的合并物体,你需要保证你合并后的模型使用一个材质。
(其实就是尽量减少材质球的数量)在你合并物体的时候需要知道一件事:如果你在你的场景中用到了很多小的灯光,你可以把场景中离得很近的物体合并为一个Object。
按照上面的思路,如果一个MESH具有多个材质球,那就说明在计算机渲染的时候是要进行多重运算的。
最普遍的你之所以一个MESH用多个材质的原因是因为两个材质不能使用相同的贴图。
所以如果你想要优化渲染设置,你最好确定你合并的那些MESH的材质是相同的。
Unity对于向显卡导出各种多边形是很擅长的,它可以很详尽的把所有的图形导入到显卡,并且优化数据。
你需要做的只是确定你的图形显示卡正常工作。
而不是要调整很多手动调节的设置。
相当数量的实时灯光对于游戏速度也是有限制的。
如果你想要有一个不错的展示,并且不关心凹凸贴图和实施灯光(Bumpmapping or Pixel Lighting),可以去Edit->Render Settings...然后设置Pixel Light Coun为0.这将会给所有的Object使用顶点灯光。
unity3D技术之导出Unity场景的所有游戏对象信息
导出Unity场景的所有游戏对象信息,一种是XML一种是JSON。
本篇文章我们把游戏场景中游戏对象的、旋转、缩放、平移与Prefab的名称导出在XML与JSON中。
然后解析刚刚导出的XML或JSON通过脚本把导出的游戏场景还原。
在Unity官网上下载随便下载一个demo Project,如下图所示这是我刚刚在官网上下载的一个范例程序。
接着将层次视图中的所有游戏对象都封装成Prefab保存在资源路径中,这里注意一下如果你的Prefab绑定的脚本中有public Object 的话,需要在代码中改一下。
用Find() FindTag()这类方法在脚本中Awake()方法中来拿,不然Prefab动态加载的时候无法赋值的,如下图所示,我把封装的Prefab对象都放在了Resources/Prefab文件夹下。
OK,现在我们就需要编写我们的导出工具、在Project视图中创建Editor文件夹,接着创建脚本MyEditor 。
如下图所示。
因为编辑的游戏场景数量比较多,导出的时候我们需要遍历所有的游戏场景,一个一个的读取场景信息。
然后取得游戏场景中所有游戏对象的Prefab的名称旋转缩放平移。
有关XML的使用请大家看我的上一篇文章: Unity3D研究院之使用C#合成解析XML与JSON (四十一)代码中我只注释重点的部分,嘿嘿。
MyEditor.csC#1 2 3 4 5 6 7 8 910111213141516171819202122232425262728293031 using UnityEngine;using System.Collections;using UnityEditor;using System.Collections.Generic;using System.Xml;using System.IO;using System.Text;using LitJson;public class MyEditor : Editor{//将所有游戏场景导出为XML格式[MenuItem ("GameObject/ExportXML")]static void ExportXML (){string filepath = Application.dataPath + @"/StreamingAssets/my.xml";if(!File.Exists (filepath)){File.Delete(filepath);}XmlDocument xmlDoc = new XmlDocument();XmlElement root = xmlDoc.CreateElement("gameObjects");//遍历所有的游戏场景foreach (UnityEditor.EditorBuildSettingsScene S in UnityEditor.EditorBuildSettings.scenes) {//当关卡启用if (S.enabled){//得到关卡的名称string name = S.path;//打开这个关卡EditorApplication.OpenScene(name);3233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 XmlElement scenes = xmlDoc.CreateElement("scenes");scenes.SetAttribute("name",name);foreach (GameObject obj in Object.FindObjectsOfType(typeof(GameObject))) {if (obj.transform.parent == null){XmlElement gameObject = xmlDoc.CreateElement("gameObjects"); gameObject.SetAttribute("name",);gameObject.SetAttribute("asset", + ".prefab");XmlElement transform = xmlDoc.CreateElement("transform"); XmlElement position = xmlDoc.CreateElement("position");XmlElement position_x = xmlDoc.CreateElement("x");position_x.InnerText = obj.transform.position.x+"";XmlElement position_y = xmlDoc.CreateElement("y");position_y.InnerText = obj.transform.position.y+"";XmlElement position_z = xmlDoc.CreateElement("z");position_z.InnerText = obj.transform.position.z+"";position.AppendChild(position_x);position.AppendChild(position_y);position.AppendChild(position_z);XmlElement rotation = xmlDoc.CreateElement("rotation");XmlElement rotation_x = xmlDoc.CreateElement("x");rotation_x.InnerText = obj.transform.rotation.eulerAngles.x+""; XmlElement rotation_y = xmlDoc.CreateElement("y");rotation_y.InnerText = obj.transform.rotation.eulerAngles.y+""; XmlElement rotation_z = xmlDoc.CreateElement("z");rotation_z.InnerText = obj.transform.rotation.eulerAngles.z+"";rotation.AppendChild(rotation_x);rotation.AppendChild(rotation_y);rotation.AppendChild(rotation_z);XmlElement scale = xmlDoc.CreateElement("scale");XmlElement scale_x = xmlDoc.CreateElement("x");scale_x.InnerText = obj.transform.localScale.x+"";XmlElement scale_y = xmlDoc.CreateElement("y");scale_y.InnerText = obj.transform.localScale.y+"";XmlElement scale_z = xmlDoc.CreateElement("z");scale_z.InnerText = obj.transform.localScale.z+"";scale.AppendChild(scale_x);scale.AppendChild(scale_y);scale.AppendChild(scale_z);767778798081828384858687888990919293949596979899 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 transform.AppendChild(position);transform.AppendChild(rotation);transform.AppendChild(scale);gameObject.AppendChild(transform);scenes.AppendChild(gameObject);root.AppendChild(scenes);xmlDoc.AppendChild(root);xmlDoc.Save(filepath);}}}}//刷新Project视图,不然需要手动刷新哦AssetDatabase.Refresh();}//将所有游戏场景导出为JSON格式[MenuItem ("GameObject/ExportJSON")]static void ExportJSON (){string filepath = Application.dataPath + @"/StreamingAssets/json.txt";FileInfo t = new FileInfo(filepath);if(!File.Exists (filepath)){File.Delete(filepath);}StreamWriter sw = t.CreateText();StringBuilder sb = new StringBuilder ();JsonWriter writer = new JsonWriter (sb);writer.WriteObjectStart ();writer.WritePropertyName ("GameObjects");writer.WriteArrayStart ();foreach (UnityEditor.EditorBuildSettingsScene S in UnityEditor.EditorBuildSettings.scenes) {if (S.enabled){string name = S.path;EditorApplication.OpenScene(name);writer.WriteObjectStart();120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 writer.WritePropertyName("scenes");writer.WriteArrayStart ();writer.WriteObjectStart();writer.WritePropertyName("name");writer.Write(name);writer.WritePropertyName("gameObject");writer.WriteArrayStart ();foreach (GameObject obj in Object.FindObjectsOfType(typeof(GameObject))) {if (obj.transform.parent == null){writer.WriteObjectStart();writer.WritePropertyName("name");writer.Write();writer.WritePropertyName("position");writer.WriteArrayStart ();writer.WriteObjectStart();writer.WritePropertyName("x");writer.Write(obj.transform.position.x.ToString("F5"));writer.WritePropertyName("y");writer.Write(obj.transform.position.y.ToString("F5"));writer.WritePropertyName("z");writer.Write(obj.transform.position.z.ToString("F5"));writer.WriteObjectEnd();writer.WriteArrayEnd();writer.WritePropertyName("rotation");writer.WriteArrayStart ();writer.WriteObjectStart();writer.WritePropertyName("x");writer.Write(obj.transform.rotation.eulerAngles.x.ToString("F5"));writer.WritePropertyName("y");writer.Write(obj.transform.rotation.eulerAngles.y.ToString("F5"));writer.WritePropertyName("z");writer.Write(obj.transform.rotation.eulerAngles.z.ToString("F5"));writer.WriteObjectEnd();writer.WriteArrayEnd();writer.WritePropertyName("scale");writer.WriteArrayStart ();writer.WriteObjectStart();writer.WritePropertyName("x");164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 writer.Write(obj.transform.localScale.x.ToString("F5"));writer.WritePropertyName("y");writer.Write(obj.transform.localScale.y.ToString("F5"));writer.WritePropertyName("z");writer.Write(obj.transform.localScale.z.ToString("F5"));writer.WriteObjectEnd();writer.WriteArrayEnd();writer.WriteObjectEnd();}}writer.WriteArrayEnd();writer.WriteObjectEnd();writer.WriteArrayEnd();writer.WriteObjectEnd();}}writer.WriteArrayEnd();writer.WriteObjectEnd ();sw.WriteLine(sb.ToString());sw.Close();sw.Dispose();AssetDatabase.Refresh();}}此时我们就可以导出游戏场景的信息拉,注意游戏场景的需要现在Project Setting 中注册。
unity3d开发流程
unity3d开发流程Unity3D是一款广泛应用于游戏开发领域的跨平台游戏引擎。
它提供了一整套丰富的工具和功能,使开发者能够轻松创建高品质的游戏。
本文将以Unity3D开发流程为主题,介绍Unity3D的开发流程及相关内容。
一、项目准备阶段在开始使用Unity3D进行游戏开发之前,首先需要进行项目准备工作。
这包括确定游戏的概念和目标,制定开发计划,确定开发团队的人员构成等。
在这个阶段,还需要进行市场调研,了解目标受众和竞争对手的情况,为游戏的设计和开发提供参考。
二、游戏设计阶段在项目准备阶段完成后,接下来就是游戏设计阶段。
这个阶段的重点是确定游戏的核心玩法和游戏机制,设计游戏关卡和角色设定,制定游戏的故事情节和美术风格等。
在Unity3D中,可以使用内置的编辑器工具来创建游戏场景、调整摄像机视角、添加角色和物体等。
三、编程实现阶段游戏设计阶段完成后,接下来就是编程实现阶段。
在Unity3D中,可以使用C#或UnityScript等编程语言来编写游戏逻辑和功能。
开发者可以使用Unity3D提供的API来实现游戏中的各种功能,如角色控制、碰撞检测、动画效果等。
此外,Unity3D还支持插件的使用,开发者可以根据需要选择适合的插件来扩展游戏的功能。
四、美术制作阶段美术制作是游戏开发的重要环节之一。
在这个阶段,美术人员将根据游戏设计的要求来制作游戏的美术资源,包括角色模型、场景贴图、特效等。
Unity3D支持导入各种格式的美术资源,如3D模型、纹理、动画等。
开发者可以使用Unity3D的编辑器工具来对美术资源进行调整和优化,以提高游戏的表现效果。
五、测试和优化阶段在游戏开发过程中,测试和优化是不可忽视的环节。
在这个阶段,测试人员将对游戏进行全面的功能测试和性能测试,以确保游戏的稳定性和流畅性。
同时,开发者也需要对游戏进行性能优化,以提高游戏的帧率和加载速度。
Unity3D提供了一系列的工具和功能,如Profiler和Frame Debugger等,用于帮助开发者进行游戏的测试和优化工作。
unity3D导出模型设置
正文字体大小:大中小三维游戏引擎——Unity 角色模型优化要点续:换肤和导入(2011-02-21 01:44:22)转载▼标签:杂谈在上一篇Unity角色模型优化要点中,我主要是翻译了官方的原文,并加了少量自己的注释。
随后,经过这几天对角色换肤的测试,总结出一些建模和导入的要点,供大家参考。
所谓角色换肤也就是游戏中常见的角色自定制功能:玩家开始游戏前,一般需要创建一个游戏角色,选择性别、容貌、发型等等。
进入游戏后,就可以操作自己创建的角色做出行走、跳跃、攻击等动作。
很多游戏还允许玩家在中途变换发型甚至改变体态(例如升级后肌肉变得发达)等等。
下图就是WOW中角色选择的画面示例。
从游戏开发者的角度来看,由于可定制元素排列组合的结果非常多,不可能事先将所有结果都一个一个建出来并施加动作。
所以必须采取分部位建模,然后通过编程控制,在游戏中将用户选择的各部位重新组合成完整角色。
这个制作流程大致包括下列几步:这主要是一项策划工作。
负责策划的朋友应该事先规划好角色的哪些身体部位可以替换,并作出原图,方便美工和动作进行设计。
需要注意一点就是,对于可能经常离开人体的对象,例如盔甲、武器等,不应包括在内。
2.制作标准模型标准模型就是包含了角色网格、骨骼和动作的模型。
策划设计的角色可能有多种组合方案,但美工可以随便选取其中一种来做标准模型。
标准模型的用途有两个,首先是美工可以基于它制作余下的各种可选部位的模型;其次在游戏中程序也是通过替换标准模型中的某一部分来完成换装的。
在3DS Max中制作标准模型要点是:∙必须包含全套骨骼和一张带蒙皮的网格。
只有包含骨骼和蒙皮的模型导入Unity后才能作为后续编程的基础。
注意网格必须有且仅有一张,但其形状可以随便。
因为最后我们用到的只是骨骼,这张蒙皮的作用仅仅是导入时触发Unity的一个自动功能而已(美工不必关心,我就不展开说了)。
它最后会在换肤时被替换掉的。
∙必须为每块骨骼用英文取一个好识别的名字(拼音也行)。
Unity3D基本操作教程文档
Unity3D基本操作教程(15分钟)由unity3dcn 于星期四, 12/24/2009 - 00:20 发表用Unity3D创建简单漫游1. 建模中使用的图片、文件、文件夹等以及模型中物体、材质等的名称都不能使用中文或者特殊符号,可以使用英文字母、数字、下划线等2. 调整Max的单位为米3. 烘培光影的设置4. 模型的中的植物效果,第一种是单面片植物,需要设置其轴心为其物体的对称中心;第二种是十字交叉的植物效果;第三种则是到Uni ty3D编辑器中通过地形编辑器系统添加基本设置5. Fbx导出插件下载地址:/adsk/servlet/item?siteID=123112&id=107758556. 将Max文件中用到的图片都拷贝到Textures目录下,如7. 再打开Max文件,导出为FBX文件,使用默认设置,FBX文件也放置在和Max文件相同的目录下,如导出的时候,可以将模型简单的分类,如地面、植被、楼房等,也可以将模型分为几个区域,如小区1,小区2,学校等等分开导出8. 将包含Max文件、Fbx文件和Textures文件夹的文件夹拷贝到Unity3D项目的Assets 目录下,如下图中红圈在下一次用Unity3D编辑器开启本项目的时候,编辑器将自动导入/更新该文件夹中的信息,并生成Materials文件夹,如9. 启动Unity3D编辑器10. 选择刚才拷贝进来的文件中的Fbx文件,如修改其中的Meshes下的Scale Factor和Generate Colliders,如点击其他Fbx文件或者单击其他区域将弹出如下的对话框点击Apply即可,类似的方式设置其他Fbx文件注意,其中植物/植被类的Fbx文件不需要设置Generate Colliders项11. 将Fbx文件直接拖放到Hierarchy区域,如12. 点击Hierarchy区域中的对象,同时将鼠标移动三维显示区域,同时点击键f,则该对象自动适配显示到三维区域中心,如13. 将全部fbx添加完成后,提高场景亮度如下单击Am bient Light,如下调整为即可设置完成14. 设置第一人称浏览删除场景中Main Cam era将Project区域的Standard Assets下的Prefabs下的First Person Controller拖到Hierarchy 区域中点选First Person Controller,调整First Person Controller的位置到场景中合适的位置,并设置其高度为1.37到2.1左右设置First Person Controller的高度在场景中地面之上15. 点击运行,即可测试修改视角控制键为右键16. 打开Project区域中的StandardAssets下的Cam eraScripts下的MouseLook脚本,在在Quaternion originalRotation;void Update (){if (axes == RotationAxes.MouseXAndY){// Read the m ouse input axis中添加一行代码修改为Quaternion originalRotation;void Update (){if(Input.GetAxis ("Fire2")==0) return;if (axes == RotationAxes.MouseXAndY){// Read the m ouse input axis如何取消浏览窗口上的右键菜单只要设置Unity对象的参数即可禁止右键菜单的显示,如下:<object id="UnityObject" classid="clsid: 444785F1-DE89-4295 -863A-D 46C3A781394"width="600" height="450"codebase="/download_webplayer/UnityWebPlayer.cab# version=2,0,0,0"><param nam e="src" value="MyDataFile.uni ty3d" /><param nam e="disableContex tMenu" value="true" /><em bed id="UnityEm bed" src="MyDataFile.uni ty3d" width="600" height="450"type="application/vnd.unity"pluginspage="/unity-web-player-2.x"disableContextMenu="true" /></object>植物效果设置17. 对于单面片的植物效果,需要设定其材质为Transparent/VertexLit类型,并为其添加公告板脚本设定前设置材质类型为Transparent/VertexLit类型,如下给单面片植物添加公告板脚本的方法是先选择该植物,然后点击菜单com ponent下的scripts下的cam era Facing Billboard即可,如下设置材质类型和添加公告板脚本后,如下如果没有该脚本组件,可以打开脚本编辑器,拷贝如下代码到脚本中,保存到Assets\Scripts下,命名为Cam eraFacingBillboard.cs即可using UnityEngine;using System.Collections;public class Cam eraFacingBillboard : MonoBehaviour{public Cam era cam eraToLookAt;void Start(){cam eraToLookAt = Cam era.m ain;}void Update(){Vector3 v = cam eraToLookAt.transform.position - transform.position;v.x = v.z = 0.0f;transform.LookAt(cam eraToLookAt.transform.position - v);}}18. 对于十字交叉的植物,需要将其材质设定为Nature/Vegetation Two Pass unlit类型设置前的效果设置后的效果水面效果的设置19. 创建一个网格面片20. 给该水面面片设置水材质和水脚本,如即可烘培光影贴图的处理21. Unity3D光影烘培的要求U3D的光影贴图使用的是3Dm ax中的标准材质的自发光贴图通道来存储光影贴图相关参数,如22. 给每个物体都附上贴图,如果是纯色物体,也付给纯色贴图23. 打光后,选择要烘培的物体设置输出路径添加烘培输出的贴图类型添加“LightingMap”类型设置烘培贴图大小和目标贴图位置为“自发光”设置烘培材质,选择“输出到源”点击“渲染”即可24. 标准材质贴图的烘培光影处理a) 物体据有标准材质b) 烘培渲染后,物体具有两个贴图c) 导出Fbx即可25. 多重子材质贴图的烘培光影处理a) 物体据有多重子材质贴图b) 渲染烘培后每个子材质都据有两个贴图c) 选择该物体,执行“多维材质2标准材质.m s”脚本,将该多维材质物体按其材质数量分解为标准材质的多个物体,新物体的名字以“原多维材质物体名字~其材质名称”命名,如点击“开始转换”,则将该物体从多维材质物体按期子材质分解为多个具有标准材质的物体d) 将全部的具有多维材质类型的物体分解完成后,即可导出26. 多个物体使用同一贴图的烘培光影处理因为我们在导入fbx文件到Unity3D编辑器中的时候,使用的都是按贴图来生成材质文件,所以多个物体使用同一贴图时会发生错误,修改其中任何一个的材质设置时,其他的使用该贴图的物体都会受到影响,解决的方法便是在Unity3D编辑器中生成一个具有该贴图的新材质,然后重新付给当前物体。
Unity3D 美术资源规范
Unity3D 美术资源规范一.单位,比例统一在建模型前先设置好单位,在同一场景中会用到的模型的单位设置必须一样,模型与模型之间的比例要正确,和程序的导入单位一致,即便到程序需要缩放也可以统一调整缩放比例。
统一单位为米。
二.模型规范⒈所有角色模型最好站立在原点。
没有特定要求下,必须以物体对象中心为轴心。
⒉面数的控制。
移动设备每个网格模型控制在300-1500个多边形将会达到比较好的效果。
而对于桌面平台,理论范围1500-4000。
如果游戏中任意时刻内屏幕上出现了大量的角色,那么就应该降低每个角色的面数。
比如,半条命2对于每个角色使用2500-5000个三角面。
正常单个物体控制在1000个面以下,整个屏幕应控制在7500个面以下。
所有物体不超过20000个三角面。
⒊整理模型文件,仔细检查模型文件,尽量做到最大优化,看不到的地方不需要的面要删除,合并断开的顶点,移除孤立的顶点,注意模型的命名规范。
模型给绑定之前必须做一次重置变换。
⒋可以复制的物体尽量复制。
如果一个1000面的物体,烘焙好之后复制出去100个,那么他所消耗的资源基本和一个物体消耗的资源一样多。
三.材质贴图规范⒈我们目前使用的Unity3D软件作为仿真开发平台,该软件对模型的材质有一些特殊的要求,在我们使用的3dsMax中不是所有材质都被Unity3D软件所支持,只有standard(标准材质)和Multi/Sub-Objiect(多维/子物体材质)被Unity3D软件所支持。
注:Multi/Sub-Objiect(多维/子物体材质)要注意里面的子材质必须为standard(标准材质)才能被支持。
⒉Unity3D目前只支持Bitmap贴图类型,其它所有贴图类型均不支持。
只支持DiffuseColor(漫反射)同self-Illumination(自发光,用来导出lightmap)贴图通道。
Self-Illumination(不透明)贴图通道在烘焙lightmap后,需要将此贴图通道channel 设置为烘焙后的新channel,同时将生成的lightmap指向到self-Illumination。
unity3d数字模型制作规范
数字模型制作规范本文提到的所有数字模型制作,全部是用3D MAX建立模型,即使是不同的驱动引擎,对模型的要求基本是相同的。
当一个VR模型制作完成时,它所包含的基本内容包括场景尺寸、单位,模型归类塌陷、命名、节点编辑,纹理、坐标、纹理尺寸、纹理格式、材质球等必须是符合制作规范的。
一个归类清晰、面数节省、制作规范的模型文件对于程序控制管理是十分必要的。
首先对制作流程作简单介绍:素材采集-模型制作-贴图制作-场景塌陷、命名、展UV坐标-灯光渲染测试-场景烘培-场景调整导出第一章模型制作规范1 在模型分工之前,必须确定模型定位标准。
一般这个标准会是一个CAD底图。
制作人员必须依照这个带有CAD底图的文件确定自己分工区域的模型位置,并且不得对这个标准文件进行任何修改。
导入到MAX里的CAD底图最好在(0,0,0)位置,以便制作人员的初始模型在零点附近。
2 在没有特殊要求的情况下,单位为米(Meters),如图所示。
3 删除场景中多余的面,在建立模型时,看不见的地方不用建模,对于看不见的面也可以删除,主要是为了提高贴图的利用率,降低整个场景的面数,以提高交互场景的运行速度。
如Box底面、贴着墙壁物体的背面等。
4 保持模型面与面之间的距离推荐最小间距为当前场景最大尺度的二千分之一。
例如:在制作室内场景时,物体的面与面之间距离不要小于2mm;在制作场景长(或宽)为1km的室外场景时,物体的面与面之间距离不要小于20cm。
如果物体的面与面之间贴得太近,会出现两个面交替出现的闪烁现象。
模型与模型之间不允许出现共面、漏面和反面,看不见的面要删掉。
在建模初期一定要注意检查共面、漏面和反面的情况;5 可以复制的物体尽量复制。
如果一个1000个面的物体,烘焙好之后复制出去100个,那么他所消耗的资源,基本上和一个物体所消耗的资源一样多。
6 建模时最好采用Editable Poly面片建模,这种建模方式在最后烘焙时不会出现三角面现象,如果采用Editable Mesh 在最终烘焙时可能会出现三角面的情况。
unity场景制作流程
unity场景制作流程
unity场景制作流程
Unity场景制作流程如下:
1. 策划:确定游戏场景的类型、场景元素和交互方式。
2. 美术:根据策划要求进行场景模型的制作和贴图,包括地形、建筑、道路、植被等。
3. 编辑:使用Unity场景编辑器建立场景,包括将模型导入场景中,设置摄像机、灯光、风等。
4. 脚本:编写游戏逻辑代码,控制角色移动、敌人AI、交互等。
5. 调试:进行场景测试,检查脚本和场景是否正常运行,修复错误。
6. 优化:对场景进行优化,包括合并物体、设置LOD、使用贴图压缩等,以提高游戏性能。
7. 发布:制作游戏包,发布到相关平台。
以上是Unity场景制作的基本流程,其中具体细节和步骤可能会略有变化,需要根据实际情况做出调整。
3DMAX技术动画渲染与导出的步骤
3DMAX技术动画渲染与导出的步骤3DMAX技术动画渲染与导出的步骤在数字媒体设计行业中,使用3D建模和渲染软件是非常常见的。
3DMAX是一款功能强大的三维建模和渲染软件,可以用于创建逼真的动画效果。
在设计过程中,正确的动画渲染和导出步骤是确保最终作品质量的关键。
本文将介绍3DMAX技术动画渲染与导出的步骤,以帮助读者在使用3DMAX软件时达到良好的效果。
1. 设置场景与动画在开始渲染与导出之前,首先要确保场景和动画设置正确。
打开3DMAX软件后,在工作区中将所有需要渲染和导出的对象正确放置。
确保场景的摄像机设置正确,动画的效果符合预期。
这是为了确保渲染和导出的内容是准确的。
2. 校正材质和纹理在渲染和导出之前,应该校正场景中的材质和纹理。
在3DMAX中,可以为每个对象选择适当的材质,并调整其纹理的属性和贴图。
确保材质和纹理的比例和颜色等参数设置正确,并调整光照效果以获得更好的视觉效果。
3. 设置渲染参数在进行渲染之前,需要设置渲染参数。
在3DMAX中,打开渲染设置对话框,可以调整渲染的分辨率、帧率和渲染引擎等参数。
选择适当的渲染引擎,如V-Ray或Arnold,以获得更高质量的渲染效果。
确保渲染参数符合项目需求,可以根据具体要求进行调整。
4. 调整光照效果光照是影响渲染效果的重要因素之一。
在3DMAX中,可以通过调整光源位置、类型和颜色等参数来控制光照效果。
调整光照效果可以改变场景的氛围和整体画面的明暗程度。
根据设计的需要,可以选择合适的光照类型和光照效果,以增强渲染效果。
5. 开始渲染准备工作完成后,可以开始进行渲染。
在3DMAX中,选择渲染命令后,软件将开始处理场景和动画,并生成渲染序列。
渲染的时间长度取决于场景的复杂性和渲染参数的设置。
在渲染过程中,可以随时中断渲染或进行渲染设置的调整,以满足需求。
6. 导出动画渲染完成后,可以选择导出动画。
在3DMAX中,可以将渲染序列导出为各种视频格式,如AVI、MOV或MP4。
Unity3D美工设计需要了解的知识
Unity3D美⼯设计需要了解的知识Unity3D美⼯设计需要了解的知识 Unity3D和美⼯相关的部分主要是五个部分:场景物品⼈物模型,动作动画,地型系统,光照,动态渲染,粒⼦效果。
其中,光照、地型系统、粒⼦效果需要在Unity3D⾥完成,模型和动画全⽤3dmax和maya制作后导⼊。
动态渲染美⼯做不了,必须由程序员完成。
那么哪些是Unity3D美⼯设计需要了解的知识呢?请看下⽂。
1.引擎没有说具体的⾯数限制,按机器性能⽽定。
2.导⼊图形或者MESH的⽅法⽆⾮两种,⼀种是直接拷贝到⽂件⽬录下的Assets⽂件夹下⾯,Unity3d引擎会⾃动找到添加的⽂件,并且能在PROJECT⾯板中找到它。
另⼀种是我们在PROJECT⾯板中⽤右键菜单,导⼊素材。
当然,我是⽤MAYA导⼊的,U3D引擎对于MAYA的⽀持还是不错的,但是也需要注意,不要⽤中⽂的⽬录结构,最好直接从MAYA的⼯程⽂件夹中导⼊,最好在导⼊MESH前先吧贴图⽂件放到相应的⽂件夹,或者相关⽂件夹的⼦⽂件夹。
在我们导⼊场景⽂件的时候,需要在导⼊设置中勾选创建碰撞,这样导⼊的场景我们就可以踩在上⾯了。
(这跟我们添加碰撞组件是有些不同) 3. Unity3d引擎⽀持⼤多数常⽤的贴图,⽐如漫反射贴图,⾼光贴图,法线贴图。
如此⼀来,它就成了⼀个名副其实的次时代引擎了。
当然与UNREAL引擎的强⼤材质编辑器不同,U3D引擎主要是编辑材质的⽅式是使⽤⼀种专门的语⾔,类似于CgFX和Direct3D的语法。
当然如果不是专门的图形程序员,我们只要掌握相关的SHADER的使⽤⽅法就可以了。
在我们安装完U3D引擎后,系统⾃带的SHADER⾜够我们⽇常⼤多数情况下使⽤了。
如果我们还有特殊的要求,可以去官⽅的⽹站上下载相关的程序,然后把代码保存为 .shader 的⽂件,放到相应的⽬录底下,然后我们就有了这种SHADER。
掌握并且理解了上⾯我说的三点,你就可以作为⼀个U3D引擎的美⼯开始⼯作了。
3d制作流程
3d制作流程3D制作流程。
在进行3D制作之前,我们需要明确一些基本概念和流程。
首先,3D制作是指通过计算机软件来创建三维立体图形的过程,这些图形可以用于影视特效、动画制作、游戏开发等领域。
下面,我们将详细介绍3D制作的流程,希望能对初学者有所帮助。
第一步,概念设计。
在进行3D制作之前,首先需要有一个清晰的概念设计。
这包括确定所要制作的物体、场景或角色,以及其外形、材质、动作等方面的设定。
概念设计的重要性不言而喻,它直接影响后续制作的效果和质量。
第二步,建模。
建模是3D制作的核心环节之一,它指的是根据概念设计,利用3D建模软件创建物体的三维模型。
建模可以分为多种方式,如多边形建模、曲面建模、体素建模等,每种方式都有其适用的场景和特点。
在建模过程中,需要注意模型的细节和比例,以及模型的拓扑结构和面数控制。
第三步,材质贴图。
材质贴图是为模型赋予外观和纹理的过程,它可以使模型看起来更加真实和生动。
在进行材质贴图时,需要考虑光照、反射、折射等因素,以及模型的表面纹理和颜色。
同时,还需要注意不同材质之间的过渡和融合,以达到自然的效果。
第四步,动画制作。
如果需要为模型添加动作,就需要进行动画制作。
动画制作是通过关键帧、骨骼、绑定等技术来赋予模型运动和表情。
在进行动画制作时,需要考虑模型的骨骼结构、关节限制、运动轨迹等方面的问题,以确保动画的流畅和逼真。
第五步,渲染和后期。
渲染是将建模、材质和动画等元素合成为最终图像的过程。
在进行渲染时,需要选择合适的渲染器和渲染参数,以获得高质量的渲染效果。
同时,还需要进行后期处理,包括色彩校正、特效添加、镜头调整等,以提升图像的质量和真实感。
第六步,输出和发布。
最后一步是将制作好的3D作品输出为合适的格式,并进行发布。
输出格式的选择需根据作品的用途和要求来确定,如影视特效、游戏开发、虚拟现实等。
同时,还需要考虑版权、保护和宣传等方面的问题,以确保作品的合法性和推广效果。
总结。
3d效果图制作流程
3d效果图制作流程3D效果图制作流程。
在进行3D效果图制作之前,首先需要明确制作流程,只有明确了流程,才能更加高效地完成制作工作。
下面将为大家介绍一下3D 效果图的制作流程。
第一步,收集资料。
在进行3D效果图制作之前,首先需要收集相关资料。
这些资料包括建筑设计图纸、建筑结构图、建筑材料样本等。
收集到的资料将为后续的制作提供重要参考,有助于提高制作效率和制作质量。
第二步,建模。
建模是3D效果图制作的第一步,它是整个制作过程中最为关键的一环。
在建模过程中,需要根据收集到的资料进行建筑物的三维模型绘制。
建模的精细程度将直接影响到最终效果图的质量,因此需要花费较多的时间和精力来完成建模工作。
第三步,材质贴图。
建模完成后,接下来需要进行材质贴图工作。
在这一步中,需要根据实际建筑材料的特性,为建筑物的模型添加逼真的材质贴图。
这一步需要对建筑材料有较为深入的了解,以便能够准确地模拟出材料的外观和质感。
第四步,灯光渲染。
灯光渲染是3D效果图制作中非常重要的一环,它直接影响到最终效果图的真实感和艺术感。
在这一步中,需要根据建筑物的实际情况设置合适的灯光效果,以使建筑物在效果图中呈现出最佳的视觉效果。
第五步,渲染输出。
渲染输出是3D效果图制作的最后一步,也是最为关键的一步。
在这一步中,需要选择合适的渲染参数,对整个场景进行渲染,最终输出高质量的效果图。
在这一步中,需要对渲染参数有较为深入的了解,以便能够得到满意的渲染效果。
以上就是3D效果图制作的整个流程,每一步都至关重要,任何一环出现问题都有可能影响到最终效果图的质量。
因此,在进行3D 效果图制作时,需要认真对待每一个步骤,确保每一个细节都能够达到要求,从而制作出高质量的3D效果图。
希望以上内容能够对大家有所帮助,谢谢阅读!。
Unity模型制作规范及解决方法
《3D-Unity模型物体制作规范》01.管理场景。
首先看看场景有没有虚拟体,辅助对象,空组,空物体,全部都要删除。
以免场景过大,或是影响到后期物体的动画调整。
02.优化模型。
工业模型尽量不要出现,能用简模就用简模.优化模型的目的就是进unity运行的更快。
首先你要保证模型能用。
优化之前先与方案人员沟通,哪些物体可以删除,哪些物体被遮掩看不到,尽可能的节省面数。
只是单纯的去优化模型删边删面,面数少不了多少。
03. 检测模型。
首先导出你所优化的所有模型,看看是否能全部导出,第二步在unity里旋转看看模型是否有破面。
这一步很关键,要确保模型能导出,物体没有破面。
04. 材质。
unity里的物体材质,需要max提供材质球.标准做法就是3d人员在max里将物体材质琢个上一遍,只需要上一个基本色,即物体的漫反射。
物体表面有材质球命名与物体命名统一,全部用英文.举例,物体a,材质名称就是a.如果用中文,unity都是乱码.物体的贴图也要用英文,这样导fbx时,勾选贴图,材质贴图在unity里就能直接显示,省去unity人员在琢个加载贴图.所有物体包括拆装工具都要加uvw贴图,本身有纹理贴图或是已经展过uv的物体就不要再加了。
不展uv,影响到unity里物体材质效果。
05.动画调整。
注意的就是工具动画要放到场景里去调试,以免跟附近其它模型有穿插.max工具动画是不需要调整的,后期unity人员会用程序代码控制.3d人员的工作就是将物体轴心调到跟工具轴心一致。
动画帧数要用text文档记录好.举例,螺栓01拆1-10, 螺栓01装11-20,之后做好发给unity人员好切动画.06.组的应用,父子关系的应用。
理解清楚这些概念,才能更好的去做动画,服务项目。
注意事项及技巧01.由于Unity看不到单面模型的反面,故导出请仔细检查单面物体。
如玻璃。
02.材质、贴图、模型名称中不能出现中文。
进unity,不要出现中文名,以免出现乱码,报错。
3D图像制作流程概述
3D图像制作流程概述一、什么是3D图像3D是three-dimensional的缩写,就是三维图形,在图形内容中除了有水平的X轴向与垂直的Y轴向外还有进深的Z轴,所以才叫三维。
与二维的区别是,三维图形可以包含360度的信息,能从各个角度去表现。
理论上看三维图形的立体感、光景效果要比二维平面图形要好的多,因为它的立体、光线、阴影都是真实存在的。
二、3D图像运用范围及功能作用3D图像的运用非常的广泛,尤其现在动画和游戏方面更是成为现在的主流,与唯美二维动画不相上下。
产品展示、艺术品展示,到复杂的人物模型;三维动画从静态、单个的模型展示,到动态、复杂的场景,如房产酒店三维动画、三维漫游、三维虚拟城市,角色动画等领域都广泛应用。
三、本文术语解释1、UV。
是指U、V纹理贴图坐标的简称(它和空间模型的X, Y, Z 轴是类似的),它定义了图片上每个点的位置的信息。
2、UVW贴图,是3D MAX里的专业术语,UVW通常是指物体的贴图坐标,3D MAX用UVW这三个字母来表示xyz轴。
U表示x,V表示y,W表示z。
UVW贴图一般用在想把贴图位置详细设置的时候使用。
3、UVW展开。
为了让贴图准确的贴在复杂的模型上,只用UVW mapping(uv贴图)是不能使贴图能够正确的贴在模型上的,这时候就用到unwarp UVW这一项,unwarp UVW可以把模型平摊展开或者分块,可以配合棋盘格贴图赋予模型进行调整,直到达到展开效果。
4、POLY。
是3D MAX里的建模方法,是多边形建模。
四、3D图像制作流程3D图像的制作流程大致可以分为建模、UV贴图与UV展开、画贴图、建骨骼绑骨骼、调动作、建场景、打灯光、图像合成8个步骤(建骨骼绑骨骼和调动作为动画制作部分,静态图像无这两项步骤),其中建模为制作的重点,分UV和画贴图为制作的关键,建骨骼绑骨骼和调动作是动画部分的关键,打灯光是现场氛围是否到位的前提,渲染决定了3D图像或动画成片的最终效果。
Unity3D模型制作标准
Unity3D模型制作规范Posted on 2013年03月21日 by U3d / Unity3D 基础教程/被围观 519 次Unity3D模型制作规范一.单位,比例统一在建模型前先设置好单位,在同一场景中会用到的模型的单位设置必须一样,模型与模型之间的比例要正确,和程序的导入单位一致,即便到程序需要缩放也可以统一调整缩放比例。
统一单位为米。
二.模型规范⒈所有角色模型最好站立在原点。
没有特定要求下,必须以物体对象中心为轴心。
⒉面数的控制。
移动设备每个网格模型控制在300-1500个多边形将会达到比较好的效果。
而对于桌面平台,理论范围1500-4000。
如果游戏中任意时刻内屏幕上出现了大量的角色,那么就应该降低每个角色的面数。
比如,半条命2对于每个角色使用2500-5000个三角面。
正常单个物体控制在1000个面以下,整个屏幕应控制在7500个面以下。
所有物体不超过20000个三角面。
⒊整理模型文件,仔细检查模型文件,尽量做到最大优化,看不到的地方不需要的面要删除,合并断开的顶点,移除孤立的顶点,注意模型的命名规范。
模型给绑定之前必须做一次重置变换。
⒋可以复制的物体尽量复制。
如果一个1000面的物体,烘焙好之后复制出去100个,那么他所消耗的资源基本和一个物体消耗的资源一样多。
三.材质贴图规范⒈我们目前使用的Unity3D软件作为仿真开发平台,该软件对模型的材质有一些特殊的要求,在我们使用的3dsMax中不是所有材质都被Unity3D软件所支持,只有standard(标准材质)和Multi/Sub-Objiect(多维/子物体材质)被Unity3D软件所支持。
注:Multi/Sub-Objiect(多维/子物体材质)要注意里面的子材质必须为standard(标准材质)才能被支持。
⒉Unity3D目前只支持Bitmap贴图类型,其它所有贴图类型均不支持。
只支持DiffuseColor(漫反射)同self-Illumination(自发光,用来导出lightmap)贴图通道。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、部分模型坐标及缩放请按照制作规完成,不然需要在Unity里面操作的时候,通过程序找不到。
2、场景中模型存在漏面
4、模型导入时未成组,查找不方便
如下即可,但不要出现中文。
以上,希望尽快改进。
2017-02-22
附件一:
Unity3d美术制作规及导出流程
目录
序言 (7)
第一章模型制作规 (7)
1、单位比例 (7)
2、建模规 (8)
2.1多余面数 (8)
2.2避免闪面 (8)
2.3复制模型 (8)
2.4 Poly建模 (8)
2.5模型塌陷 (8)
2.6命名规 (9)
2.7树木模型 (9)
2.8模型级别 (9)
2.8.1 角色质心点 (9)
2.8.2主角面数 (9)
2.8.3小怪面数 (10)
2.8.4 武器面数 (10)
2.8.5 场景面数 (10)
2.9 镜像物体 (10)
2.10缩放物体 (10)
第二章材质贴图规 (10)
1、材质和贴图类型 (10)
2、贴图通道及贴图类型 (11)
3、贴图的文件格式和尺寸 (11)
4、贴图和材质应用规则 (11)
第三章模型导出 (11)
序言
本文提到的所有数字模型制作,全部是用3D MAX建立模型,即使是不同的建模软件,对模型的要求基本是相同的。
当一个手游模型制作完成时,它所包含的基本容包括场景尺寸、单位,模型归类塌陷、命名、节点编辑,纹理、坐标、纹理尺寸、纹理格式、材质球等必须是符合制作规的。
一个归类清晰、面数节省、制作规的模型文件对于程序控制管理是十分必要的。
第一章模型制作规
1、单位比例
在没有特殊要求的情况下,单位为米(Meters),如图所示。
2、建模规
2.1多余面数
删除场景中多余的面,在建立模型时,看不见的地方不用建模,对于看不见的面也可以删除,主要是为了提高贴图的利用率,降低整个场景的面数,以提高交互场景的运行速度。
如建筑物底面、贴着墙壁物体的背面等。
2.2避免闪面
保持模型面与面之间的距离推荐最小间距为当前场景最大尺度的二千分之一。
例如:在制作室场景时,物体的面与面之间距离不要小于2mm;在制作场景长(或宽)为1km的室外场景时,物体的面与面之间距离不要小于20cm。
如果物体的面与面之间贴得太近,会出现两个面交替出现的闪烁现象。
模型与模型之间不允许出现共面、漏面和反面,看不见的面要删掉。
在建模初期一定要注意检查共面、漏面和反面的情况;
2.3复制模型
可以复制的物体尽量复制。
如果一个1000个面的物体,烘焙好之后复制出去100个,那么他所消耗的资源,基本上和一个物体所消耗的资源一样多。
2.4 Poly建模
建模时最好采用Editable Poly建模,这种建模方式在最后烘焙时不会出现三角面现象,如果采用Editable Mesh 在最终烘焙时可能会出现三角面的情况。
2.5模型塌陷
当一栋建筑模型经过建模、贴纹理之后,然后就是将模型塌陷,这一步工作也是为了导出到unity引擎做准备。
所以在塌陷的时候要注意一些问题:
(1)按照“筑一物体”的原则塌陷,体量特别大或连体建筑可分塌为2-3个物体,但导出前要按建筑再塌成一个物体。
(2)用Box反塌物体,转成Poly模式,这时需检查贴图有无错乱;
(3)塌陷物体,按建筑物或者地块来塌陷,不要跨区域塌陷;
(4)按项目名称规的要求进行严格的标准的命名;
(5)无特殊要求前提下,所有物体的质心要归于中心,检查物体位置无误后锁定物体;备注:所有物体不准出现超过20000三角面的情况,否则导出时出错。
2.6命名规
模型不能使用中文命名(包括中文标点符号),必须使用英文命名,命名中不能包含“.”字符。
地形、建筑、角色模型不允许出现重名,必须按规命名。
所有美术资源后缀统一为小写字母。
材质名称命名:“mat”开头。
纹理贴图命名:“tex”开头。
模型命名规表:
2.7树木模型
用十字交叉树或简模树。
在种植树木的时候,要考虑到与周围建筑的关系,不能乱种树,要根据现状放置不同的树种、位置;重点建筑地块需种简模树,并在原地与之对应的种上十字片树(替换用);导出时模型树和与之对应的十字片树为单棵的,其它十字片树可塌一起。
注意:总体原则是控制面数,有的项目也会在unity3d中的地形上刷树木,根据不同项目会有对用制作规。
2.8模型级别
模型级别也就是模型的精细程度,有时我们在建模的时候要根据建筑所处的具体位置,重要程度对该建筑进行判断是建成何种精度的模型。
可以将建筑分为三个等级,如无特殊需求前提下,一般手游项目模型等级为一级,大型项目会考虑采用分级建模。
2.8.1 角色质心点
所有角色模型最好站立在原点。
没有特定要求下,必须以物体对象底部为质心点。
2.8.2主角面数
主角模型控制在900-1300个三角面(以最终导入unity3d中的三角面数量为准)。
贴图控制在1,最好256*256,最多512*512。
2.8.3小怪面数
小怪模型控制在600-900个三角面(以最终导入unity3d中的三角面数量为准)。
贴图控制在1,最大256*256。
2.8.4 武器面数
武器模型控制在115个三角面,187个顶点以。
贴图控制在1,最大256*256,最好128*128。
2.8.5 场景面数
场景(地形、建筑、其他装饰物)面数控制在10000面左右,贴图控制在最多2512*512。
2.9 镜像物体
用镜像复制的方法来创建新模型,需要加修改编辑器修正。
第一步:需要选中镜像后的物体,然后进入Utilities面板中单击Reset XForm,然后单击Reset Selected;
第二步:进入modfiy面板选取Normal命令,反转一下法线即可。
第三步:将模型转换为Editable Poly,不要带着修改器导出模型。
2.10缩放物体
如果在MAX中对模型进行过缩放,需要加修改编辑器修正。
第一步:需要选中缩放后的物体,然后进入Utilities面板中单击Reset XForm,然后单击Reset Selected;
第二步:将模型转换为Editable Poly,不要带着修改器导出模型。
第二章材质贴图规
1、材质和贴图类型
Unity3D该软件对模型的材质有一些特殊的要求,在我们使用的3dsMax中不是所有材质都被Unity3D软件所支持,只有下面几种材质是被Unity3D软件所支持。
Standard(标准材质)
默认的通用材质球。
Multi/Sub-Object(多维/子物体材质)
将多个材质组合为一种复合式材质,分别指定给一个物体的不同次物体选择级别。
要注意的是,在模型制作中,Multi/Sub-Object材质中的子材质一定要是Standard标准材质。
否则不被unity3d支持。
2、贴图通道及贴图类型
Unity3D目前只支持Bitmap贴图类型,其它所有贴图类型均不支持。
只支持Diffuse Color(漫反射)同self-Illumination(自发光,用来导出lightmap)贴图通道。
Self-Illumination(不透明)贴图通道在烘焙lightmap后,需要将此贴图通道额channel 设置为烘焙后的新channel,同时将生成的lightmap指向到self-Illumination。
3、贴图的文件格式和尺寸
模型的透明贴图为PNG,Unity3d不支持DDS格式贴图。
模型贴图文件尺寸必须是2的N次方(8、16、32、64、128、256、512),最大贴图尺寸不能超过(1024×1024)。
在烘培时将纹理贴图存为TGA 格式。
UI贴图尺寸可以不遵循2的N次方设计。
4、贴图和材质应用规则
(1)贴图不能以中文命名,不能有重名;
(2)材质球命名与物体名称一致;
(3)材质球的父子层级的命名必须一致;
(4)同种贴图必须使一个材质球;
(5)除需要用双面材质表现的物体之外,其他物体不能使用双面材质;
(6)材质球的ID号和物体的ID号必须一致。
(7)若使用CompleteMap烘焙,烘焙完毕后会自动产生一个Shell材质,必须将Shell 材质变为Standard标准材质,并且通道要一致,否则不能正确导出贴图。
(8)带Alpha通道的贴图存储为tga或者png格式,在命名时必须加_al以区分。
第三章模型导出
1、合并顶点,清除场景,删除没有用的一切物件。
2、没特殊需求不要导出灯光、虚拟体、相机等元素。
3、按要求导出fbx(检查看是否要打组导出),导出fbx后,再重新导入max中查看一遍fbx 的动画是否正确。
4、按要求导出FBX,一般导出FBX使用默认选项,如无动画文件,不要导出动画。
视具体情况导出动作。