Skip to main content
Add reflection
Source Link
Rich Sedman
  • 45.2k
  • 2
  • 109
  • 233

EDIT: From Robin Betts suggestion as to reflections, it's relatively easy to add a 'hard edge' to the grid where the vertexes are fixed - and this results in reflections from the boundary. This can be achieved by using the Total output of the Edges of Vertices node - as this will be 4 for any vertex in the bulk of the grid and less than 4 for any edge or corner vertex (which will be missing one or more neighbours) - see the selected nodes in the following image :

hard edge

This results in the wave being reflected from the edge :

reflected wave

Notice how the circular wave is reflected (upside down) behind the main wavefront.


EDIT: From Robin Betts suggestion as to reflections, it's relatively easy to add a 'hard edge' to the grid where the vertexes are fixed - and this results in reflections from the boundary. This can be achieved by using the Total output of the Edges of Vertices node - as this will be 4 for any vertex in the bulk of the grid and less than 4 for any edge or corner vertex (which will be missing one or more neighbours) - see the selected nodes in the following image :

hard edge

This results in the wave being reflected from the edge :

reflected wave

Notice how the circular wave is reflected (upside down) behind the main wavefront.

Added details of affecting simulation based on proximity of another object
Source Link
Rich Sedman
  • 45.2k
  • 2
  • 109
  • 233

EDIT : Just to prove that it's possible to affect this based on mesh proximity, here's a bit of a dirty hack to the nodes to use the position of another mesh (animated to collide with the surface) to affect the velocity of the grid :

mesh proximity hack

final mesh proximity


EDIT : Just to prove that it's possible to affect this based on mesh proximity, here's a bit of a dirty hack to the nodes to use the position of another mesh (animated to collide with the surface) to affect the velocity of the grid :

mesh proximity hack

final mesh proximity

added 115 characters in body
Source Link
Rich Sedman
  • 45.2k
  • 2
  • 109
  • 233

You can add some damping to the motion by adding a Multiply node before storing the new Velocity - eg, to multiply by 0.99 to damp the velocity by 1% each step. This will calm the motion over time. Here's the final result with increased grid resolution :

final result - higher res

You can add some damping to the motion by adding a Multiply node before storing the new Velocity - eg, to multiply by 0.99 to damp the velocity by 1% each step. This will calm the motion over time. Here's the final result :

You can add some damping to the motion by adding a Multiply node before storing the new Velocity - eg, to multiply by 0.99 to damp the velocity by 1% each step. This will calm the motion over time. Here's the final result with increased grid resolution :

final result - higher res

added 16 characters in body
Source Link
Rich Sedman
  • 45.2k
  • 2
  • 109
  • 233
Loading
Source Link
Rich Sedman
  • 45.2k
  • 2
  • 109
  • 233
Loading