问题标签 [vertex-attributes]

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 投票
1 回答
607 浏览

c++ - 手动填充顶点结构以实现对齐

将顶点数据传递给着色器时,将填充应用于顶点结构以实现对齐(16 字节)是明智的,还是硬件正在执行的操作?

例如,这两个顶点结构是否同样有效?

谢谢!

0 投票
1 回答
433 浏览

r - 仅显示所需顶点的标签

我只想显示度数大于 50 的顶点的标签。我尝试了以下代码:

plot(g, vertex.label=(V(g)$id[which(degree > 50)]))

但是,它似乎只使用度数大于 50 的那些顶点的标签重新标记所有顶点,而不是只标记所需的顶点。

如何显示仅标记所需顶点的图?或者有没有办法隐藏不需要的标签?

0 投票
1 回答
203 浏览

opengl - Nvidia老驱动,glDrawArrays Exception Access Violation

我们的应用程序在旧的 Nvidia 驱动程序上崩溃..

调试代码在这里

环顾四周,他们说通常是由于顶点属性设置不正确

这就是我设置 vbo 和 vao 的方式:

这就是我渲染的方式:

这是我的VS:

还有我的FS:

我从 2 天开始阅读并重新阅读相同的代码,我找不到任何错误。我还尝试定义 2*4=8 的步幅,但结果相同..

0 投票
1 回答
63 浏览

javascript - 渲染到纹理和属性位置

我正在使用 webgl,我想做的是首先渲染到纹理,然后使用该纹理在屏幕上渲染,并且在第一步渲染中遇到属性问题。

我将尝试用几句话来解释我要做什么。首先,我想使用片段着色器将使用属性的东西渲染到纹理,然后使用该纹理渲染到屏幕,并为下一帧重复这些步骤。但是,当我尝试使用绑定的帧缓冲区进行渲染时,该属性 (pos) 具有无效值,我的意思是,根本没有值。

我写了一个小演示来显示我的问题:

如果我从 javascript 代码(frameBuffer 的绑定)和第 54 行(渲染到屏幕代码,运行不同的程序)中注释第 38,39 行,我们可以看到它正确渲染并且给出了名称“pos”正确的价值观。

我不太了解它应该如何工作,而且我有点摸不着头脑。我确信我错过了一些重要的东西,但我无法在任何地方找到什么。任何帮助将不胜感激。

0 投票
1 回答
469 浏览

r - 具有十二种边缘类型的网络上的 ERGM

我有一个相当复杂的网络。该网络有 91 个节点和 3453 条边。有十二种边缘类型。为了构建网络,我创建了 12 个独立的自我网络,使用边缘属性作为单独的节点,然后删除边缘属性节点,最后将 12 个图合并在一起。

节点有 5 个属性:谁、请求日期、响应日期、请求中的从属关系和类别。

我想使用 ERGM 根据节点属性预测形成平局(任何平局,以及特定的“边缘类型”平局)的可能性。我曾尝试使用“nodematch”,但 R 抛出以下错误:“ergm​​.getnetwork(formula) 中的错误:无效网络。公式的左侧是否正确?”

我想知道这个问题是否源于我建立相当复杂的网络的方式。

任何人都可以帮忙吗?欢迎提出建议。

非常感谢你。

下面的代码:

0 投票
1 回答
1813 浏览

python - 使用 subgraph() 并使用 igraph python 保留顶点属性

我想将断开连接的图划分为块(使用 community_spinglass)。但是,一旦我得到子图并使用 community_spinglass() 原始图中顶点的标签就会丢失。我正在处理 40 多个顶点,因此要追踪它们并不容易。这是我的问题的“玩具示例”:

带标签的原始图

在我获得区块和社区后:

子图,正如观察到的,顶点按顺序跟随 v_name 列表并且不保留过去的标签

但是我们看到顶点按照 v_name 列表的顺序排列,而不是它们之前的标签。此外,当我们获得社区时:

我们得到了子图的索引,但是很难与原始图的索引相关联。

有没有办法获得引用原始图的索引或标签的社区?

提前致谢。

0 投票
2 回答
1410 浏览

c++ - Vertex attributes - using short instead of float for vertex positions

Currently I have following setup which is working fine for far.

The Vertex-Attributes:

Now I want to increase my performance by changing the vertex attributes to from float to short. I tried to start with the vertex positions.

OpenGL's Vertex Specification Best Practices tells me this:

Positions [...] To do this, you rearrange your model space data so that all positions are packed in a [-1, 1] box around the origin. You do that by finding the min/max values in XYZ among all positions. Then you subtract the center point of the min/max box from all vertex positions; followed by scaling all of the positions by half the width/height/depth of the min/max box. You need to keep the center point and scaling factors around. When you build your model-to-view matrix (or model-to-whatever matrix), you need to apply the center point offset and scale at the top of the transform stack (so at the end, right before you draw).

I also read this Thread.

That's why I added this preprocessing step mapping all vertices to [-1,1]

and recale it in the vertex-shader

My vertex attribute using GL_SHORT instead of GL_FLOAT, and normalize set to GL_TRUE:

As result I just get a chaos of triangles, but not my model with increased fps.

Is this the correct way to set vertex attributes to short?

Or do I have to change my complete Vertex structure? If yes, what's the best way to do this (glm vectors with shorts?).

An working example would be great, I couldn't find any.

0 投票
2 回答
375 浏览

opengl - 如何在一个顶点数组对象中有多个存储布局?

当我说存储布局时,我的意思是我用glVertexAttribPointer. 这个状态是保存在当前绑定的 VAO 还是我绑定的缓冲区中GL_ARRAY_BUFFER

0 投票
0 回答
175 浏览

opengl - OpenGL 实例化:使用 mat4x2 或 vec2[4]

按照网上的例子,这里是顶点着色器中的代码:

属性定义如下:

在顶点着色器中,它们被使用:

但结果很奇怪,完全随机。有时是黑色的,有时是随机的形状。

但如果我改用:

在顶点着色器中:

然后它按需要工作。

对于这两个示例,颜色和顶点位置的数据缓冲区是相同的。[更新:在下面添加喂食代码]

第一个选项有什么问题?

0 投票
1 回答
382 浏览

c++ - 打开 GL Shader Storage Buffer Objects 来替换 Vertex Attributes

我基本上和这里问的人有同样的问题: Dynamically sized arrays in OpenGL ES vertex shader; 用于混合形状/变形目标。特别是他最后一个未回答的问题也困扰着我。

所以我还想为我正在处理的每个网格使用任意数量的混合形状。目前我使用的是固定数字并将形状视为顶点属性。这里的好处是我总是有当前可用顶点的相关数据。现在,如果我想使用任意数量的形状,我想我会使用 SSBO,因为它们的线索正是我想要的:动态大小的数据。然而,据我所知,SSBO 是静态的,对于着色器中每个已处理的顶点,我都有可用的整个网格的 blendshape 数据。这意味着我必须引入某种计数器并尝试从我的 SSBO 中为每个顶点挑选正确的数据。

这种理解正确吗?我真的不确定这是否是最佳解决方案,也许您可​​以给我一些提示。