Buoyancy

Blitz3D Forums/Blitz3D Beginners Area/Buoyancy

I would use sin/cos that is multiplied by a decreasing energy value "e". Additionally the sinus index "a" may increase/loop faster and faster (like in a rubber relaxing effect).
aspeed#=1.0
e#=2.0
while e>0.1
 a#=(a + aspeed) mod 359
 aspeed=aspeed*1.01
 e=e*0.975
 positionentity cube,0,sin(a)*e,0
 renderworld()
 flip
wend