Mike C. Fletcher:OpenGL 拉伸(及细分)
我已发布了一个名为 opengl_extrusions 的新库,这是一个基于 Numpy 和 Cython 的库,用于执行 3D 拉伸(类似 GLE 库的功能)和三角剖分(GLU 库所实现的功能之一)。其动机在于 GLE 库受限于兼容性上下文(即“遗留 OpenGL"),因此无法在现代核心配置文件(core-profile)上下文中运行。该库的 API 与 GLE 截然不同,但能完成相同的工作,并配备了一套符合性测试套件,以验证对于给定输入,它能生成与参考结果完全相同的最终几何形状,尽管采用了(希望更清晰的)API。使用新 API 返回的结构与构建 glTF 对象时使用的结构完全一致,即点数组和索引指针数组。三角剖分采用 CDT 算法处理,这与 GLU 的三角剖分器所使用的算法不同。GLU 在某些平台(如 macOS)上已被弃用,因此我们最终需要脱离它。这只是实现这一目标的一部分,但是一项有用的工作。CDT 的最大优势在于可以避免生成细长的尖刺状三角形,这类三角形往往会导致渲染伪影。该库完全由 LLM 生成代码,尽管我在文档的某些部分进行了微调。