gpt4 book ai didi

algorithm - 将正方形矩阵转换为三角形带的快速算法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:11:46 25 4
gpt4 key购买 nike

假设有一个 4x4 的正方形,里面有 16 个较小的正方形,以及关于正方形应该是什么样子的相关数据(即不透明度、颜色等)。

是否存在现有的高效算法,可将这组正方形转换为兼容 open-gl 的三角形 strip ?

最佳答案

我不确定我是否正确理解了您尝试渲染的几何体。如果它是一种网格,我会这样做:

用你所有的顶点创建并填充一个顶点缓冲区对象:

8--9--a--b
| /| /| /|
|/ |/ |/ |
4--5--6--7
| /| /| /|
|/ |/ |/ |
0--1--2--3

使用用于渲染四边形网格的索引创建并填充元素数组缓冲区:

{ 0,1,5,4, 1,2,6,5, 2,3,7,6, 4,5,9,8, 5,6,a,9, 6,7,b,a }

使用 gl*Pointer 设置所有内容,使用 glDrawElements 和 GL_QUADS 来渲染它。顶点缓存将处理已经变换的顶点:第一个四边形之后的每个四边形只需要变换 2 个顶点。

我不认为如果你tri-stripquad-strip 你会得到任何东西,除了元素数组缓冲区上的一些内存。

如果要剥离它,创建相应的Element Array Buffer,并为每一行调用glDrawElements。这可以使用 Nvidia 专用扩展程序一次调用完成 GL_NV_primitive_restart

如果不是网格,可以试试NvTriStrip .

关于algorithm - 将正方形矩阵转换为三角形带的快速算法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3970221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com