Author Topic: 2.5d Displacement Playground!  (Read 17521 times)

2019-10-10, 17:04:05
Reply #30

rowmanns

  • Corona Team
  • Active Users
  • ****
  • Posts: 1892
  • Corona for 3ds Max QA Team
    • View Profile
It might be that situation with shading is not as black and white as it seemed to me at first. I want to make more tests before sending you a scene.

Meanwhile, i found that with vector displacement, shading difference is very obvious and this time 2.5D looks much better. Scene attached.

UPD: it's autobump! If used with vector displacement, it causes severe artifacts. I wonder if Corona could automatically detect when VDM is used and disable autobump?

Hi Romullus,

In my tests this only happens with the old displacement + autobump. I tested this in the upcoming daily and the artifacts are not produced with the new 2.5D displacement + autobump.

Can you confirm this works for you with the 2.5D displacement + autobump in the upcoming daily build?

Thanks
Please read this before reporting bugs: How to report issues to us!
Send me your scene!

2019-10-10, 19:36:32
Reply #31

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
I will check it... if i won't forget :]
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 10:45:22
Reply #32

rowmanns

  • Corona Team
  • Active Users
  • ****
  • Posts: 1892
  • Corona for 3ds Max QA Team
    • View Profile
Ok, so i was pretty unsure which displacement method has better shading, so i decided to compare them to real geometry... turns out they both are wrong, very wrong. As you can see from silhouette, all three spheres are pretty much equal, but the shading is vastly different.

I tried to make comparison as fair as possible - autobump was disabled and screen size was adjusted, so that each sphere renders at about 3M triangles.

Uploaded scene name is: 1570643508_displacement-shading.7z

Hi Romullus,

Thanks for the attached scene, however the ball is displaced in a different size for the Corona and Max displacement methods.. Did you have the same issue?

Thanks,

Rowan
Please read this before reporting bugs: How to report issues to us!
Send me your scene!

2019-10-11, 10:50:33
Reply #33

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
Hmm no, size should be exactly the same between them. The only thing i changed, was displacement screen size to keep triangles count roughly the same, IIRC it was 1 px for 2.5D and 1.4 px for classical. Maybe the difference is because of system units? I'm working in centimeters.
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 11:11:13
Reply #34

rowmanns

  • Corona Team
  • Active Users
  • ****
  • Posts: 1892
  • Corona for 3ds Max QA Team
    • View Profile
Hi,

That's really strange, this is the result I am getting: https://corona-renderer.com/comparer/NCVpAi

Rowan
Please read this before reporting bugs: How to report issues to us!
Send me your scene!

2019-10-11, 11:29:58
Reply #35

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
This looks strange indeed. I will check my scene later today - maybe unknowingly i did some changes before sending you the file.
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 11:51:07
Reply #36

Fluss

  • Active Users
  • **
  • Posts: 553
    • View Profile
To get a fair comparison, you'd better set a high displacement value in world unit, like 999cm, and manage the tessellation amount with something like a Turbosmooth or a subdivide modifier. That way, geometry will not be subdivided by the displacement algorithm, only displaced using existing topology. You should end up with the exact same polycount.
« Last Edit: 2019-10-11, 11:54:41 by Fluss »

2019-10-11, 11:59:35
Reply #37

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
Hmm, but would that really make a fair comparison? I think it's more important to keep the test closer to real world scenario. If shading issue is related to tesselation, then we shouldn't try to eliminate it. On the other hand, it could be interesting to try your described setup and see if that would make any difference.
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 12:05:25
Reply #38

Fluss

  • Active Users
  • **
  • Posts: 553
    • View Profile
That's how I made my tests and the shading issue is not related to the subdivision method. I bet on some sort of smoothing (or no smoothing) applied after the displacement of geometry.
Between tests, the geometry normals passes are exactly the same (ie same topology) but the shading normals passes are not.

That said, I still can't figure out which one looks the best.
« Last Edit: 2019-10-11, 12:11:15 by Fluss »

2019-10-11, 12:12:54
Reply #39

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
[..] however the ball is displaced in a different size for the Corona and Max displacement methods. [..]

Checked my scene, but it works as expected. Maybe you forgot to turn off modifier or displacement map at some point? Anyway, i slightly modified the scene and made it more prone to errors. Now, it's simply matter of hiding unhiding layers. Please see if the difference is still there.

1570788823_displacement-shading-02.7z
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 12:29:25
Reply #40

rowmanns

  • Corona Team
  • Active Users
  • ****
  • Posts: 1892
  • Corona for 3ds Max QA Team
    • View Profile
[..] however the ball is displaced in a different size for the Corona and Max displacement methods. [..]

Checked my scene, but it works as expected. Maybe you forgot to turn off modifier or displacement map at some point? Anyway, i slightly modified the scene and made it more prone to errors. Now, it's simply matter of hiding unhiding layers. Please see if the difference is still there.

1570788823_displacement-shading-02.7z

The new scene works great. Thanks!
Please read this before reporting bugs: How to report issues to us!
Send me your scene!

2019-10-11, 15:51:53
Reply #41

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8779
  • Let's move this topic, shall we?
    • View Profile
    • My Models
It might be that situation with shading is not as black and white as it seemed to me at first. I want to make more tests before sending you a scene.

Meanwhile, i found that with vector displacement, shading difference is very obvious and this time 2.5D looks much better. Scene attached.

UPD: it's autobump! If used with vector displacement, it causes severe artifacts. I wonder if Corona could automatically detect when VDM is used and disable autobump?

Hi Romullus,

In my tests this only happens with the old displacement + autobump. I tested this in the upcoming daily and the artifacts are not produced with the new 2.5D displacement + autobump.

Can you confirm this works for you with the 2.5D displacement + autobump in the upcoming daily build?

Thanks

Hi Rowan,
I can confirm this, my findings are exactly as yours - bug happens only with the old displacement + autobump.
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2019-10-11, 15:52:01
Reply #42

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12708
  • Marcin
    • View Profile
Can you guys redo your shading tests with 10.10 build with autobump on? It should be better now.

Adding some more tests. This time it was more about "get the same or better quality with lower requirements".

V4 defaults settings (3px) vs 10.10 defaults settings (2px)
30 minutes
Passes: 29 vs 31
RAM: 8 vs 5.6
Parsing: 13.3 vs 6
https://corona-renderer.com/comparer/OtMzh9

V4 vs 10.10 - 1px displacement
Pardon the quality. I only wanted to see the numbers for this one.
RAM: 20.5 vs 6.8
Parsing: 102.9 vs 14
https://corona-renderer.com/comparer/7v97B2

Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2019-10-11, 16:55:18
Reply #43

Fluss

  • Active Users
  • **
  • Posts: 553
    • View Profile
Hi Maru,

I already tested that build and shading inconsistencies remain. Auto-bump was deactivated tho, as I see no point activating it for comparing shading behavior. It will just make it harder to see.

2019-10-11, 16:58:14
Reply #44

Fluss

  • Active Users
  • **
  • Posts: 553
    • View Profile
Btw, is there a way to upload images that use your comparer tool?