用数学切割曲线形状
Cutting Up Curved Things

原始链接: https://campedersen.com/tessellation

## 从曲线到三角形:3D图形的工作原理 GPU 的运作基于一个简单原则:绘制三角形。 无论多么复杂的 3D 模型,最终都会被分解成这些基本形状。 这个过程称为细分,它将由数学函数定义的平滑表面转换为由互连三角形组成的网格。 三角形网格由两个数组组成——顶点(空间中的点)和索引(定义哪些顶点构成每个三角形)。 虽然 CAD 软件使用精确的方程来描述诸如圆柱体和球体之类的形状,但这些形状需要被*采样*——在表面上铺设网格,计算点,然后连接这些点以创建三角形。 更多的采样点意味着更平滑的结果,但也增加了处理需求。 不同的形状需要不同的方法。 平面只需要连接顶点。 圆柱体和球体使用基于网格的采样,而处理表面上的孔洞则需要巧妙的技术,例如“桥接”和“耳切除”算法来创建有效的三角剖分。 最终,细分器将这些复杂形式转换为 GPU 可以理解的三角形数据。 你看到的最终图像是一种幻觉——由密集的微小平面三角形令人信服地模仿曲线和表面。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 切割曲线的事物(用数学)(campedersen.com) 16 分,ecto 2小时前 | 隐藏 | 过去 | 收藏 | 1 条评论 aanet 1小时前 [–] 多么漂亮的网站/博客。喜欢这个解释,还有这个网站。做得很好!!<3 回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:
相关文章

原文

Your GPU doesn't know what a cylinder is.

It knows triangles! That's it. Three points, maybe a color. The entire vocabulary of graphics hardware fits on an index card.

12 triangles. That's all a cube is.

So before any curved surface can be rendered, someone has to chop it into triangles. Lots of them! Arranged just right so the illusion holds.

That's tessellation.

Triangles all the way down

A triangle mesh is just two arrays: