物理サンドボックス
シェイプを作成し、リアルな2D物理演算で相互作用する様子を観察。
あなたが必要としていた物理遊び場
子供の頃、物が落ちるのを見るためだけに物を落としたことを覚えていますか?これは基本的にそれですが、画面上で行われ、何も壊しません。物理サンドボックスを使用すると、オブジェクトを生成し、現実世界を支配するのと同じルールに従って転がり、跳ね、衝突する様子を見ることができます。スコアも勝ち負けもありません。あなたと、いくつかのシェイプと、重力があるだけです。Matter.js上に構築されたこのシミュレーターは、衝突、運動量、力の背後にあるすべての計算を処理するため、楽しい部分に集中できます。
カオスの背後にある科学
ここで見られるすべての跳ね返りや衝突は、実際の物理原則に従っています。シミュレーションは、オブジェクトがリアルに振る舞うように、1秒間に数千回の計算を実行します。
重力はすべてを一定の速度で下に引っ張ります。地球上では毎秒9.8メートルです。ここでは、上げたり下げたり、完全に反転させたりできます。
2つのシェイプが接触すると、エンジンは衝撃の角度、速度、方向を把握し、各オブジェクトがどのように反応すべきかを正確に計算します。
表面は互いに滑るのに抵抗します。そのため、四角形は止まるまで減速するかもしれませんが、円は転がり続けます。
これは弾力性を意味する言葉です。ゴムボールは高い反発係数を持っています。土嚢はほとんどありません。
大きなシェイプは質量が大きいため、動かしたり、他のオブジェクトに大きな力でぶつかったりするのが難しくなります。
教師が物理シミュレーターを愛する理由
教科書でニュートンの法則を読むことと、目の前でそれが展開されるのを見ることは全く別物です。
シェイプを落とせば第一法則が作用します。押せば第二法則が見られます。2つのオブジェクトを衝突させれば第三法則です。方程式は必要ありません。
速く動く円が静止している四角形に激突すると、運動量が移動します。円は減速し、四角形は加速します。実際にそれが起こるのを見ることができます。
画面上部にあるシェイプは位置エネルギーを持っています。落ちるにつれて、それは運動エネルギーに変換されます。床で跳ね返ると、エネルギーの一部が戻ってきます。これは感じることができる物理学です。
風はオブジェクトを横に押します。爆発はそれらを外側に散らします。重力を調整すると、すべての加速方法が変わります。力で遊ぶことは、講義では得られない直感を構築します。
試してみる価値のあること
時間を潰したいですか?このサンドボックスを限界まで試す方法をいくつか紹介します。
倒れる前にどれくらい高い塔を建てられるか見てみましょう。三角形は正しく配置すれば驚くほど安定しています。
重力をゼロに設定し、風のバーストを使用してオブジェクトを推進させます。シェイプが何もない空間を漂うのを見るのは驚くほど平和です。
たくさんの円を生成し、落ち着かせてから爆発ボタンを押します。結果として生じるピンボールのカオスは奇妙に満足感があります。
画面に50個以上のオブジェクトを詰め込み、爆発を引き起こします。オブジェクトが互いに、そして壁に跳ね返る連鎖反応を見てください。
物理エンジンが実際に使用される場所
このサンドボックスを実行しているのと同じ技術は、複数の業界にわたる本格的なアプリケーションを動かしています。
Angry BirdsからBeamNG.driveまで、すべての物理ベースのゲームはこの種のエンジンに依存しています。車がリアルに潰れたり、塔がもっともらしく崩壊したりするのは、物理シミュレーションの働きです。
橋を架けたり車を設計したりする前に、エンジニアは作成物がストレス下でどのように振る舞うかをシミュレートします。物理エンジンは、誰も怪我をすることなく故障箇所を予測できます。
スーパーヒーロー映画のなびくマントやアニメ映画のリアルな髪の動き?物理シミュレーションです。アーティストはパラメータを設定し、数学に動きを任せます。
シミュレーションでのロボットの動きのテストは、物理的なプロトタイプを作成するよりも安価で高速です。企業は、高価な失敗を何十個も製造することなく、設計を反復できます。
内部エンジンについて
Matter.jsは、JavaScriptで書かれたオープンソースの2D物理エンジンです。Liam Brummittによって作成され、剛体シミュレーション、衝突検出、制約システムを処理します。世界中のゲーム開発者、クリエイティブコーダー、教育者によって使用されています。このエンジンはブラウザでスムーズに実行できるほど軽量でありながら、本格的な物理実験に十分な精度を備えています。
最高のパフォーマンスを得るために
物理シミュレーションは計算集約的です。スムーズに動作させる方法は次のとおりです。
オブジェクトが多いほど、衝突計算が多くなります。ラグが発生し始めたら、クリアボタンを押して少ないシェイプで作業してください。
最新のブラウザは古いブラウザよりもこれをうまく処理します。ChromeとFirefoxは一般的に最もスムーズな体験を提供します。
デスクトップコンピュータは、電話やタブレットよりも多くのオブジェクトを処理できます。モバイルの場合は、最大20〜30個のシェイプに留めてください。
単純なシェイプを超えて
このサンドボックスは円、四角形、三角形でシンプルにしていますが、基盤となる技術はほとんどすべてのものをシミュレートできます。プロの物理エンジンは、変形するソフトボディ、流れる流体、揺れるロープ、ドレープする布を処理します。ゲーム開発者はこれらのシステムを使用して、破壊可能な環境、リアルな車両のハンドリング、もっともらしいキャラクターのラグドールを作成します。ここで実験している原則は、AAAゲーム開発やハリウッドの視覚効果にまで拡大します。