衝突: 0
制御点をドラッグで移動可能

3次ベジエ曲面と球の衝突シミュレーションを作成します。ベジエ曲面と球を三角形メッシュで表現し、三角形同士の交差判定を実装します。3次ベジエ曲面と球の衝突シミュレーションを作成しました。 **主な機能:** 1. **3次ベジエ曲面** - 4×4の制御点で定義 - 4隅は水平面上に配置し、中央部分を凹ませた形状 - 三角形メッシュに分割(解像度15×15) 2. **球の物理シミュレーション** - 重力による自由落下 - UV球として三角形メッシュで表現(8×8セグメント) - 反発係数を考慮した衝突応答 3. **三角形同士の交差判定** - 各フレームで球とベジエ曲面の全三角形ペアをチェック - 境界球による早期棄却で高速化 - 平面の符号付き距離テストで正確な交差判定 4. **可視化** - 3D→2D投影でリアルタイム描画 - 奥から手前への描画順でソート - ベジエ曲面は緑、球は赤で表示 5. **操作** - リセットボタン:球を新しい位置から落下 - 一時停止/再開ボタン - 衝突回数と三角形判定数を表示 球がベジエ曲面に衝突すると跳ね返り、物理的にリアルな動作をします。

ベジエ曲面の制御点とコントロール多角形を表示し、マウスドラッグで編集できるように機能を追加します。改良版を作成しました! **追加された機能:** 1. **制御多角形と制御点の表示** - 青い線で制御多角形(4×4グリッド)を表示 - オレンジ色の点で制御点を表示 - チェックボックスで表示/非表示を切り替え可能 2. **マウスドラッグによる制御点の編集** - 制御点をクリック&ドラッグで移動可能 - XZ平面上でのみ移動(Y座標は固定) - リアルタイムでベジエ曲面の形状が変化 3. **貫通しない衝突処理** - 球の中心と各三角形の最短距離を計算 - 球が曲面に侵入した場合、外側に押し出し - より正確な衝突応答を実装 4. **画面サイズ** - 600×480ピクセルに固定 - センタリング表示 **操作方法:** - 制御点(オレンジの点)をドラッグして曲面の形状を変更 - 球が変更された形状に沿って落下・跳ね返り - リセットボタンで球を新しい位置から落下 制御点を動かすことで、様々な形状の曲面を作り、球の動きを楽しめます!