Any octane user ? Closed  Locked  1-20  21-40  41-60  …  101

Next
 From:  PaQ
3386.1 
Hello there,

I just jumped into the octane render train ... but ... I'm a bit supprised that the vertex normal map from .obj seems not been supported.

Modo


Octane


Anyone get a workaroud/tip ?

(If I remember right Philbo is a MoI user and octane 'advertiser' ... funky he has not report this huge limitation yet :o))

(using the 'divide larger than' option would be terrific as I'm quite limited with my gfx card memory for the moment)

EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.2 In reply to 3386.1 
Hi PaQ, one quick tip - when exporting to Octane don't use N-gons, in fact set it to "Triangles only" and see if that helps.

- Michael
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Marc (TELLIER)
3386.3 In reply to 3386.1 
Hi Paq,

You probably already know this but unchecking "weld vertices along edges" can be a good workaround in some instances.

Marc
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.4 In reply to 3386.2 
Yop, I only export my stuff in triangles, but it don't really help.

Basically it's the same problem that I have in max 1 year ago ... nothing can really fix it until the normal vertex channel is used (thanks to the .fbx export).

Radiance just reply me, saying that smoothing group is not yet supported and that I have to split my edges 'by hand' ... but ... smoothing group is not the problem here right ? (I'm quite limited when I'm trying to explain technical stuffs in english :)).

I can understand splitting gemotry is quite easy when using a poly modeler ... but I don't see how I can do that in gemotry coming from MoI ... and dont think if any smoothing group feature in octane will really help here.

Michael, if you have any link about normal vertex map from nurbs surface explanation (and how read them from .obj files) so I can copy/paste it on the Octane forum, would be great :P
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.5 In reply to 3386.3 
Hi Marc,

Yes it helps in some area, but will broken every surface continuity all around the model :( (especially in fillets area)
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.6 In reply to 3386.4 
Hi PaQ, yeah the term "smoothing groups" usually refers to something different than just support for reading in vertex normals, although both of these involve the mechanisms of how to make a flat polygon appear as though it is part of a smooth surface.

Usually what is meant by "smoothing group" is literally a group membership that you can have polygons assigned to, like 10 polygons could be assigned to "smoothing group 1", and some other 20 polygons could be assigned to "smoothing group 2". Then when creating vertex normals by the method of averaging the normals of adjacent polygons together, it will only make the average with polygons from the same group, which creates a kind of break line between the different groups.

But that only applies to having vertex normals calculated by an averaging process.


It is far better for imports to actually read the vertex normals from the file when they are present, rather than trying to recompute them by an averaging process at all.

This is especially important for NURBS models, since the vertex normals created from a NURBS model are very accurate and come from the actual smooth NURBS surface instead of just being averaged between flat polygons.


In the OBJ file, the actual vertex normals are stored in "vn" entries. If you open up the OBJ file in a text editor you will see some lines in it like this:

vn 0.88390502 0.00000000 0.46766645
vn 0.88390502 0.00000000 0.46766645
vn 0.86692122 -0.19508928 0.45868047
vn 0.81662210 -0.38268250 0.43206764
vn 0.81662210 -0.38268250 0.43206764
vn 0.73494043 -0.55556979 0.38885058

That is the stored vertex normal data. The relevant part of the OBJ spec says this:

quote:

vn i j k

Polygonal and free-form geometry statement.

Specifies a normal vector with components i, j, and k.

Vertex normals affect the smooth-shading and rendering of geometry.
For polygons, vertex normals are used in place of the actual facet
normals. For surfaces, vertex normals are interpolated over the
entire surface and replace the actual analytic surface normal.

When vertex normals are present, they supersede smoothing groups.

i j k are the i, j, and k coordinates for the vertex normal. They
are floating point numbers.



It's an optional thing for an OBJ file to have vertex normals, but when they are present it can make a really big difference in shading to read them in rather than trying to produce new normals only from the polygonal data.


It's also possible for there to be smoothing group data in an OBJ file as well, which are present in the OBJ file as "s" statements. MoI will actually export those as well, with polygons that come from one smooth surface being grouped together within the same smoothing group.

It's not really a problem to just ignore the "smoothing group" data though (the "s" directives in the file), because it should not actually end up being used for anything when the vertex normals are in the file, in OBJ files it is intended that vertex normals that are present in the file should be used instead of the smoothing groups anyway.


Reading the vertex normals out of the file is definitely a very important feature for rendering output from MoI.


- Michael
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.7 In reply to 3386.6 
Voila ...

Just love you :)

(copy/pasted ... thanks a lot)
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Samuel Zeller
3386.8 
So how do we fix it ?
Does Radiance need to fix or does Michael ?
I don't understand where's the problem coming from :(

I can't even render a simple bolt in OBJ from MoI in Octane :D

Im Sam in OR forums PaQ ;)
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.9 In reply to 3386.8 
Hi Sam,

It's an octane problem, ... as all the .obj I've tested were rendered perfectly in modo.
Looks like something wrong in the nv parser stuff (normal reader).

