Geometry shader input points

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)

Solved with help from Mike Walczak on Slack. :slight_smile:

I need to convert the SOP to Particles type, then it works fine with geometry shader with layout(points).

I’m pretty curious, can you post the final tox? Thank you!