我找不到glReleaseShaderCompiler
用法的任何真实例子。
我何时会使用glReleaseShaderCompiler
?从khronos描述中可以看出“这是应用程序提示不太可能发生其他着色器编译”。
如果我不使用它,它没有说明我是否必须这样做或者我有什么惩罚。除了可能分配RAM之外还有什么收获?
答案 0 :(得分:4)
这是一个提示的原因。着色器编译器使用的资源完全是特定于实现的,但它可能包括回收用于解析的内存等。
关于何时使用它,如果你的程序只在初始化时加载着色器而从不重新加载它们,那么这是一个非常好的用例。建议您在链接GLSL程序之后删除着色器对象以节省内存,因为您不会不断重新链接它。