Snake simulation

   3241   2   0
User Avatar
Member
30 posts
Joined: Feb. 2018
Offline
This work is one of the way to create a snake wave movement animation by DOP context (research a simulation of snake`s locomotion by dynamic tools of Houdini).

According to research snakes use synchronized muscle work for this movement and different body friction coefficients for forward movement, backward movement and sideways movement. Because how to simulate every muscle and flakes position is not clear for me so I have used a little trick with velocity (@v) to simulate fulcrums which the snake uses to move (you can see the fulcrums on the traces left by natural snake with this movement) exactly I removed negative value of @v.x and set to 0 sideways movement (@v.z) at these points. If I remove this external influence on velocity it is possible to watch why snake doesn`t use this method to move on flat and smooth surfaces (like glass). Forward movement (like others movement here) is calculated due to body bending only. The snake`s body is a chain of packed Convex Hall primitives with different constraints they are used like muscles. Two wave functions for horizontal and vertical movement direct of constraint work (is possible change speed, amplitude,period and other). Changing these parameters I can get something madness or reverse movement which is used for some snake robot or forward movement. Of course I have used packed primitives and it is very easy convert to spline IK animation with bones.
It is not so controlled way of animation like spline animation but it is allow to create more natural animation more quickly. It was a good experience!

Attachments:
Front_move.mp4 (2.2 MB)
Reverse_move.mp4 (10.2 MB)
Chaos_move.mp4 (11.0 MB)

User Avatar
Member
5 posts
Joined: Sept. 2019
Offline
Do you reckon it would be possible to port something like this to UE4?
User Avatar
Member
30 posts
Joined: Feb. 2018
Offline
Unfortunately I know nothing about Unreal Engine I have never worked in there and Unity too. If you think about animation only I suppose that you can try to use one of popular formate (like fbx) I think UE will read this file. But if you think about simulation in UE I can't say anything, sorry. For me it is only a hobby I don't know whole gamedev pipeline and don't use it. It is just an entertainment for me.
  • Quick Links