Normal POP and Convert POP with mixed input topologies

The normalPOP does only support quads and triangles as inputs, which I understand. But I think for an input that has triangles or quads and other geometry, it should default to calculating normals for those and ignoring the others (maybe while warning about it). It feels wrong that I can’t get the normals for thos computed.

Similarly, the convertPOP can’t (for example) convert lineStrips to lines when the input also has other kinds of geometry. I think it should just convert all the primitives that match the expected input and ignore the rest.

Hope this makes sense,
Josef

Hello @josefpelz
Thanks for pointing that out. I’ll add these tasks to the backlog.

1 Like

Yes I agree they should just work of the parts they can. We have been moving some POPs to follow that philosophy.

1 Like

I forgot to mention, that I the neighborPOP in ‘connected’ mode doesn’t support lines or linestrips, which I think it should

Thanks for the thorough testing Josef!

Neighbors for lines and line strips was on my list, making sure we don’t forget about it.
Might not be so straightforward for points shared between triangles and lines/line strips (nothing forbids it but not recommended topology in any case), but we can at least add it initiallly for lines / line strips only.

Tackled the line strips to lines conversion, other prims will pass through unaffected, also primitive attributes and groups were previously not converted, also took care of that, will be in next build.

Since all prims are in the same index buffer, “pass through” means a copy in that case, but that might still be cheaper than separating a prim type, processing it, and merging again (if you need them merged)

1 Like