Hi,
I’m working on a “hyperspace” geometry shader, it emits rays (tubes) from each vertex. The work is almost done, but I’d like to change one thing.
Currently I’m passing triangles to geometry shader, each triangle becomes a ray emitter. It works fine with a Sphere (built with triangles) but not with a Grid (built with points/lines?). How to make it work with every shape? Probably by using points as ray emitters. So in geometry shader code I’ve changed:
layout(triangles) in;
[/code] to [code]
layout(points) in;
and
in Vertex {
vec4 color;
vec3 worldSpacePos;
vec3 worldSpaceNorm;
flat int cameraIndex;
} vVert[3];
to in Vertex {
vec4 color;
vec3 worldSpacePos;
vec3 worldSpaceNorm;
flat int cameraIndex;
} vVert[1];
^ this makes the shader compile, but it doesn’t output anything. What am I missing?
I’m attaching the composition.
hyperspace.25.toe (7.87 KB)