在一周内用 C 语言制作一个 3D 建模器

主要观点:作者去年秋季参加了“Wheel Reinvention Jam”,用一周时间制作了 3D 模型器“ShapeUp”,介绍了其制作过程、使用的技术(如射线行进有符号距离场 SDFs)、编程语言 C 及相关库 raylib 的优缺点,还提到项目的主要部分及工作方式,最后展示了成果及相关讨论。
关键信息:

  • 参加“Wheel Reinvention Jam”,制作“ShapeUp”3D 模型器。
  • 用 C 语言编写,借助 raylib 创建 OpenGL 窗口。
  • 利用射线行进 SDFs 技术实现 3D 模型渲染。
  • 项目主要包括用户界面、GLSL 着色器生成等 4 部分。
  • 遇到 raylib 的一些问题,如设计选择不合理、参数验证缺失等。
  • 一周内完成项目,代码约 2300 行,可在浏览器尝试。
    重要细节:
  • “ShapeUp”界面可通过鼠标编辑形状,有多种控制元素。
  • 动态内存分配主要在保存、导出等 3 处使用 malloc。
  • UI 采用立即模式用户界面(IMGUI),用枚举跟踪焦点等。
  • 项目各部分单独不难,但需正确排序和避免分心。
  • 源代码在 github 上,可在不同平台运行且有文件操作。
阅读 17
0 条评论