opengl - 简单的线框格式?

标签 opengl 3d file-format wireframe

我正在寻找一种用于线框模型的简单文件格式。我知道 VRML、u3D 等,但这些对于我的需求来说似乎是重量级的。我的标准是:

  • 必须有明确的规范。无论是开放的还是非常完善的/记录在案的。
  • 我只需要(想要)简单的模型——顶点和边。我不想处理人脸或物体。如果格式支持更多,只要我可以忽略它们就可以了。
  • 最终用户工具不是必需的,但会很棒。如果不是,它必须是人类可读的(并且对于简单模型是可编辑的)。
  • 能够注释或至少标记节点会很好(但不是必需的)。
  • 我使用的语言无关紧要,但可能的选择是 Java/C++ 和 OpenGL

  • 或者我只是更好地将顶点/边列表写入文本文件并完成它?

    最佳答案

    Wavefront OBJ 是一种非常简单的文本文件格式,用于存储 3d 模型,所有 3d 建模应用程序(例如,maya、3dsmax、lightwave)都支持它,因此您可以非常轻松地导出和导入模型。

    您可以在此处阅读更多信息和规范:

    http://www.fileformat.info/format/wavefrontobj/

    我建议不要制作自己的文件格式。 Wavefront OBJ 很简单,也很明确。

    这是 2x2 平面的示例。 v 用于顶点坐标, f 对于面的描述(哪些顶点是连接的):

    v -0.500000 -0.000000 0.500000
    v 0.000000 -0.000000 0.500000
    v 0.500000 -0.000000 0.500000
    v -0.500000 0.000000 0.000000
    v 0.000000 0.000000 0.000000
    v 0.500000 0.000000 0.000000
    v -0.500000 0.000000 -0.500000
    v 0.000000 0.000000 -0.500000
    v 0.500000 0.000000 -0.500000
    v -0.500000 -0.000000 0.500000
    v 0.000000 -0.000000 0.500000
    v 0.500000 -0.000000 0.500000
    v -0.500000 0.000000 0.000000
    v 0.000000 0.000000 0.000000
    v 0.500000 0.000000 0.000000
    v -0.500000 0.000000 -0.500000
    v 0.000000 0.000000 -0.500000
    v 0.500000 0.000000 -0.500000
    f 1/1 2/2 5/5 4/4
    f 2/2 3/3 6/6 5/5
    f 4/4 5/5 8/8 7/7
    f 5/5 6/6 9/9 8/8
    f 10/10 11/11 14/14 13/13
    f 11/11 12/12 15/15 14/14
    f 13/13 14/14 17/17 16/16
    f 14/14 15/15 18/18 17/17
    

    关于opengl - 简单的线框格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/193603/

    相关文章:

    opengl - 聚光灯阴影贴图的计算偏差

    graphics - 体积粒子

    c# - 如何计算 3D 折线拉伸(stretch)的顶点?

    go - 直接在 Go 中创建或使用 GPG 或 SSH key

    assembly - 如何将 libc6 中的函数导入 ELF 可执行文件?

    file-format - 解码水肺潜水电脑日志文件

    c++ - Qt 和 openGL 的 gluPerspective 等价物

    c++ - 如何在 opengl 中跨多个四边形平滑纹理

    math - 锥形内均匀采样(按体积)

    opengl - 什么是 channel 和多个着色器 channel 及其私有(private)变量