UNPKG

@c-frame/aframe-physics-system

Version:

Physics system for A-Frame VR, built on Cannon.js & Ammo.js

48 lines (45 loc) 2.56 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 • Materials AMMO</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="https://cdn.jsdelivr.net/gh/MozillaReality/ammo.js@8bbc0ea/builds/ammo.wasm.js"></script> <script src="../../dist/aframe-physics-system.js"></script> <script src="../components/force-pushable.js"></script> <script src="../components/grab.js"></script> <link rel="stylesheet" href="../styles.css"> </head> <body> <div class="text-overlay"> <p>Bounce simulation with restitution (bounciness) of 1 using the Ammo driver.</p> <p>Ball seems to bounce off to the left after a couple of bounces. Not understood why - inaccuracy in physics simulation, perhaps?</p> </div> <a class="code-link" target="_blank" href="https://github.com/c-frame/aframe-physics-system/blob/master/examples/ammo/materials.html"> view code </a> <a-scene stats="true" environment physics="driver: ammo; restitution: 1"> <a-entity camera look-controls wasd-controls position="0 1.6 0"> <a-entity cursor raycaster="objects:[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" ammo-body="type: static; restitution:1" ammo-shape visible="false"></a-box> <!-- Blocks --> <a-sphere radius="0.25" position="0 4 -2" color="red" ammo-body="restitution:1" ammo-shape force-pushable></a-sphere> </a-scene> </body> </html>