I know Philbo, as a MoI user, is concerned too ...
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.10 In reply to 3386.9 
First 'working' octane export ...
I didn't find any better solution than disabling the weld along edge option, and tesselate the mesh as much as I can.

EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Phil (PHILBO)
3386.11 
Hey Michael,

Can you please help us out? We're trying to make Octane Render a very affordable and powerful renderer for all modeling programs. We're trying to improve our obj import of MOI3D meshes.

Radiance, the author of Octane Render, has posted the following in a discussion with PAQ on the Octane forum. Can you post whether we're missing something or not?



"i really don't understand.

here's a simple low poly ball.
half the normals are inversed. (the vertex normals)

i export it to an OBJ:



that's correct. the vertex normals are exported to the OBJ, they are read by octane and used for rendering.
the image looks ugly, but it's correct as half the normals point the wrong way.

there is no recalculation of these going on at all, they are used as they are read.

the blender file is :

___________________________________________

# Blender3D v248 OBJ File:
# www.blender3d.org
mtllib invball.mtl
o Sphere
v 0.382683 0.923880 -0.000000

...

vt 0.000000 0.000000 0.0

...

vn -1.000000 0.000000 0.000000

...

usemtl Material.001
s 1
f 37/1/1 7/2/2 8/3/3
f 1/4/4 15/5/1 14/6/5
f 14/7/5 15/8/1 16/9/6

...

________________________________


which is identical to the moi3d file paq posted:

_________________________________

mtllib SuperBall.mtl
o object1
g object1
v 1.29307735 3.62458663 -1.09101924

...

vt 0.00645550 0.11863773

...

vn -0.10859368 0.00000000 0.99408622

...

s 1
usemtl Default
f 1/1/1 2/2/2 3/3/3
f 671/3039/671 3/3036/3 2447/3041/2478
f 2446/3040/2477 672/3038/672 2447/3041/2478

_________________________________


There's nothing else, that's the way OBJ works.

Maybe the problem simply does'nt exist and it's an artifact that presents itself due to the missing smoothgroups ?

Imagine if you have 2 polygons that are connected by a shallow angle,
they should be separated into 2 groups otherwise they will be interpolated and you get shading artifacts.

imagine if one of these 2 normals is on the other side, this will give you strange black shading artifacts.
it's either due to the missing support for smooth groups, or something else.

can someone ask the moi3d implementer ? show him this post and ask him if he maybe exports OBJ's in other ways in certain scenarios ?
the OBJ provided by paq is %100 identical in syntax / structure to my blender example which works %100, except for the missing smoothgroups.

Radiance"


Can you comment on this? I know that you have had experience with other rendering engines and how they handled (or mishandled) vertex data. Can you shed any light on this issue?

Thanks if you can.

Phil
Attachments:

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.12 In reply to 3386.11 
Hello Michael,

I, of course did a lot of test, and here's the most revelant one.



As Octane don't support Ngones, I have to use the 'quad and tris' option in MoI, which output sometimes really nasty microtriangle.
Modo can still handle it (well there are some extreme case where modo also give up, but only with full tris output).

So after 9 pages of discussions on the Octane forum, I'm starting to loose my hairs :)

Does Modo actually manage this micro triangles thanks to the vertex normal coming from MoI, or is it something else.

If you have any idea ... would be great :)

EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.13 In reply to 3386.11 
Hi Phil - well MoI always exports vertex normals in the same way - the normals come from the original NURBS surface that the polygons were generated from.

Smoothing groups support should not really have anything to do with it - when the vertex normals are being used, they should completely define the smoothing appearance of the polygons.

Usually it is either one or the other - either you use smoothing groups and have the vertex normals created by an averaging process of face normals between adjacent polygons in the mesh (only between polygons in the same group though), _OR_ you use stored vertex normals in which case they will be oriented to make a crease where there should be creases and so forth, when you use vertex normals it is in place of using smoothing groups, not something you use in addition to them.

The kind of artifacts that PaQ is showing in several of the posts here definitely look like some kind of problem with vertex normal handling.

I've seen problems that have a similar look as this in some programs that do not use the stored vertex normals and instead calculate them only by averaging face normals. That's not good because that is throwing away the accurate normal that came from the original NURBS surface.


Maybe another possibility is some problem with interpolating the normals?


> Imagine if you have 2 polygons that are connected by a shallow
> angle, they should be separated into 2 groups otherwise they will
> be interpolated and you get shading artifacts.

This part does not make sense to me - when you use the stored vertex normals, all the information for how a polygon should be smoothed is already present in the normals themselves - if 2 faces are supposed to be creased with each other that means they would each have a different vertex normal pointing in different directions, so when the polygons are rendered, each polygon would be using its own normals.


Does Octane maybe not support having 2 faces that share a 3D point location in common but have separate vertex normals for each face rather than having a shared normal as well?


What happens if you just export a box from MoI to Octane with welding turned on, what does that look like?


Also, PaQ can you pick just one single, simple surface that has those artifacts in it when imported into Octane, and then post that here so that we can focus on a good simple example case?


- Michael
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.14 In reply to 3386.13 
Hi Michael,

Yeah that's what I'm singing since a week, with proper vertex normal map reading, smoothing group are useless ...
Here's how a single cube looks in Octane.

