UNPKG

@c-frame/physx

Version:

Physics for A-Frame using Nvidia PhysX

52 lines (50 loc) 2.74 kB
<html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no,user-scalable=no,maximum-scale=1"> <title>Examples • Sweeper PhysX</title> <script src="https://aframe.io/releases/1.7.0/aframe.min.js"></script> <script src="https://unpkg.com/aframe-environment-component@1.5.0/dist/aframe-environment-component.min.js"></script> <script src="../../dist/physx.js"></script> <script src="../components/grab.js"></script> <script src="../components/rain-of-entities.js"></script> <script src="../components/force-pushable.js"></script> <link rel="stylesheet" href="../../styles.css"> </head> <body> <div class="text-overlay"> <p>Blocks fall at random from the sky. The sweeper wall sweeps them away.</p> </div> <a class="code-link" target="_blank" href="https://github.com/c-frame/physx/blob/main/examples/sweeper/index.html"> view code </a> <a-scene environment rain-of-entities="components: height|0.2, width|0.2, depth|0.2, physx-body, physx-force-pushable, color|#39BB82; spread: 3" physx="autoLoad: true; delay: 1000; useDefaultScene: false;stats: panel"> <!-- worker version (sweeper not working): physics="driver: worker; workerFps: 60; workerInterpolate: true; workerInterpBufferSize: 2;"--> <!-- Player --> <a-entity camera wasd-controls look-controls position="0 0.6 0"> <a-entity cursor raycaster="objects:[physx-force-pushable]" position="0 0 -0.5" geometry="primitive: circle; radius: 0.01; segments: 4;" material="color: #FF4444; shader: flat"></a-entity> </a-entity> <a-entity id="left-hand" ammo-body="type: kinematic; emitCollisionEvents: true" ammo-shape="type: sphere; fit: manual; sphereRadius: 0.02;" hand-controls="hand: left" grab></a-entity> <a-entity id="right-hand" ammo-body="type: kinematic; emitCollisionEvents: true" ammo-shape="type: sphere; fit: manual; sphereRadius: 0.02;" hand-controls="hand: right" grab></a-entity> <!-- Terrain --> <a-box width="75" height="0.1" depth="75" physx-body="type: static" visible="false"></a-box> <!-- Sweeper --> <a-box width="20" height="1" depth="1" animation="property: position; from: 0 0.5 25; to: 0 0.5 -75; dur: 50000; loop: true; easing: linear" material="color: red; opacity: 0.5" physx-body="type: kinematic"></a-box> </a-scene> </body> </html>