obj模型及纹理材质介绍
- 1.介绍
- 1.1 背景
- 1.2 带有纹理色彩的obj三维模型
- 2.带有纹理信息obj三维模型文件解析
- 2.1 三维模型数据
- 2.2 obj文件内容
- 2.3mtl文件内容
- 3 参考
1.介绍
1.1 背景
OBJ格式是一种简单且通用的三维模型文件格式,支持多边形网格和基本的几何体类型,如点、线和面等三维信息的存储,一般包括三个子文件,分别是**.obj、.mtl、.jpg**,含有三个文件的一般为带有纹理色彩的三维模型,
也存在只有obj文件的,这种文件一般是没有纹理色彩的三维模型;
1.2 带有纹理色彩的obj三维模型
带有纹理的OBJ文件通常包含以下特定文件及其具体作用:
- OBJ文件:这是主要的3D模型文件,包含了模型的顶点、面片、法向量和纹理等几何信息。OBJ文件使用标准的Polygon(多边形)储存格式,直接储存顶点坐标和法线等数据;
- MTL文件:材质库文件,与OBJ文件配合,把纹理颜色渲染到OBJ模型上。MTL文件描述的是物体的材质信息,如颜色、透明度等,这些信息主要是呈现模型的视觉效果的参数信息;
- 纹理文件:通常情况下,为了实现更真实的视觉效果,OBJ模型会关联一个或多个纹理文件。这些纹理文件存储了模型表面的颜色和其他视觉属性,如反射、透明度等。
2.带有纹理信息obj三维模型文件解析
2.1 三维模型数据
三维模型文件在资源绑定可下载,包含三维模型文件( obj),材质文件(mtl)、以及纹理文件(.jpg),有纹理和无纹理的三维模型效果示意如下(PS:以下效果均在meshlab中呈现):
2.2 obj文件内容
首先是obj整体信息:包含534165个顶点,1064007个面,然后mtllib指向材质文件1.mtl,接下来是三维模型的具体展开
v :几何体顶点 (Geometric vertices)
vt: 贴图坐标点 (Texture vertices)
vn: 顶点法线 (Vertex normals)
f :面 (Face)
详细介绍见3D文件格式之OBJ文件格式
# 534165 vertices, 1064007 faces
mtllib 1.mtl
v 5933.684 5014.03 24.7866
v 6783.865 4216.579 18.71951
v 6785.873 4216.577 17.27195
v 5934.572 5014.032 24.79637
v 6787.372 4216.6 8.83658
v 5935.165 5014.034 24.97735
v 6782.655 4216.573 25.12711
v 6782.359 4216.56 27.72783
v 5936.057 5014.036 25.42348
v 6787.987 4216.596 8.63874
v 5936.65 5014.037 25.59104
v 6792.734 4216.605 8.42905
v 6793.037 4216.612 8.351725
v 6793.328 4216.592 12.30764
v 5937.838 5014.04 25.73989
v 6794.222 4216.606 7.762855
v 6794.514 4216.58 15.05509
v 6796.001 4216.661 16.87754
v 6796.902 4216.596 20.05687
v 5939.32 5014.043 26.09047
v 6797.203 4216.625 26.43649
v 5939.915 5014.044 26.11746
v 6798.062 4216.66 26.58853
v 5940.51 5014.046 25.96651
v 6798.966 4216.625 23.67713
v 5941.1 5014.045 25.72362
v 5941.396 5014.046 25.64608
2.3mtl文件内容
#
# Wavefront MTL generated by www.daspatial.com for 3D Users
#
newmtl Tile_+007_+004_textured_geometry_0
Ka 0.2 0.2 0.2
Kd 1 1 1
Ks 0.2 0.2 0.2
map_Kd Tile_+007_+004_textured_geometry_0.jpg
3 参考
参考网站:
(1)https://cloud.tencent.com/developer/ask/sof/116081910
(2)https://www.jianshu.com/p/afa7ffa01191