Any octane user ? Closed  Locked

 From:  Michael Gibson
3386.59 In reply to 3386.54 
Hi Radiance,

quote:
if you supply only one vertex, you need to use the smoothing groups to differentiate.


No, that is not correct - in OBJ files there is more than one kind of vertex list.

There is a 3D vertex list, a UV vertex list, and a vertex normal list.

2 polygon faces that touch each other can share a single 3D vertex, but still have separate normals specified for them.

That's why faces have triplets for each vertex of the face, one index is for the 3D point, the second one for the UV and the third for the face's vertex normal.

So with OBJ structure, you don't have to only have all vertex information shared, you can have 3D points shared but individual normals per face.

If you are unable to have this kind of partial sharing for Octane, that may be a structural problem in your data where you only have face vertices contain a single index value for each face vertex instead of being able to have that kind of partial sharing.

Again, to make it simple just try the cylinder case above, if it does not render as a smooth cylinder in Octane as it does in every other rendering program, it means you have some problem with vertex normal handling.

> however, if you just write what you do now, it will render
> fine once my smoothing group implementation is finished.

That would be great, but it is unlikely because as I have written many times smoothing groups should have absolutely no effect on any rendering if you are actually using the vertex normals as supplied in the file.

It's totally an either-or situation - either you are using the vertex normals as stored in the file to do the shading, OR you are manipulating or creating normals by using smoothing groups, you can't be doing both at the same time.

- Michael