Page 1 of 10

Subdivision + displacement test

Posted: Sun May 11, 2008 10:30 pm
by OnoSendai
Messing around with some subdivision surface code, also with displacement mapping the subdivided mesh.

The preview surface in this scene is subdivided three times to create 2.8M triangles. The subdivision is done at scene load time currently, so it does take rather a lot of RAM.

I'll look into dynamic subdivision later, but this serves as a good benchmark for performance.

The map 'spherebump.jpg' is used as a displacement map here.

The 'ripples' on the surface are due to incorrect UV generation I think, as opposed to triangle resolution limitations.

Also there's the rather glaring issue of discontinuities at creased edges in the surface :)

Posted: Sun May 11, 2008 10:45 pm
by fused
omg!

i saw it coming :D

that will be a great release!

Posted: Sun May 11, 2008 10:46 pm
by OnoSendai
Some more pics.
Both these have 2 levels of subdivision, obviously displacement is used in one of the materials :)

Posted: Sun May 11, 2008 10:50 pm
by PureSpider
w00t! giev us t3h MPD now! :D

Posted: Sun May 11, 2008 10:56 pm
by Kosmokrator
looks promising Ono......
lets see how far can reach this stuff!!

thnx for ur work

Posted: Sun May 11, 2008 10:57 pm
by BbB
Now we're talking. We're on the way to Nirvana!
Once you're done with this, Ono, I seriously can't think of any more feature to request!

(PS: I don't know if that helps, but both Maxwell and Fry have this problem of displaced meshes tearing apart at sharp edges. Their solution is to set the smoothing angle of the mesh at 90 degrees instead of 60...)

EDIT: Does this mesh have split vertices by any chance?

Posted: Sun May 11, 2008 10:58 pm
by CoolColJ
:shock: 8)

Posted: Sun May 11, 2008 10:59 pm
by OnoSendai
I thought the Fry guys solved the tearing problem?

There is a possible solution which is to insert some tris to form a 'wall' along the tear.

Posted: Sun May 11, 2008 11:02 pm
by BbB
I thought the Fry guys solved the tearing problem?
Could well be... They got a new version on the way anyway.

Man, I can't wait for this. That and the shift lens = full architectural suite!

EDIT: I actually don't mind some tearing pbms in the initial release. We can still do walls, carpets, grass, etc... Wicker might be trickier...

Posted: Mon May 12, 2008 12:34 am
by Gengibre
How much ram?? How much ram Ono??

Posted: Mon May 12, 2008 12:58 am
by Kram1032
YAY :D

On the third image, what happened to the pink part of the texture on the lower right? The green mat on the lower left also looks slightly different in tone...
Did you use reinhard for those? :)

YAY :D
YAY :D
*please help! my disk's stuck*
YAY :D
...

Posted: Mon May 12, 2008 2:10 am
by CTZn
!!! HURRAY !!!


Me happy !!! Let's see how much ram that takes !!!


Side note:

What disp does is pushing the surface in the direction of the surface normal, so no wonder if you have a sharp edge to tear the mesh ! Set you normals correctly and everything should be fine. I never heard about "fixing" this "issue", but setting proper normals, final dot.

Posted: Mon May 12, 2008 2:39 am
by suvakas
F***ing ace !!!!!
Shifted lens and displacement were my only wishes. Now if you could also manage to fix the fireflies issue somehow, then I see no point in using any other unbiased renderer than Indigo !
Great stuff Ono!

Posted: Mon May 12, 2008 2:51 am
by CTZn
BTW is there an output normal threshold, or is the disp mesh all the way smooth ? A threshold is cool, notably for natural surfaces.

Also a texture or angle threshold: if contrast/angle between two vertices of the original mesh is under that limit, do not subdivide.

Actually there is a lot of different ways to control displacement, wait'n'see !

Posted: Mon May 12, 2008 2:52 am
by Azazeo
Нихера себе!!!
Wow!!! Amazing!..
Will new beta come soon?