在Visual Studio中为GLSL代码启用Intellisense

时间:2017-05-10 16:30:33

标签: visual-studio

我非常喜欢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

1 个答案:

答案 0 :(得分:1)

我们使用了一段时间的黑客文件,但事实证明,通过添加glm库,我们终于能够通过Intellisense获得几乎100%的覆盖率,该库定义了覆盖着色器中使用的所有数据和语法的对象-包括模糊的矢量访问。

唯一引起一个警告的语句是#version预处理程序语句。还没有想出如何避免这种情况。