前提・実現したいこと
matter.jsにdevicenotionを使って取得した傾きを反映し、スマホを傾けたらオブジェクトも動くようにする。
発生している問題・エラーメッセージ
問題なく動いているのですが、だんだん重くなっていきます。
該当のソースコード
JavaScript
1```function getAccel(){//ボタンを押された時 2 DeviceMotionEvent.requestPermission().then(response => { 3 if (response == 'granted') { 4 window.addEventListener('deviceorientation',(event) => { 5 var deviceOrientation = window.orientation; 6 window.addEventListener("devicemotion", function devicemotionHandler(event) { 7 //重力加速度 (物体の重力を調節) 8 var xg = event.accelerationIncludingGravity.x / 10; 9 var yg = event.accelerationIncludingGravity.y / 10; 10 11 // 傾きに応じて重力を調節 12 switch (deviceOrientation) { 13 case 0: 14 engine.world.gravity.x = xg + event.acceleration.x; 15 engine.world.gravity.y = -yg + event.acceleration.y; 16 break; 17 case 90: 18 engine.world.gravity.x = -yg - event.acceleration.x; 19 engine.world.gravity.y = -xg + event.acceleration.x; 20 break; 21 case -90: 22 engine.world.gravity.x = yg + event.acceleration.x; 23 engine.world.gravity.y = xg - event.acceleration.x; 24 break; 25 case 180: 26 engine.world.gravity.x = -xg - event.acceleration.x; 27 engine.world.gravity.y = yg - event.acceleration.x; 28 } 29 30 if ( window.navigator.userAgent.indexOf('Android') > 0 ) { 31 engine.world.gravity.x = - engine.world.gravity.x; 32 engine.world.gravity.y = - engine.world.gravity.y; 33 } 34 }); 35 ///////////以下省略 36 }); 37 } 38 }); 39} 40 41
試したこと
レンタルサーバーの忍者ホームページ(無料版)を使っていることもいけないのでしょうか‥?(ディスク容量500MB)
あなたの回答
tips
プレビュー