【问题标题】:C++/OpenGL: How does Tesselation work?C++/OpenGL:曲面细分是如何工作的?
【发布时间】:2016-08-01 18:08:19
【问题描述】:

我有《OpenGL SuperBible 第七版》这本书,我现在想知道 镶嵌是如何工作的? 我目前在这本书的第 3 章,我不太明白 用镶嵌控制着色器、镶嵌引擎和镶嵌评估着色器解释镶嵌。

所以我正在使用

  • OpenGL 4.5
  • C++11
  • 窗口

谁能向我详细解释一下 镶嵌在OpenGL 4.5中的工作原理以及控制点是什么,批次等是?

编辑:好的,我想我得问得更详细了。

  • 什么是“高阶原语”?
  • 什么是“四边形”?
  • 形成补丁的那些“控制点”是什么?
  • 什么是“批次”? (书中解释说,镶嵌控制着色器在控制点组上分批运行,其中每批的大小与每个补丁的顶点数相同。)
  • 什么是“重心坐标”。

我认为这样可以更清楚地说明我的问题和疑问。

【问题讨论】:

  • 我不拥有那本书,但那本书的工作不是教你这些东西的含义吗?它不会讨论“镶嵌 [原文] 的工作原理”和其他各种术语的含义吗?
  • 是的,这本书的工作就是教我这些东西的含义,而这本书就是这样做的。我遇到的问题是我不理解这本书的镶嵌部分。这可能是因为我不是以英语为母语的人,也可能是因为这本书的那部分是如何写的。所以这就是我在这里问的原因。因为看不懂书上的解释。
  • 你的问题的问题是它非常广泛和笼统。我不知道您不了解的细分是什么。听起来很像您在要求某人为您rewrite this page, and its associate pages,。我们一般不会在 SO 上做那种事情;我们尝试处理有针对性的问题,而不是宽泛的“整个系统如何运作”之类的问题。
  • “镶嵌”有很多不同的含义。我建议一种科学的方法。从书中的第一个示例开始,编写代码,看看它做了什么。尝试更改一个数字,看看会发生什么。更改着色器...

标签: c++ c++11 opengl shader tesselation


【解决方案1】:

第 6 版 SuperBible 有一个三次 Bezier 补丁示例,我猜第 7 版仍然会有。用它来回答你的问题

高阶原语:任何比三角形更复杂的东西。在这种情况下,贝塞尔补丁。 四边形:4个顶点形成平面多边形 控制点:4x4 = 16 个顶点形成一个 Bezier 补丁 批处理:贝塞尔补丁。 重心坐标:不重要

计算机图形学是一门您始终可以看到您所做工作的结果的学科。我建议少思考,多编码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多