OBJ文件 -- 基本结构
OBJ文件不需要任何文件头(File Header),尽管经常使用几行文件信息的注释作为文件的开头。
OBJ文件由一行行文本组成,注释行以一个“井”号(#)为开头,空格和空行可以随意加到文件中以增加文件的可读性。
有字的行都由一两个标记字母也就是关键字(Keyword)开头,关键字可以说明这一行是什么样的数据。多行可以逻辑地连接在一起表示一行,方法是在每一行最后添加一个连接符(\)。 注意连接符(\)后面不能出现空格或tab格,否则将导致文件出错。 下列关键字可以在OBJ文件使用。
在这个列表中, 关键字根据数据类型排列,每个关键字有一段简短描述。
顶点数据(Vertex data):
v 几何体顶点 (Geometric vertices)
vt 贴图坐标点 (Texture vertices)
vn 顶点法线 (Vertex normals)
vp 参数空格顶点 (Parameter space vertices)
自由形态曲线(Free-form curve)/表面属性(surface attributes):
deg 度 (Degree)
bmat 基础矩阵 (Basis matrix)
step 步尺寸 (Step size)
cstype 曲线或表面类型 (Curve or surface type)
元素(Elements):
p 点 (Point)
l 线 (Line)
f 面 (Face)
curv 曲线 (Curve)
curv2 2D曲线 (2D curve)
surf 表面 (Surface)
自由形态曲线(Free-form curve)/表面主体陈述(surface body statements):
parm 参数值 (Parameter values )
trim 外部修剪循环 (Outer trimming loop)
hole 内部整修循环 (Inner trimming loop)
scrv 特殊曲线 (Special curve)
sp 特殊的点 (Special point)
end 结束陈述 (End statement)
自由形态表面之间的连接(Connectivity between free-form surfaces):
con 连接 (Connect) 成组(Grouping):
g 组名称 (Group name)
s 光滑组 (Smoothing group)
mg 合并组 (Merging group)
o 对象名称 (Object name)
显示(Display)/渲染属性(render attributes):
evel 导角插值 (Bevel interpolation)
c_interp 颜色插值 (Color interpolation)
d_interp 溶解插值 (Dissolve interpolation)
lod 细节层次 (Level of detail)
usemtl 材质名称 (Material name)
mtllib 材质库 (Material library)
shadow_obj 投射阴影 (Shadow casting)
trace_obj 光线跟踪 (Ray tracing)
ctech 曲线近似技术 (Curve approximation technique)
stech 表面近似技术 (Surface approximation technique)