Flash物理引擎Box2D应用实例

Flash 物理引擎真的挺酷的,是对于做游戏或者交互设计的人来说。你可以通过像Box2D这样的开源物理引擎,让 Flash 中的物体动起来,碰撞、摩擦、重力这些效果都能实现。比如说,做个跳跃游戏,利用物理引擎就能让小球跳得更真实,碰到地面时还能弹起。

其中,刚体是物理引擎中的基本元素,你的图形对象就能变成“有生命”的物体,具有质量、速度和加速度。碰撞检测则会你判断物体是否相撞,而约束可以限制物体的运动方式,像铰链或滑动关节那样。

,实际应用也广泛,无论是做游戏、互动演示还是创作艺术动画,都能用上。就拿游戏来说,碰撞响应关节功能让角色的运动和互动更加真实。你还可以使用传感器来触发事件,像检测一个物体是否碰到某个区域,但不产生实际的物理反应。

如果你想玩转这些功能,参考一下代码示例就好。PhysTest.as里就是典型的 ActionScript 3 源码,里面包含了初始化物理世界、创建刚体、添加碰撞监听器的代码。你可以拿来直接试试。

zip
Box2DFlashAS3_2.0.2.zip 预估大小:93个文件
file
Main.as 5KB
file
License.txt 920B
file
PhysTest.swf 55KB
folder
General 文件夹
file
FRateLimiter.as 1KB
file
Input.as 9KB
file
FpsCounter.as 3KB
file
HelloWorld.as 4KB
file
PhysTest.fla 22KB
folder
TestBed 文件夹
file
TestStack.as 3KB
file
TestCCD.as 3KB
file
TestRagdoll.as 9KB
file
TestBridge.as 6KB
file
TestCompound.as 5KB
file
TestCrankGearsPulley.as 8KB
file
Test.as 15KB
file
TestTheoJansen.as 7KB
folder
Box2D 文件夹
folder
Common 文件夹
folder
Math 文件夹
file
b2XForm.as 2KB
file
b2Mat22.as 3KB
file
b2Sweep.as 3KB
file
b2Vec2.as 3KB
file
b2Math.as 7KB
file
b2Settings.as 4KB
file
b2Color.as 2KB
folder
Dynamics 文件夹
file
b2Island.as 15KB
file
b2ContactListener.as 2KB
file
b2TimeStep.as 1KB
folder
Contacts 文件夹
file
b2PolyAndCircleContact.as 5KB
file
b2ContactEdge.as 1KB
file
b2ContactResult.as 2KB
file
b2CircleContact.as 4KB
file
b2NullContact.as 1KB
file
b2ContactSolver.as 16KB
file
b2ContactConstraint.as 2KB
file
b2ContactConstraintPoint.as 1KB
file
b2Contact.as 7KB
file
b2PolygonContact.as 5KB
file
b2ContactRegister.as 1KB
file
b2ContactManager.as 7KB
file
b2World.as 34KB
file
b2DestructionListener.as 2KB
folder
Joints 文件夹
file
b2RevoluteJoint.as 18KB
file
b2PulleyJoint.as 21KB
file
b2PrismaticJoint.as 27KB
file
b2PulleyJointDef.as 3KB
file
b2Jacobian.as 2KB
file
b2RevoluteJointDef.as 3KB
file
b2MouseJointDef.as 2KB
file
b2JointDef.as 2KB
file
b2PrismaticJointDef.as 3KB
file
b2GearJoint.as 10KB
file
b2JointEdge.as 2KB
file
b2MouseJoint.as 7KB
file
b2DistanceJointDef.as 3KB
file
b2Joint.as 6KB
file
b2GearJointDef.as 2KB
file
b2DistanceJoint.as 10KB
file
b2ContactFilter.as 2KB
file
b2BoundaryListener.as 1KB
file
b2BodyDef.as 3KB
file
b2Body.as 23KB
file
b2DebugDraw.as 6KB
folder
Collision 文件夹
file
b2Bound.as 2KB
file
b2ContactPoint.as 2KB
file
b2PairCallback.as 1KB
file
b2TimeOfImpact.as 5KB
file
b2Segment.as 3KB
file
b2BroadPhase.as 28KB
file
b2BufferedPair.as 1023B
file
b2BoundValues.as 1KB
file
b2OBB.as 1KB
folder
Shapes 文件夹
file
b2CircleDef.as 1KB
file
b2FilterData.as 2KB
file
b2MassData.as 1KB
file
b2CircleShape.as 7KB
file
b2PolygonShape.as 22KB
file
b2ShapeDef.as 2KB
file
b2Shape.as 9KB
file
b2PolygonDef.as 3KB
file
b2Collision.as 22KB
file
b2Distance.as 15KB
file
b2PairManager.as 11KB
file
b2ManifoldPoint.as 2KB
file
Features.as 2KB
file
b2Pair.as 2KB
file
b2ContactID.as 2KB
file
ClipVertex.as 1KB
file
b2Manifold.as 2KB
file
b2Point.as 1KB
file
b2Proxy.as 1KB
file
b2AABB.as 2KB
file
HelloWorld.swf 48KB
file
HelloWorld.fla 38KB
file
ReadMe.txt 3KB
...
zip 文件大小:274.97KB