首页 > 解决方案 > 细分为四边形的顶点的顺序是什么?

问题描述

四边形的四个顶点的连续镶嵌坐标是多少?在11.2 TessellationOpenGL 4.6 文档的部分中,四边形的四个顶点通过它们的细分坐标来处理,并且定义了它们与外部和内部细分级别的关系。但是,gl_InvocationID映射到镶嵌坐标的方式并未在此处定义。

标签: opengltessellation

解决方案


但是,gl_InvocationID映射到镶嵌坐标的方式并未在此处定义。

它不应该是。提供该映射是您的工作

镶嵌原语生成器基于抽象补丁工作。您不提供要镶嵌的四边形。系统镶嵌一个抽象的单位四边形,并将抽象四边形空间中的顶点位置提供给您的 TES。您的 TES 的工作是使用 TCS/rendering 命令提供的补丁数据从抽象空间中的顶点位置生成实际顶点数据。

如何使用该补丁数据来执行此操作完全取决于您。

TCS 非补丁输出变量中的顶点顺序与 TES 非补丁输入变量中顶点的顺序相同。因此,如果您写入 TCS 中的索引 1,您在 TES 中从索引 1 读取的值将是该值。因此,您知道 TES 中的哪些值来自 TCS 中的哪些调用(或缺少 TCS,其顶点来自补丁原语)。

这就是你需要知道的。补丁中的哪个顶点对应于四边形中的 (0, 0)?这取决于您以及您如何编写 TES。您的 TES 甚至不必有一个直接与其对应的顶点;这完全取决于您希望如何为细分数据生成顶点数据。


推荐阅读