NV 257.21, GL 3.2 + CUDA and errors

I installed new drivers and now my application doesn’t work. Earlier I had sth like:

#version 150

#extension GL_EXT_geometry_shader4 : enable 

precision highp float;

layout(triangles) in;

layout(triangle, max_vertices = 3) out;

...

gl_Position = gl_PositionIn[i];

and everything was ok. Now I got error:

error C3008: unknown layout specifier ‘triangle’

I changed “triangle” for “triangles”:

error C3008: unknown layout specifier ‘triangles’

#version 150 core

precision highp float;

layout(triangles) in;

layout(triangle, max_vertices = 3) out;

in vec4 glPositionIn[];

...

gl_Position = glPositionIn[i];

and same errors.

Few months ago I had same problem - I installed 197.25 but after updating to next version my program worked ok.

I checked other option: layout(max_vertices = 3) out; (instead (triangle, max_vertices = 3)). No compilation errors but the window shows only for short time and disappears in line:

cutilSafeCall(cudaGLRegisterBufferObject(myVBO[i].cVBO_normals));
  • CUDA error - “Runtime API error in … line … : out of memory”. :sick:

According to the GLSL 1.50 spec, the valid layout qualifier ID for a geometry shader is points, line_strip, or triangle_strip (see section 4.3.8.2).