Wet map - water texture causing dark shadows on geometry,

I’m trying to get the wet map working with this hand washing animation - you can see the two images below, I use the same water texture as from the “tap” preset. A simple transparent material.

In the white version, I have turned off refractions, and you can see how the material spreads.

The clear water version, has a severe shadowing effect over the fingers - it looks like the character has necrosis.

Although the skin material is a Fast sss material, the same issue happens if I use a simply flat colour for the skin - so I think the refraction is causing issues with the geometry, possibly because it is intersecting the hand geometry and refracting in a weird way.

So my question is - how do I get a wet, watery surface on geometry from a wet map, without this happening? what materials can you use to make geometry look wet?

Can anyone help please?


Thanks for the detailed info! Does the same darkening happen if you hide the liquid simulator and let just the hands geometry with the wetmap render? Just for the test, would it be possible to change the liquid render mode to Isosurface, set the hands geometry as Render Cutter and check Inverse Cutter - this will ensure the liquid will not penetrate the hands geometry (unless if the hands mesh is open, in which case the cutter won’t work correctly).

So, you can see attached the image with the sim hidden - no difference.

The hands were not solid objects, so I put a slive through the ends and capped the holes to give it a nice geometry finish - (see screen grab attached).

There is also an iso surface render - but I can’t choose the hands as cutter objects as it says I am creating a circular reference - I also cannot make a duplicate set of arms to use as a cutter, because I get the same circular reference error.

In fact it won’t let me have anything to do with the geometry, even to add to en exclude list - I just keep getting circular reference errors.

Maybe it would help if I send the scene?



If possible, yes - let’s see what we can do to make it better :slight_smile:

Thank you!

I sent an email last night to support - I hope they forward it on to you - let me know how you go!

thanks

Roger that, will keep you posted!

Hey, got the scene, will check it and get back to you!

Hey, we have checked the scene and it will need to tweaks to make it work.

When you blend between the two materials with the wetmap - if you use the same material as the liquid for the coat - this will make the hands refractive where the wetmap is (this why you get black parts).

What you need to do is to make a second material for the wet hands that you will use as a coat. In this case you need only reflection (black color for the diffuse and white for the reflection) as you want to make the hands a bit more reflective where they are wet.

Then in the VRayBlendMtl turn on the additive mode so the reflection will be added over the hands material and you should get a correct result.

Thanks for that - I got that problem solved… however, there’s a new one.

I upload two frames - see the sudden burst in the animation? like the pressure just went up insanely!


Hey,

Which Phoenix version do you use? Does a latest nightly build still exhibit this issue?

Cheers,

Hiya - I installed the nightly build, and the problem actually got worse:

It’s almost like this guy is in control now:

I also increased the steps per frame to 30 - I had been going up to 60 but I was getting crashes.

If I send you the scene would you be able to have a look at it?

I also note I am having the same issue as this thread

https://forums.chaosgroup.com/forum/…s-very-quickly

Due to deforming surfaces deleting the wet maps.

This was an old job I thought I could edit for the client really quickly, but it’s turning out to be a big one!

here’s the scene

Hey,

I’m on it. Will ping you when I know more about the issue.

Cheers!

Hey,

Got the explosions here as well - currently working to figure out the issue. The wetmap on the hands seems to behave well with the new algorithm and it will be in tomorrow’s nightly builds.

Will update you when there’s progress on the explosions…

Cheers,

Hey again,

Figured out the reason for the issue and it seems like you’ll have to modify the geometry in order to fix it. Basically these are the 3 rules of thumb when passing a geometry for simulation if you want to make sure you won’t have random exploding liquid:
- The geometry must be water-tight - it must not be a plane or any other deformed sheet of geometry and it must not have holes in it.
- The geometry must not have flipped normals.
- The geometry must not self-intersect or have overlapping faces - in your case both hands are a single mesh and are interpenetrating almost constantly. Unfortunately even when breaking it apart into two separate meshes, around frames 90-95 fingers are still interpenetrating.

In the very near future we’ll have warnings for such issues and hopefully we’ll add a geometry mode that will automatically treat any geometry as just a shell, in which all the above cases would be good for simulation..

Hope this helps, cheers!

I don’t understand why the water is getting to the inter penetrating segments though.

In any case, it looks like it would be impossible for phoenix to do this then, because there’s no way anyone can animate hands washing without some degree of intersection right?

Hey,

I suggest to split the hands into two separate meshes and give it a try this way. The problem with open/overlapping geometries is that the solver velocity field becomes incorrect because voxels which are outside the geometry start acting as if they are inside and vice versa - this might cause accumulating of high velocities or might not - depends on the topology of the scene. This is why often one can get away even with problematic geometries without even noticing - because explosions don’t necessarily happen all the time there is an issue. In this case the bulk of issues happen only when the two hands intersect - the fingers interpenetrating messes up 1 or 2 voxels for 3-4 frames, while the intersecting hands created much more havok than this :slight_smile:

I hope not long from now we’ll be able to introduce a robust voxelization mode that would be able to deal with any kind of geometries so you won’t have to worry about such issues.

Cheers!

I’m not sure how to split them into separate geometry? Like with point caches maybe?

I guess you said you tried it and or didn’t work? Maybe there’s a way to I can go frame by frame for theatre offending sections?

Would making one a boolean cutting the other work?

And can you recommend a way to determine if two objects are intersecting if they are separate geometry?

Thanks for your help by the way!

Would xmesh or alembic (cached to one object) allow phoenix to see it as combined?