Impact Deformable - Dynamic mesh deformation by collision [released]

Impact Deformable implements an automatic system of dynamic mesh deformation by impact in a single script.

Demonstration:

Cube and Sphere: Video / Live

Metal Rain: Video / Live

Car Derby: Video / Live

Features:

  • Individual object hardness configurable.
  • Mesh can be repaired (restored) by specified amount with a single function call.
  • Repair can also be delimited inside an area (think of a robot that repairs sections of a starship one at a time).
  • Works with any kind of collider.
  • Optionally updates MeshColliders components.
  • Delayed mode for low-end cpu targets (mobiles).
  • Maximum vertex distance from original position can be specified.
  • Deformed vertex color change.

Released at asset store
http://u3d.as/content/arcadium-playware/impact-deformable
Price: 20$

Thank you.

L-Tyrosine
Arcadium Playware
l-tyrosine@arcadiumplayware.com

WOW ! Fantastic !
I like the effects and the videos for a perfect advertisement on your product…

6R

Impressive, does the $20 include full source code?

Really cool!

Thanks =)

Yes. There is a single script and is all that is needed to work.

Version 1.1 released with Hardness Map support that allows to set harder and softer parts on objects:

At asset store:
http://u3d.as/content/arcadium-playware/impact-deformable
Price: 25$

Thank you.


L-Tyrosine
Arcadium Playware
l-tyrosine@arcadiumplayware.com

first of all nice work. can we adjust the amount of subdivisons to get better detail or better performance.

No vertex is created or destroyed. Just vertices on original mesh are deformed so deformation performance/quality are tied with mesh vertex count.
About performance, the delayed mode can be used where deformations are accumulated and applied n times/sec rather than on each impact. This can be a good choice in the case of targeting for mobile devices or scenarios with a lot of collisions at same time.

Hey man,
Is something like drilling or sculpting possible with your package? How about the max depth amount?

Hi!

Impact Deformable does not create any new geometry on mesh, it just deform existing vertices so it would be capable only of basic sculpting. And drilling is really impossible for the same reason.

There is a property “MaxVertexMov” that limits the distance that a vertex can move from its origin position.

Great then

Yeah, I figured, I read the latter posts and noticed that it just manipulated vertices around :wink: Sorry for the confusion

What I mean is if it is possible to push or pull vertices in or out the mesh (for example) according to their normals or a second mesh (a morph like process) using a mouse or … I don’t, on touch devices maybe? :slight_smile:

I see. Would be possible, albeit not trivial, to force fake Collisions built from mouse or touch input into the core functions of this script. But I guess that a best way to accomplish this would be to build it from scratch instead of using Impact Deformable, for the best it has to offer in this case is the reference of the “hows to” of mesh manipulation (specifically the optimizations implemented in DelayedMode for mobile devices).

Thank you for your honest answer, I’ll dig more into the subject :slight_smile:

Hi,

Will this asset allow holes to be created by deformations after a set threshold? For example (like the metal rain demo) keep throwing a ball at around the same spot and have it eventually break through completely?

Hi!
Currently, no… It would require to form new geometry to achieve such effect.

Hi,

How does the material/texture on a object behave? Are there any previews of this? I would need it for simple and small deformations.

Thanks

Hi!

There are no changes regarding material/texture on object, works as if deformation haven’t take place. Impact deformable works on vertex data only:

Please let me know if you need more clarifications.

Looks like just what I need. I will try it out! Thanks for the fast reply.

Hello, is there a way to completely repair the mesh at the press of a button(or a function called) instead of clicking over the area? I’ve been looking over the readme and such but am not getting any results.

Yes. There are 2 Repair methods in overload at Deformable.cs/js:

public void Repair (float repair)
public void Repair (float repair, Vector3 point, float radius)

The first one will repair the entire mesh by the given proportion (0 to 1).