Opengl GPU能否支持和测试旧版本的着色器代码?

Opengl GPU能否支持和测试旧版本的着色器代码?,opengl,glsl,version,shader,Opengl,Glsl,Version,Shader,假设我想测试一个旧版本的着色器代码,即GLSL 1.2。 机器上的GPU实际上可以支持GLSL 4.0(根据硬件规范)。您需要在兼容模式下创建OpenGL上下文,这可能是默认模式 是的,您应该能够为较低版本运行着色器 只需确保在每个着色器源的第一行中识别代码所针对的glsl版本,例如#version 120 OpenGL上下文也应该使用兼容性配置文件,核心配置文件不包含不推荐的功能。我不确定我是否完全理解您的问题,但是。。。如果GLSL编译器相对符合标准,它至少应该警告您,如果您写的是#vers

假设我想测试一个旧版本的着色器代码,即GLSL 1.2。
机器上的GPU实际上可以支持GLSL 4.0(根据硬件规范)。

您需要在兼容模式下创建OpenGL上下文,这可能是默认模式

是的,您应该能够为较低版本运行着色器

只需确保在每个着色器源的第一行中识别代码所针对的glsl版本,例如
#version 120


OpenGL上下文也应该使用兼容性配置文件,核心配置文件不包含不推荐的功能。

我不确定我是否完全理解您的问题,但是。。。如果GLSL编译器相对符合标准,它至少应该警告您,如果您写的是
#version 120
,并尝试使用1.20中不应该存在的东西。@Andon M.Coleman,我的意思是现在我的GPU可以用于更高版本的着色器。如果我输入较低版本的着色器,它能工作吗?