【问题标题】:How much locations do sampler2D take?sampler2D 占用多少位置?
【发布时间】:2021-06-29 15:12:08
【问题描述】:

让我们考虑以下着色器代码:

layout(location = 0) uniform sampler2D someTexture;
layout(location = ?) uniform int someInteger

我怎么知道用什么代替问号? sampler2D 占用多少个位置?

【问题讨论】:

  • 我对你的问题感到困惑。 sampler2D 使用 layout(binding = ?) 而不是 layout(location = ?)。我弄错了吗? sampler2D 是一种不透明类型,不能作为缓冲区支持的接口块的一部分。
  • @Wyck:这是一个统一的,你可以specify the location of a uniform,不同于为它指定绑定点。

标签: opengl glsl


【解决方案1】:

非聚合类型的所有单个变量都占用一个 uniform 位置。向量、矩阵、yes 采样器和其他不透明类型都占用一个位置。

这与顶点着色器/片段着色器输入/输出变量不同。

【讨论】:

  • 所以阅读this 它说,“所有非数组/结构类型都将被分配一个位置。” 这是相关的引用吗?
猜你喜欢
  • 2021-10-26
  • 2014-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-12
  • 2010-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多