Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想尝试通过glCreateProgramand一次创建和链接多达 100 个着色器程序(可能是 40 个)(如果需要,可以glLinkProgram在它们之间切换)。onDrawFrame
glCreateProgram
glLinkProgram
onDrawFrame
每个都有简单的制服,比如一个或 2 个 vec4,或者一个浮点数等。简单的问题:在典型的 Android 设备上,我可以一次创建和链接的此类着色器程序的数量的大致限制是多少?40-100可以吗?
GLES2 文档没有提到您可以在内存中保留多少程序的任何具体限制。我猜你可以编译和链接上万个程序。唯一的限制应该是可用的内存量。这一切都取决于程序,ascii 源代码和编译后的二进制文件都将由 GLES 上下文存储。
对于其他限制,请查看 glGet* 函数可以返回什么。
glGet[Booleanv|Floatv|Integerv],gles2 文档