Diffuse shading


Reflection shading


I'm looking for the simplest but revelant surface showing shading problem.

EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.15 In reply to 3386.14 
Hi PaQ, re: cube - is that how it is supposed to look like or is that messed up?

What are these lines here that I'm pointing to in red:



Are those part of some environment or should those not be there?

Is it possible to do a really simple 1 light (like a headlight maybe) lighting setup and then show what a cube looks like? (with just the diffuse shading).

Also could you show if there is any difference if you export from MoI with welding turned off versus with welding turned on?

- Michael
Attachments:

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.16 In reply to 3386.11 
Hi Phil, also here's another way to describe the stuff about smoothing groups.


So in order to make a flat polygon look like it is actually a piece of a smooth surface rather than a totally flat thing, you need to have vertex normals set up.


If an OBJ file has vertex normals in it, then you only need to read in those normals and then you have the normals all set up and fully prepared to render without doing anything else to the vertex normals at all.

If the file did not have any vertex normals in it, or if the vertex normals were invalidated somehow like by editing the points or morphing or something like that, that's when you would need to go through some process to create some vertex normals. When creating the vertex normals, that's when things like smoothing groups, break angles, etc... can come into play to have various effects on how the normals are created, like if there should be a break line between 2 polygons or not.


But if they are in the file, you don't want to be doing anything related to creating vertex normals or manipulating them by smoothing groups or break angles or anything like that at all, you want to just be using the normals that have been provided directly... If things were supposed to be creased, the polygons will already be set up with different normals specified to make the crease happen.


Does that make sense?


So that's why things like smoothing groups support is not significant in the case when you already have vertex normals present in the OBJ file - smoothing groups would only be significant if you need to create normals but if you have them you should not try to create new ones because you don't have enough information to get the true normal from the original NURBS surface at that point.

- Michael
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
3386.17 In reply to 3386.12 
Hi PaQ, sorry I missed the bottom part of your earlier post, you asked:

> Does Modo actually manage this micro triangles thanks to the vertex
> normal coming from MoI, or is it something else.

Yes, it handles them well because of having the accurate normals that come from the NURBS surface.

You can usually have pretty horrendous looking wireframe triangles but that look just like the original NURBS surface when shaded, if they use the normals that came from the original surface.

Otherwise, if trying to create normals only by averaging adjacent face normals, that's much more sensitive to the topology of the triangles, and things like abrupt changes from one polygon to the next. Some long skinny triangle will factor into the averaging process with the same weight as some larger polygon from a plane or something like that. That creates irregularities in the shading.


Actually when you have n-gons in Modo the stuff getting rendered is something just like that "triangles only" export from MoI - Modo will keep an internal triangulation of the n-gon and it is the triangulation that will actually get shaded. N-gons are nice for other things like cleaner wireframe display, polygon selection and management type stuff, but they are not used directly for shading though.

- Michael
  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.18 In reply to 3386.15 
Hi Michael,

\\What are these lines here that I'm pointing to in red\\

Shading artefact :P there is no reflection on this one, so the line here are coming from Octane trying to smooth the whole stuff.


\\Is it possible to do a really simple 1 light (like a headlight maybe) lighting setup and then show what a cube looks like? (with just the diffuse shading).

Not for the moment ... You can 'only' lit a scene with an hdr map ... This is supposed to be a flat shaded cube.


\\Also could you show if there is any difference if you export from MoI with welding turned off versus with welding turned on?

When welding turned off, the result is right (no more lines crossing the cube). That was the first trick we used ... but of course turning welding off introduce
a lot of other problems, like discontinuity on every smooth surfaces. That were the smoothing group happends in the discussion.

Basically I know what's happend, using MoI since a year or more. I mean all this trouble remind me the bad days when I was trying to import my stuff into 3dsmax.
It's the same nightmare. My main problem here is to explain it to Radiance, as he doesn't seems to understand the problem. From his pov, there is something special
in MoI, whatever I can show. I've post tons of screens, mostly Modo comparaison etc. Don't get me wrong, I really appreciate the guy and his patience (I'm bugging him
since a week or so), I love the render engine and all.

It's just that I feel ... frustrated ...

EDITED: 27 Mar 2010 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.19 In reply to 3386.17 
\\ Actually when you have n-gons in Modo the stuff getting rendered is something just like that "triangles only" export from MoI - Modo will keep an internal triangulation of the n-gon and it is the triangulation that will actually get shaded. N-gons are nice for other things like cleaner wireframe display, polygon selection and management type stuff, but they are not used directly for shading though.

Well actually that's something I don't really get. As I did a tons of test since few days, I actually get some case where, for the same object, the Ngone version is giving a much better result in Modo that the full triangulate one. Actually it's also visible in MoI viewport.



And you will of course see it in Modo, especially when using a reflective surface.



But that's extreme example of course.

EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
3386.20 
So here's a simple object showing a lot of shading error.
With the .3dm.



EDITED: 3 Dec 2015 by PAQ

  More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 
 

 

 
Show messages:  1-20  21-40  41-60  61-80  …  101