sampler2D 占用多少位置?

Posted

技术标签:

【中文标题】sampler2D 占用多少位置?【英文标题】:How much locations do sampler2D take? 【发布时间】: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,不同于为它指定绑定点。 【参考方案1】:

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

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

【讨论】:

所以阅读this 它说,“所有非数组/结构类型都将被分配一个位置。” 这是相关的引用吗?

以上是关于sampler2D 占用多少位置?的主要内容,如果未能解决你的问题,请参考以下文章

linux下,一个运行中的程序,究竟占用了多少内存

linux下查看程序占用多少内存

java 一个对象多少大,占用多少内存

电脑的CPU和占用内存正常分别是多少?

cocoscreator内存占用多少算高

PHP数组到底占用多少内存空间