Physics lib

BlitzMax Forums/BlitzMax Programming/Physics lib

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

very easy to use, its all object based. heres the setup code for the first sample i posted (not the current one)

Local Physics_Obj:Photon_Physics_Lib = New Photon_Physics_Lib

Local tmpparticle:Photon_Physics_Particle[7]
tmpparticle[0] = Physics_Obj.AddParticle([200.0,100.0,0.0])
tmpparticle[1] = Physics_Obj.AddParticle([250.0,100.0,0.0])
tmpparticle[2] = Physics_Obj.AddParticle([250.0,150.0,0.0])
tmpparticle[3] = Physics_Obj.AddParticle([200.0,150.0,0.0])
tmpparticle[4] = Physics_Obj.AddParticle([200.0,200.0,0.0])
tmpparticle[5] = Physics_Obj.AddParticle([200.0,250.0,0.0])
tmpparticle[6] = Physics_Obj.AddParticle([200.0,300.0,0.0])

Physics_Obj.AddConstraint([tmpparticle[0],tmpparticle[1]])
Physics_Obj.AddConstraint([tmpparticle[1],tmpparticle[2]])
Physics_Obj.AddConstraint([tmpparticle[2],tmpparticle[3]])
Physics_Obj.AddConstraint([tmpparticle[3],tmpparticle[0]])

Physics_Obj.AddConstraint([tmpparticle[0],tmpparticle[2]])
Physics_Obj.AddConstraint([tmpparticle[1],tmpparticle[3]])

Physics_Obj.AddConstraint([tmpparticle[3],tmpparticle[4]])
Physics_Obj.AddConstraint([tmpparticle[4],tmpparticle[5]])
Physics_Obj.AddConstraint([tmpparticle[5],tmpparticle[6]])


then just call Physics_Obj.Update() in the main loop
edit: there is also now another option in the AddConstraint that enables you to make softbodies and all kinda squishy maddness.