跳到内容
折叠侧栏
Light Stream (CN)
搜索
登录
个人工具
登录
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
上传文件
特殊页面
页面信息
查看“在3ds Max中准备模型”的源代码
页面
讨论
不转换
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
阅读
查看源代码
查看历史
PDF 导出
更多
阅读
查看源代码
查看历史
PDF 导出
←
在3ds Max中准备模型
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[ru:Подготовка модели в 3ds max]] [[en:Preparing a Model in 3ds Max]] [[zh:在3ds Max中准备模型]] 本文说明模型应具备怎样的条件,才能以正确的尺寸、正确的朝上方向、且不产生数据损失地导入到 Light Stream 的场景中。这里讲的是 3ds Max,但对任何三维编辑器而言要求都是一样的:对程序来说重要的不是模型是用什么软件制作的,而是 <code>*.obj</code> 文件里记录了什么内容。导入过程本身在文章 [[导入OBJ模型]] 中有介绍。 为 Light Stream 准备模型,追求的不是「更好看」,而是「更清楚」。这里不会有精美的渲染效果:程序只用简单的填充色和单一贴图来显示物体。但吸附功能(Snap)是基于模型的顶点工作的,而模型中的物体会成为列表中的一行——你会在整个项目周期内不断翻阅这个列表,因此最重要的是正确的比例、干净的几何体和有意义的命名。 == 哪些内容会带入 Light Stream,哪些不会 == {| class="wikitable" ! 会带入 !! 不会带入 |- | * 几何体——三角形和四边形 * 物体的划分及其名称 * 法线(明暗与平滑) * 线条——会变成样条(spline) * 展开图(贴图坐标,UV) * 材质的基础颜色和基础贴图 | * 修改器、构建历史、骨骼与动画 * 图层、编组、「父—子」关系 * 单独存在的平滑组(smoothing group) * 除基础贴图外的所有贴图:凹凸、反射、透明、自发光 * 同一物体的第二个及后续材质 * 光源与摄像机——它们不会从 <code>*.obj</code> 中传入 * 顶点颜色 |} == 单位与比例 == 坐标是按文件中原样读取的:导入时没有缩放窗口,所以无法在「导入时」调整大小。 '''Light Stream 场景以毫米为单位:文件中的一个长度单位等于一毫米。'''一座高30米的立面在文件中应占30000个单位,而LED灯条的单个像素应为三十到四十个单位。检查比例最简单的方法是用程序本身创建的立方体:一个尺寸为 '''1000''' × '''1000''' × '''1000''' 的立方体就是一个一米见方的立方体——把它放在模型旁边比较即可。 在 3ds Max 中,最方便的工作方式是:将系统单位设置为毫米,并按实际尺寸建模——这样导出时就不需要重新换算,缩放系数始终保持为 '''1'''。如果场景是用其他单位搭建的,请在导出时设置缩放系数:从米换算——'''1000''',从厘米换算——'''10''',从英寸换算——'''25.4'''。 单位错误是导入后「什么都看不到」最常见的原因。以米为单位导出的模型会缩小一千倍,淹没在固定装置(fixture)之中;而不小心放大一千倍的模型则会跑到离坐标原点几公里之外,摄像机看到的只是一片空白。 == 朝向 == Light Stream 场景中朝上的是 '''Z''' 轴——与 3ds Max 中一致。因此在 OBJ 导出设置中,应取消勾选 '''Flip YZ-axis'''(Y轴朝上时的轴交换)复选框:如果勾选了它,模型在场景中会侧倒。如果模型确实侧倒了,切换这个复选框后重新导出即可。 导出前,最好重置变换,并在 3ds Max 中把模型放到它相对坐标原点应处的位置:物体彼此之间的相对位置以及文件中的坐标,在导入时会被完整保留。 == 物体划分与命名 == 文件会被解析为若干独立的物体,每一个都会在 '''3D Objects'''(3D对象)窗口中成为一行,各自拥有自己的可见性复选框、材质和锁定状态。规则很简单: * '''所有几何体都必须位于命名物体内。'''写在第一个物体之前的内容不会被导入。 * '''每个物体都必须有名称。'''未命名的物体或组会中断文件的读取:写在它下面的内容将无法进入场景,模型只会导入一半。 * '''名称必须使用拉丁字母,不能使用西里尔字母。'''物体名称和文件名中的俄文字母,在导入时会变成一串问号。 * 按含义划分:如「facade」(立面)、「roof」(屋顶)、「column_left」(左立柱)。由整块实体构成的模型在列表中只会是一行——之后就无法隐藏或单独改变其中一部分的颜色。 * 也不要走向另一个极端:几百个细小的物体会把 '''3D Objects''' 列表变成一条无穷无尽、难以查找的长条。 == 多边形 == Light Stream 只读取三角形和四边形。五个及以上顶点的面会被静默跳过——场景中相应位置会出现破洞。 因此在导出设置的 '''Faces'''(面)分组中,应选择 '''Triangles'''(三角形)或 '''Quads'''(四边形),而不是 '''Polygons'''(多边形)。导出前请塌陷修改器,并将物体转换为多边形网格:NURBS、面片(patch)、带布尔运算的实体以及其他未经三角化/四边化处理的物体,要么无法进入 OBJ 文件,要么进入后的样子会与视口中显示的不同。 对几何体还有一项要求:'''不要导出顶点颜色。'''如果导出插件在顶点坐标之外还附加了顶点颜色,这样的顶点将无法被正确读取,引用它的面也会基于错误的点构建——模型会以内外翻转的状态到达。 == 法线 == '''必须将法线写入文件'''——在导出设置中对应 '''Normals'''(法线)复选框。程序依据法线计算明暗:没有法线,物体就会以背景光颜色的单一平面填充来绘制,也就是看起来像一个没有立体感的扁平深色剪影。 平滑组(smoothing group)本身不会被读取,但也不需要单独设置:导出插件会把平滑处理的结果写入法线,物体进入场景后会保持与编辑器中相同的平滑或分面效果。 Light Stream 没有背面剔除(backface culling)——面从两侧都可见,因此内外翻转的部件不会消失。但是背向光源的法线会抵消明暗效果:这样的面会明显比周围的面暗。如果导入后模型上出现暗斑,请检查编辑器中法线的方向。 == 固定装置用的线条 == 写入文件的线条会作为现成的样条(spline)进入场景——可以直接沿着它们放置固定装置(Fixtures),无需手动描边。这是将灯条、灯串和轮廓灯的走线路径带入 Light Stream 最方便的方法:在 3ds Max 中按实际位置用样条画出它们,到程序里只需把它们与映射(mapping)关联即可。 要让线条顺利导入: * 打开线条导出——在 OBJ 导出设置中勾选 '''Shapes/Lines'''(形状/线条); * 将样条转换为具有所需点数的折线:曲线在文件中是按线段记录的,步长越小,进入场景的点就越多; * 把各段合并成一条完整的线。文件中的每条线都会成为一个独立的样条,因此由未连接的线段拼成的走线,导入后会变成一堆零散的短样条; * 如果样条没有出现,请关闭贴图坐标的导出:有些导出插件也会把贴图坐标写入线条数据中,而这样的线条会被 Light Stream 跳过。 不需要为固定装置单独建一个物体:3ds Max 中的光源根本不会保存到 OBJ 里。如果还想把已经摆放好的灯具带入程序,可以把模型导出为 <code>*.fbx</code>——从这种格式中,除了物体和样条之外,单个固定装置也能一并导入。 == 材质与贴图 == OBJ 会把材质存储在模型旁边的一个单独文件中,而贴图则是另外的图片文件,因此请启用材质导出,并始终把整个模型连同整个文件夹一起转移。 关于材质,需要提前了解: * '''一个物体——一种材质。'''多组件材质(Multi/Sub-Object)只有其中一部分会被带入。如果一个部件的不同部分需要不同颜色,请按材质把该部件拆分成多个物体。 * 材质中只会取用基础颜色和基础贴图。透明度、反射、凹凸、自发光以及任何程序化贴图都会被忽略——最好把它们「烘焙」进普通图片,或者干脆不要依赖它们。 * 贴图应为普通的 JPG、PNG、BMP 或 GIF 图片。请把它们放在模型旁边或子文件夹中:程序会按文件名在相邻文件夹中查找。文件名必须使用拉丁字母。 * 贴图需要展开图(UV unwrap)。没有展开图的物体,贴图会被拉伸成单一颜色。 * Light Stream 没有自发光材质。如果某个部件应该看起来是发光的——例如招牌、屏幕、光线——请在导入后,在 '''Properties'''(属性)窗口的 '''Material'''(材质)部分为它打开 '''Glow'''(发光)复选框。 颜色、贴图和发光效果也完全可以在程序里手动指定,因此对于辅助性几何体,完全可以不在编辑器里设置材质:没有材质的物体导入后会是白色的。 == 模型复杂度 == 模型会被整体带入项目文件,因此它的体积就是项目的体积、影响打开时间,并且每一帧预览都会占用显卡资源。而且在程序中网格占用的空间比在编辑器中更大:每个面都连同自己的顶点一起存储。 导出前合理的最低限度准备工作: * 删除物体上看不见的部分:内部结构、背面、隐藏的细节、辅助物体、重复的副本; * 去掉预览中看不到的细小部件:螺栓、型材、纹理细节、一毫米的倒角; * 减少圆角和管道的分段数——平滑度的代价很高; * 在需要的地方保留顶点:'''Snap to Vertices'''(吸附到顶点)依赖这些顶点工作,固定装置才能精确落在角点和棱边上。如果一排灯具需要沿平整的墙面排列,请在模型上沿其边缘添加棱边。 == 导出流程 == # 在 3ds Max 场景中只保留应带入 Light Stream 的内容:模型本身以及固定装置用的线条。 # 塌陷修改器,将物体转换为多边形网格,删除隐藏和多余的内容。 # 检查物体名称:必须存在名称,且必须是拉丁字母。 # 检查尺寸,并把模型换算到「一个单位——一米」的比例。 # 将选中的内容导出为 <code>*.obj</code>。 # 在导出设置中:'''Faces'''(面)——选择 '''Triangles'''(三角形)或 '''Quads'''(四边形);'''Normals'''(法线)——启用;'''Texture coordinates'''(贴图坐标)——如有贴图则启用;'''Shapes/Lines'''(形状/线条)——如场景中有固定装置用的线条则启用;'''Flip YZ-axis'''——取消勾选;材质导出——启用。 # 把模型、材质文件和贴图保存到同一个文件夹中,并从那里导入。 导出插件会把结果文件的第一行留给关于自身的服务性记录——如果你要手动编辑文件,请不要删除这一行:导入时不会读取第一行,你放在这个位置的任何内容都会随之丢失。 == 导入后应检查的内容 == # 在 '''3D View'''(3D视图)窗口中不选中任何物体的情况下按 '''Z''' 键——摄像机会把整个场景纳入视野。在旁边创建一个尺寸为 '''1000''' × '''1000''' × '''1000''' 的立方体并进行比较:如果立面旁边的一米立方体看起来确实是一米见方,说明比例正确。 # 查看 '''3D Objects'''(3D对象)列表:所有部件是否齐全,名称是否清晰可读,线条生成的样条是否已导入。 # 用摄像机环绕模型查看,寻找复杂面处可能出现的破洞,以及法线翻转处可能出现的暗斑。 # 如果你导出了材质,请确认物体不是白色或灰色的。 凡是对不上的地方,更可靠的做法是在 3ds Max 中修正后重新导入:几何体无法用 Light Stream 自身的工具来修正,而在编辑器中修正好的模型也可以在其他项目中复用。 == 还有哪些内容会有帮助 == * 导入过程本身是如何进行的,以及导入后如何处理场景中的模型——参见 [[导入OBJ模型]]。 * 已导入物体的名称、可见性、锁定和材质——参见 [[3D对象]]。 * 吸附到顶点以及 '''3D View'''(3D视图)窗口的其他按钮——参见 [[3D 工具栏]]。 * 如何沿已完成的模型放置固定装置——参见 [[添加3D样条]] 和 [[2D 与 3D 的关联]]。
返回
在3ds Max中准备模型
。