A snow deformer?

Hi, how would you create the deformations on snow when a random object (including a character) falls on it? Or a fist hitting a metal object at a random angle and leaving a dent?

  • I was thinking of some sort of projection mapping from the object?
  • I also wondered if it was possible to capture the motion vectors of the collision object, converting it to a texture and applying it to the world position offset?

You normally cannot modify the mesh directly, so the best way to dent something (also low performance cost) is to apply a different normal map.

IF you are dealing with a character or actor with skeletal controls you can maybe implement Morph Targets to dent his/her armor.

The question is “is it necessary”?
If you expect to see a profile with a dent, and the empty portion, yes.
If you will never see the side - no.

What do I mean by visible from the sides?

Thank you for the response, MostHost. Is it necessary? Well, right now it is mostly an intellectual exercise, but I think it would come in handy in the marketplace. I’m jazzed that the vertices can be offset with a texture. Come to think about it, does UE4 support vector displacement maps?

I just found this from 2014

this is the thread
https://forums.unrealengine.com/development-discussion/rendering/5185-vector-displacement-map

Morph targets are kinda that I believe. it’s a essentially a displacement map that you set a Maximum for within a 3d editor and apply as a “scalar” portion of in engine. They can basically increase and decrease with a simple float variable.
The point is these actually modify the mesh.
The decals would not, so you would never see the gap that’s highlighted in purple even though you have the decal over it.

normally, footprints are done with decals and different normals depending on the weight of the character (you create the decal to intensify based on character mass).

actually curious about this myself just from the side lines, the “random” factor with this interests me can’t see that working with morph targets tbh MostHost, but curious to see where this goes (although i have a few suspects), sorry have no more to offer myself :frowning:

Here is a free tutorial + project download, it uses render targets with tessellation. Click show more for the link in description.

Here is another method that follows the character better. I only have the google drive link for it but it was also free, I just could not find the tutorial link as well. Click “SnowDefProject” next to “Shared with me” toward the top and select download to grab the whole folder…
https://drive.google.com/open?id=1Bx…-pjoobNQJLKyb3

Cool material instance tutorial for tessellation but I think it’s missing something - the gaps aren’t there, you can see the sun making the tracks glossy.

Tessellation info:

Another snow Tessellation tutorial

And You know, it may not be Voxel mesh displacement, but it still seems to look very nice. Check out this weird mess of an examplehttps://youtube.com/watch?v=KRSi8aUdI2Q
There is also this for just the tessellated material explanation.

Technically you could use this version to paint spots on the map, and activate all of the drawing when on the terrain of the designated Snow type. It’s a lot of adaptation of code but I could see that working with a good 4 hours of work…

Thank you for the replies karma4jake and MostHost. This is exactly what I was looking for. It solves the “random” factor. I will definitely look into render targets and tessellation.