OBJ 文件是一种简单的文本格式,用于存储 3D 模型信息(顶点、法线、纹理坐标、面连接关系)。

顶点坐标 (Vertex Position)

  • 关键字: v
  • 格式: v x y z [w]
    • x, y, z: 三维坐标(浮点数)
    • w: 可选齐次坐标,默认值 1.0
  • 示例:
OBJ
v 0.5 1.0 -3.2    # 顶点 (x, y, z)
v 1.0 2.0 3.0 0.5 # 含 w 值
点击展开查看更多

点法线 (Vertex Normal)

  • 关键字: vn
  • 格式: vn i j k
    • i, j, k: 法线向量的三维分量(浮点数)(归一化)
  • 示例:
OBJ
vn 0.0 0.0 1.0    # Z 轴正向法线
vn -1.0 0.5 0.2   # 自定义法线方向
点击展开查看更多

纹理坐标 (Texture Coordinate)

  • 关键字: vt
  • 格式: vt u v [w]
    • u, v: 纹理 UV 坐标(浮点数,范围通常 [0,1]
    • w: 可选深度值,默认 0(罕见使用)
  • 示例:
OBJ
vt 0.5 1.0        # 标准 UV
vt 0.3 0.4 0.5    # 含 w 值
点击展开查看更多

面索引 (Face Indices)

  • 关键字: f
  • 格式: f v1[/vt1][/vn1] v2[/vt2][/vn2] v3[/vt3][/vn3] ...
    • 索引规则
      • 从 1 开始计数(非 0 开始)
      • 负值表示从末尾倒序索引(如 -1 = 最后一个元素)
      • 支持三角形(3 顶点)、四边形(4 顶点)或多边形
    • 三种格式
      • 仅顶点: f 1 2 3
      • 顶点+纹理: f 1/1 2/2 3/3
      • 顶点+纹理+法线: f 1/1/1 2/2/2 3/3/3
      • 顶点+法线(跳过纹理): f 1//1 2//2 3//3
  • 示例:
OBJ
f 1 2 3           # 三角形,仅顶点索引
f 1/1 2/2 3/3     # 顶点+纹理索引
f 1/1/1 2/2/2 3/3/3 # 顶点+纹理+法线索引
f 1//1 2//2 3//3  # 顶点+法线(无纹理)
点击展开查看更多
  • 可视化:
PLAINTEXT
f 0 1 2
f 1 2 3

0───────1
│     / │
│   /   │
│ /     │
2───────3
点击展开查看更多

版权声明

作者: Cheyne Xie

链接: https://chaim.eu.org/posts/fa8dd645/

许可证: CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Please attribute the source, use non-commercially, and maintain the same license.

开始搜索

输入关键词搜索文章内容

↑↓
ESC
⌘K 快捷键