package { import de.polygonal.ds.DListNode; import fr.seraf.wow.primitive.WParticle; import mx.core.Application; import org.papervision3d.materials.utils.MaterialsList; public class PhysicsMeshObject extends MeshObject { public var boundedArea:WParticle = null; protected var listNode:DListNode = null; public function PhysicsMeshObject() { super(); } public function startupPhysicsMeshObject(collada:XML, materials:MaterialsList, boundedArea:WParticle):PhysicsMeshObject { super.startupModelObject(collada, materials); this.boundedArea = boundedArea; listNode = Application.application.engineManager.wow.addParticle(boundedArea); return this; } override public function shutdown():void { super.shutdown(); Application.application.engineManager.wow.removeParticle(listNode); boundedArea = null; listNode = null; } override public function enterFrame(dt:Number):void { super.enterFrame(dt); model.x = boundedArea.px; model.y = -boundedArea.py; model.z = boundedArea.pz; } } }