glsl 相关问题

OpenGL着色语言(GLSL)是OpenGL中着色器的标准编程语言。该语言有许多版本,每个版本对应一个OpenGL版本。 OpenGL ES 2.0及更高版本具有单独的GLSL版本。

WebGL2 告诉我,while 循环不是所有的

大部分代码来自这里,我刚刚加载了 webgl2 而不是 webgl ,更改了片段着色器以包含 while 循环,并记录了一些内容, 源/script.js: const canvas = 文档。

回答 1 投票 0

我正在尝试使用 ThreeJs 在三个图像之间创建位移图过渡,但我被卡住了

几个月前我开始使用 ThreeJS,这让我转向了 webgl。 我在 youtube 上看了很多课程,但大多数都是针对 3D 构图的。 到目前为止我已经基本了解了...

回答 1 投票 0

为什么在我的体素渲染器中,相机似乎只有在通过体素射线步长后才会移动?

我有一个 GLSL 程序,它在片段着色器中使用 DDA 算法渲染体素。我尝试修改代码,以便可以调整每条射线的步长。目标是缩小

回答 1 投票 0

GLSL 碎片着色器输出黄色而不是渐变

我试图创建一个 uv 纹理(如果这个术语是正确的话,我不知道),就像您首先在 Shader Toy 中所做的那样,通过获取片段坐标并将其除以分辨率。 #版本330核心 出 vec4 FragCo...

回答 1 投票 0

如何在GLSL中使用4x4矩阵作为顶点属性?

我尝试使用 4x4 矩阵作为顶点属性,使用以下代码: Mat4 矩阵[numVerts]; int mtxBoneID = glGetAttribLocation(hProgram, "aMtxBone"); glEnableVertexAttribArray(mtxBoneID + ...

回答 5 投票 0

Shadertoy GLSL:寻求帮助,使垂直线在条件 V.x == 0.6 下可见 – 代码未按预期渲染,需要指导

https://www.shadertoy.com/view/XffGW4 void mainImage( 输出 vec4 O, vec2 U ) { vec2 V = mod(U, 100.); O = vec4(V.x == 0.5); // O = vec4( V.x == 0.6); } 这是结果: 将 0.5 更改为 0...

回答 1 投票 0

调用 EmitVertex 次数过多会导致编译失败,尽管低于 max_vertices 计数

在主程序中,查询几何着色器可以发射的最大顶点数: GLint max_geo_out; glGetIntegerv(GL_MAX_GEOMETRY_OUTPUT_VERTICES, &max_geo_out); printf(&

回答 1 投票 0

为什么这个GLSL着色器程序会出现错误?

我目前正在尝试创建一个程序,渲染由16个控制点的坐标确定的表面。(使用webGL2)但是,这个着色器程序似乎有一个错误,...

回答 1 投票 0

我应该仅在附加着色器并链接后检查编译错误吗?

当我以相反的方式执行此操作时,会出现编译错误,该错误本质上是空的,并出现一些奇怪的字符。 它在一个类中,所以我不知道需要查看代码的哪一部分......

回答 1 投票 0

GLSL:std140 中的顺序 vec2 对齐?

我无法理解 std140 布局中的 vec2 对齐和偏移规则: 我从规则的阅读中预计 “如果该成员是一个二分量或四分量向量,其分量消耗 N

回答 1 投票 0

webGL 中的平面着色

我正在尝试在webgl中实现平面着色, 我知道顶点着色器中的不同关键字会插值该值并将其传递给片段着色器。 我正在尝试禁用插值,并且我...

回答 2 投票 0

为什么从顶点缓冲区传递到顶点着色器的 GLSL 整数属性变得太大?

我正在尝试按以下方式渲染 GL_POINTS: 使用uniform来传递viewProjectionMatrix 使用着色器存储缓冲区对象 (SSBO) 来存储游戏的所有 glm::mat4 转换...

回答 1 投票 0

sampler2Drect和sampler2d有什么区别?

正如 glsl 规范所说 gvec4 纹理( gsampler2D 采样器, vec2 P, [浮动偏差]); gvec4 纹理( gsampler2DRect 采样器, vec2 P); 我在 vulkan 中测试了这两个条件。我绑定...

回答 1 投票 0

如何使用 Three.js 在 GLSL 中显示网络摄像头源?

有多个示例介绍如何使用 ThreeJS 通过创建视频纹理来显示网络摄像头视频,如下所示: 视频 = document.getElementById( '视频' ); const 纹理 = new THREE.VideoTexture( ...

回答 1 投票 0

如何进行无分支丢弃?

我有一个相当基本的片段着色器,它可以从纹理中采样并根据样本更改分配的固定颜色。如果我从纹理中采样,我会进行 alpha 检查并丢弃低 alpha ...

回答 1 投票 0

在着色器中读取浮动纹理,值始终为零

我正在尝试将 float buf(row 1020.col 4) 数据发送到着色器 以下是我的c++代码 浮点angle_maps[1020 * 4]; GLuint angle_maps_ Distortion_texture; glGenTextures(1, &angle_maps_ Distortion_textu...

回答 1 投票 0

GLSL 曲面细分着色器为每个面片以不同方向绘制三角形

我正在使用曲面细分着色器和补丁在 OpenGL 上构建一个简单的地形,但我在 OpenGL 如何绘制这些补丁方面遇到了麻烦。 OpenGL 生成的三角形以不同的方式绘制...

回答 1 投票 0

JOGL 将整数值传递给片段着色器

在我的 OpenGL 应用程序中,我尝试将一个整数传递到顶点着色器,然后将其转发到片段着色器以用作纹理数组中的 zIndex。但是,当我使用 ...

回答 1 投票 0

使用高度在 GLSL 中的 3 个纹理之间进行插值

我正在研究一些简单的地形纹理,我对如何在地形的 3 个不同纹理之间进行插值感到非常困惑,其中你将根据高度值进行插值...

回答 1 投票 0

为什么我的属性值在 OpenGL 中隐式转换为浮点数?

我目前遇到了奇怪的行为。 细节: 在顶点着色器中,我将位置 1 处的属性声明为 uint: uint VS_In_ID 中的布局(位置 = 1) 我在 C 中将其声明为 GL_UNSIGNED_INT,

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.