我非常喜欢Visual Studio在编写C ++代码时提供的所有交互式帮助......
我发现我正在做越来越多的GLSL(OpenGL着色器语言)编码,我想将Visual Studio编辑的优点扩展到GLSL源代码工作。
我在网上搜索并没有找到任何非常好的扩展或调整,专门为GLSL提供正常的Intellisense着色,悬停,完成等。
通过告诉Visual Studio将.glsl文件作为C ++代码处理,并将一个头文件拼接在一起定义GLSL环境提供的一些内容,我已经进一步了解了,尽管我还有一些工作要做,以使其完整。由于预处理器条件,它不会编译到实际的着色器中:
#ifdef _WIN32
#include "GLSL_Intellisense_Hacks.h" // Facilitate Intellisense in the shader code
#endif
我的问题是:
有没有更好的方法,我还没有遇到过?一个不太知名的扩展,或已经开发的“GLSL_Intellisense_Hacks.h”文件?
感谢您愿意分享的任何知识,以实现更高效的GLSL编码。
-Noel
我们使用了hack文件一段时间,但事实证明我们最终能够通过添加glm库来获得几乎100%的Intellisense覆盖率,glm库定义了覆盖着色器中使用的所有数据和语法的对象 - 包括混合向量访问。
引发一个警告的唯一声明是#version预处理器语句。还没弄明白如何避免那个。