gpt4 book ai didi

opengl - 如何在 glsl 支持中使用#include ARB_shading_language_include

转载 作者:行者123 更新时间:2023-12-03 13:13:29 35 4
gpt4 key购买 nike

我不想使用 #include在 glsl 中包含着色器文件的宏,我听说有一个 ARB_shading_language_include extension支持#include宏。有没有人可以给我一个代码片段,展示如何使用 #include宏?

最佳答案

关于shading_language_include您需要了解的第一件事是什么不是。它不是“我 #include 来自磁盘的文件”。 OpenGL 不知道文件是什么;它没有文件系统的概念。

相反,您必须预加载您可能想要包含的所有文件。所以你有一个着色器字符串和一个从中加载字符串的文件名。本质上,您必须在 OpenGL 中构建一个虚拟文件系统。

您使用 glNamedStringARB将字符串上传到虚拟文件系统。字符串的名称是其完整路径名。

构建虚拟文件系统后,您必须为编译的每个着色器初始化扩展。

#version MY_OPENGL_VERSION //Whatever version you're using.
#extension GL_ARB_shading_language_include : require

#extension声明,您可以 #include如你所见。

关于opengl - 如何在 glsl 支持中使用#include ARB_shading_language_include,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10754437/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com