支持的obj文件语法

OBJ文件格式支持多边形和自由形式的曲面对象。OBJ Reader / Writer目前支持多边形面(F)对象(L)线和(P)点。自由形式曲面通常不在.obj文件交换中使用,此时不受支持。为了完整性,此时支持的语法总结如下。

语法和描述

v

顶点位置。坐标是浮点数。

Vn

顶点正常。坐标是浮点数。

vt

纹理坐标。

是水平方向,

是垂直方向(在1D栅格/纹理的情况下可选,默认为0),

是3D栅格/纹理映射的情况下的深度(在2D栅格/纹理的情况下可选,默认为0)。

F / / / / / / ......

面部以顺时针顺序存储为一系列三个或更多个顶点。顶点由它们的位置,可选纹理坐标和可选的正常进行描述,以作为整数索引编码到相应的坐标列表中。面通常限于三角形或四边形表面。

L / / / ...

将线存储为一系列ORE更多顶点和可选的纹理坐标。纹理通常不会映射到线路,但可用于存储表格数据或索引。

P ...

积分作为一系列或多个顶点存储。

mtllib

材料(.mtl)文件引用定义遵循对象中使用的材料的材料文件。材料文件包含颜色照明组件和纹理文件名引用。

USEMTL

材料名称字符串标记,用于引用用于在OBJ文件中遵循的面的材料。

g ...

组名称字符串标记,用于关注的元素(面部)。

O

object name字符串标记,用于关注的元素(faces)。

s

平滑群编号为组元素,用于平滑的着色操作。

文件名扩展名

内容

.obj.

几何数据

单个.obj文件可以包含多种类型的几何。但是,在实践中,OBJ文件通常仅包含面部。

OBJ文件通常包含三维几何。2D数据将用一个坐标(通常是y或z)表示为0.0对于所有几何形状。