import"./modulepreload-polyfill-B5Qt9EMX.js";import{d as p,k as m,M as h,c as f,j as u}from"./world-KhDGgEOv.js";function x(s){const{scene:y,physics:i,rapier:d}=s,c=new p(new m(60,1,60),new h({color:"#e8d9b8"}));c.position.y=-.5,c.receiveShadow=!0,y.add(c),i.createCollider(d.ColliderDesc.cuboid(30,.5,30).setTranslation(0,-.5,0));const o=new p(new f(.6,32,24),new h({color:"#F5F5F7",roughness:.35}));o.castShadow=!0,y.add(o);const a=i.createRigidBody(d.RigidBodyDesc.dynamic().setTranslation(0,3,0));i.createCollider(d.ColliderDesc.ball(.6).setRestitution(.4).setFriction(1),a);const e=new Set;addEventListener("keydown",n=>e.add(n.code)),addEventListener("keyup",n=>e.delete(n.code)),s.addSystem({update(){const t={x:0,z:0};(e.has("KeyW")||e.has("ArrowUp"))&&(t.z-=18),(e.has("KeyS")||e.has("ArrowDown"))&&(t.z+=18),(e.has("KeyA")||e.has("ArrowLeft"))&&(t.x-=18),(e.has("KeyD")||e.has("ArrowRight"))&&(t.x+=18),a.applyImpulse({x:t.x/60,y:0,z:t.z/60},!0);const l=a.translation();o.position.set(l.x,l.y,l.z);const r=a.rotation();o.quaternion.set(r.x,r.y,r.z,r.w)}}),s.onFrame(()=>{s.camera.lookAt(o.position)})}const w=await u(document.getElementById("app"));x(w);w.start();