obj是啥格式的文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了obj是啥格式的文件相关的知识,希望对你有一定的参考价值。

参考技术A

3D文件格式,常见的有几种 "*.3ds","*.max","*.lw","*.mb","*.dxf","*.obj"。那obj是什么格式的文件?一起来看看吧~

obj是什么格式的文件?

obj是一种3D格式的文件,可以直接用写字板打开进行查看和编辑修改。OBJ文件是Wavefront公司为它的一套基于工作站的3D建模和动画软件"Advanced Visualizer"开发的一种文件格式,这种格式同样也以通过Maya读写。

OBJ 格式支持多边形(Polygon),直线(Lines),表面(Surfaces),和自由形态曲线(Free-form Curves)。直线和多角形通过它们的点来描述,曲线和表面则根据于它们的控制点和依附于曲线类型的额外信息来定义。这些信息支持规则和不规则的曲线,包括那些基于贝塞尔(Bezier)曲线,B样条(B-spline),基数(Cardinal/Catmull-Rom样条),和泰勒方程(Taylor equations)的曲线。

OBJ文件特点:

(1)OBJ是一种3D模型文件,因此不包含动画、材质特性、贴图路径、动力学、粒子等信息。

(2)OBJ文件主要支持多边形(Polygons)模型。

虽然OBJ文件也支持曲线(Curves)、表面(Surfaces)、点组材质(Point Group Materials),但Maya导出的OBJ文件并不包括这些信息。

(3)OBJ文件支持三个点以上的面。

很多其它的模型文件格式只支持三个点的面,所以我们导入Maya的模型经常被三角化了,这对于我们对模型的再加工甚为不利。

(4)OBJ文件支持法线和贴图坐标。

在其它软件中调整好贴图后,贴图坐标信息可以存入OBJ文件中,这样文件导入Maya后只需指定一下贴图文件路径就行了,不需要再调整贴图坐标

本文以华为matebook 16为例适用于Windows 10系统

OBJ 文件不同的格式

【中文标题】OBJ 文件不同的格式【英文标题】:OBJ File Different Formats 【发布时间】:2016-05-25 13:33:12 【问题描述】:

我正在开发自己的 java 3D 游戏引擎,一切正常,但我总是出错。 我发现了错误,但我完全不知道如何解决这个问题。 我已经使用 Blender 来创建我的 OBJ 文件。

这是一个 obj 文件的示例。

v 0.500000 -0.500000 -0.500000
vt 0.748573 0.750412
vn -1.000000 -0.000000 -0.000000
f 5/1/1 4/3/1 8/4/1

这些是我在屏幕上绘制对象所需的最相关信息。

但是现在,当我创建我的 OBJ 文件时,我的脸看起来像这样:

f 2//1 3//2 4//3

我的顶点、纹理坐标和法线看起来非常相似,但我的解析器在读取面时出现问题。

我的 Parser 很复杂,我认为将它复制到这里没有帮助。 我只需要一种将文件从一种类型转换为另一种类型的方法。 Blender中是否有告诉它如何保存我的文件?

如果有人能帮我解决这个问题,我会非常高兴。

您好, 芬兰人

【问题讨论】:

【参考方案1】:

来自wikipedia下面元素-

使用顶点、纹理和法线索引列表定义面。

缺少的第二个元素是纹理索引,指向要使用的 vt 行。要在 obj 导出中获取此数据,您需要 unwrap the object 来创建 uv 并在导出时启用 include UV's

【讨论】:

以上是关于obj是啥格式的文件的主要内容,如果未能解决你的问题,请参考以下文章

obj是啥意思?

OBJ是啥意思?

“obj”是啥意思?

Wavefront .obj 文件的规格是啥?

有时候在提问里看到一个框框里边是OBJ,那是啥?

聊天时,对方发过的话末尾有obj