问题标签 [gl-triangle-strip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
10076 浏览

opengl - 使用单个 GL_TRIANGLE_STRIP 的立方体

是否可以仅使用单个 绘制整个立方体GL_TRIANGLE_STRIP

显然这只是我在这里关心的立方体组合,它还可以延伸到任何类型的盒子或类似的物体中。

0 投票
0 回答
481 浏览

opengl - 在 GL_TRIANGLE_STRIP 下方查看

我正在尝试填充和勾勒下面的形状。我结合使用 GL_LINES 和 GL_TRIANGLE_STRIP。

从顶部看,一切都很好。

但是,当倾斜模型以查看下方时,填充的三角形条不符合顶部的形状。它没有显示相应凸起位于顶部的“井”。相反,填充在 y 平面上显得“平坦”。

即使多边形没有“相互交叉”,这是常见的 OpenGL 凹面问题吗?

或者,是否可以像人们期望的那样看到下面的“井”?

顶视图

顶视图

底视图(黑色填充和 GL_LINES 之间的 z-fighting,看不到“井”内部)

底视图

我的绘图代码:

0 投票
4 回答
2269 浏览

opengl - OpenGL:用 TriangleList 绘制非常细的三角形变成点

我正在使用 TriangleList 输出我的图元。大多数时候,我需要绘制矩形、三角形、圆形。有时我需要绘制非常细的三角形(例如宽度=2px)。我认为它应该看起来像一条线(几乎是一条线),但它看起来像单独的点:)

下图显示了我在说什么:

在此处输入图像描述

左侧的第一张图片显示了如何绘制矩形(从右上角逆时针)。然后你可以看到我称之为“dx”的矩形的“宽度”。

如何避免这种行为?我希望它看起来像一条直线(几乎是直线),而不是点:)

0 投票
1 回答
1191 浏览

javascript - 在 WebGL 中对平面进行三角剖分

我正在尝试在 WebGL 中用三角形构建一个平面。我的构造函数代码如下所示:

但是,当我绘制它时,它看起来像这样脱节:

在此处输入图像描述

我想知道如何解决这个问题以及如何制作一个通用函数,该函数可以采用任意数量的行/列并计算必要的顶点以生成 MxN 网格。

我专门查看了这个站点,但我无法弄清楚 trianglestrip 变量的来源。

0 投票
2 回答
270 浏览

computational-geometry - 哪种三角测量算法创建了这些三角形

我无法弄清楚在附图中使用哪种三角测量算法来创建这些三角形。我认为这不是 delanuay 或耳朵剪裁,而是哪种多边形三角剖分方法创建了这些三角形?有什么帮助吗?三角测量的图片

0 投票
1 回答
645 浏览

opengl - GL_TRIANGLE_STRIP 和透明度问题

我想绘制透明多边形(例如金字塔)。有些面看起来是透明的,而有些面看起来是不透明的。

我使用 GL_TRIANGLE_STRIP 绘图。

我启用了混合模式,但没有运气。

请看附图,


在此处输入图像描述

0 投票
1 回答
157 浏览

javascript - 三角形基元画布

是否有可能在 HTML 页面的画布上绘制渐变原语?

我想要的一个例子(我用另一种编程语言做的):

(请原谅我的英语,如果我写得不好)

0 投票
0 回答
416 浏览

c# - 三角形条带的openGL性能不佳

我的程序是一个 3D 频谱处理器,它将显示信号强度 (y) 与频率 (x) 与时间 (z) 的关系。它基本上绘制了一个 3d 高度图,顶点的高度对应于信号强度。基本程序流程是创建具有固定 x 和 z 坐标的高度图,并计算索引。之后,获得新的 Y 坐标并使用 GL.BufferSubData 调用更新整个 3D 表面。基本上新的光谱数据进来了,它被放在所有其他的前面,其余的用一个循环缓冲区向后移动。新数据的数据处理相当快,大约需要 20 毫秒。

现在数据量相当大。我绘制了 2048 个点,我有 50 - 100 行。所以大约有 100,000 到 200,000 个顶点。这些都是用单个 GL.DrawElements 绘制的,其中一个 VBO 用于顶点,一个 VBO 用于索引。

现在,我有一个测试程序,如果数据可用,它会生成顶点和信号给 openGL 程序。如果是这样,它将数据传输到顶点数组中。如果没有更多的 sdata 可用,它只会绘制。

绘图似乎很慢,但我不确定我要求太多。我们需要绘制大约 300,000 个三角形,并使用 2D 着色器对它们进行着色,该着色器基本上只使用顶点的高度来选择颜色。

因此,我在 2.3 GHz 的四核 Core i7 和 nVidia 540m 显卡上看到每帧大约 150 毫秒。这很慢。如果我把窗口变小,速度会大大提高,如果是全屏,速度会变得更糟。

我对这里的期望是不是太高了?还是我的代码有问题?

这是问题陈述。为什么程序这么慢?

我将 c# 与 opengl4Csharp 库一起使用。

这是代码:GLUT空闲回调有这个:

这里是着色器:

0 投票
0 回答
432 浏览

three.js - 用于变形的 WebGL 三角形布局

我通过向上或向下移动顶点在 WebGL 中实现简单的变形,但偶然发现了三角形布局方式的问题。

我正在使用PlaneGeometryin three.js,它对三角形使用以下布局:

顶点布局 使用的布局three.js在左侧。我的在两者之间交替。

向上或向下移动顶点会产生左侧的图像,在移动顶点后,变形看起来会消失。蓝点代表中心顶点。 三角形布局顶视图 我决定使用以下代码交替三角形:

正如你在右边看到的,它给了我一个更好的结果。

三角形布局对角线视图 我的两个问题是:

  • 我使用的布局是否有效,它的名称是什么?
  • 有没有更好更好的方法来解决这个问题?
0 投票
0 回答
682 浏览

java - OpenGL es如何从数组顶点生成网格

我有一些 xyz 顶点的数组,我想要渲染这些顶点以形成 3d 形状的面。该数组最终将基于输入数据,但现在我使用的是示例数组。

目前我通过一次索引三个顶点来绘制形状以制作一系列三角形,但我真的希望有一种方法(可能通过使用循环或其他方式)来识别相邻顶点并自动形成三角形或三角带。

到目前为止,这是我的代码:任何关于如何实现它来代替“一次索引三个顶点”的帮助将不胜感激。

}