編集できる範囲を指定する
どのオブジェクトを分離し、命名し、編集可能にしておくか指定しましょう。見た目が立派でも、中身が外殻だけでは使えない場合があります。
「インタラクティブ3Dロボットハンドのピアノ演奏デモ」は、Three.js, TypeScriptをテーマにGPT-6 Astraで制作した3D作例です。実際の仕上がりを確認し、自分のプロジェクトに合わせてプロンプトを調整できます。
同じキャラクターを、二つの実際の制作方法で比較しています。結果は課題によって異なります。
詳細に作り込んだ5本指のロボットハンドがミニチュアピアノを演奏する、完全なブラウザベースのデモを構築してください。画面上の指の動き、実際の鍵盤のストローク、生成される音、演奏タイミングは、因果関係に基づいて連動する必要があります。評価に使える時間内で、見た目の完成度が高く、インタラクティブなアプリケーションを提供してください。 1. 体験:精密にモデリングしたロボットハンド、関節可動する指、見える手首機構、MIDIノート60〜84に対応する25鍵のキーボードを配置した、全画面の3Dシーンを使用してください。黒鍵と白鍵の形状をリアルに再現し、鍵盤を個別に動かせるようにします。指先パッドと洗練されたマテリアルも含めてください。上方、演奏者側、指先のクローズアップ用カメラを用意します。ユーザーが再生を有効にした後、音声を同期再生してください。 2. 共通の音楽入力:MIDIノート番号を正準データとして使用してください。96 BPMで、次のイベントを再生します。表記は(開始拍、ノート、拍単位の長さ)です:(0,60,0.4)、(0.5,64,0.4)、(1,67,0.4)、(1.5,64,0.4)、(2,62,0.4)、(2.5,65,0.4)、(3,69,0.4)、(3.5,65,0.4)、(4,60,0.4)、(4.5,60,0.4)、(5,60,1)、(5,64,1)、(5,67,1)。最後の3つのイベントは同時に鳴るコードです。確立されたパーサーを使った標準MIDIファイルのインポートにも対応してください。 3. ハンド制御:指を個別に関節可動させ、手首も動かせるようにモデリングしてください。到達可能な指の割り当て、接近動作、押下、保持、離鍵、同音反復のアーティキュレーション、コード演奏を計画します。指は隣の鍵盤にめり込んだり、不自然に跳躍したりせず、正しい鍵盤に接触しなければなりません。逆運動学と関節可動域の制限を使用してください。計画した指の割り当てを表示し、個々の動きを手動で確認できるようにします。 4. 発音の因果関係:対応する鍵盤が、指の接触によって、仕様として明示した押下しきい値を通過した場合にのみノートオンイベントを生成してください。離鍵時にノートオフを生成し、チャタリングを防ぐためにヒステリシスを設けます。MIDIイベントは演奏計画の目標であり、独立した音声再生トラックではありません。幾何学的な接触に基づく鍵盤機構を採用しても構いませんが、その場合は明示してください。完全な接触ダイナミクスを使用しても構いません。MIDIイベントがスケジュールされたというだけで鍵盤が動いてはなりません。 5. タイミング:一貫した音楽クロックを使用し、実際に鍵盤がトリガーされたイベントを目標イベントと比較してタイムスタンプしてください。音声のスケジューリングとレンダリングのタイミングを考慮します。テンポ、トランスポーズ、再生、一時停止、再起動、ループ、スローモーションによる確認を操作できるようにしてください。一時停止または再起動時には、アクティブなノートを適切に解放する必要があります。再生速度を落としても、指、鍵盤、音声の同期を維持してください。 6. 診断:目標ノート、計画した指、実際にトリガーされたノート、発音開始タイミングの誤差を、整列したタイムライン上に表示してください。ノート抜け、余分なノート、音程違い、同音反復の失敗、ノートのスタックを報告します。各鍵盤をどの指先が押下しているかを示す接触検査オーバーレイを用意してください。単なる近似的なハンドアニメーションではなく、計画が成功したことを判別できる証拠を記録します。 7. 検証:メロディ、同音反復、最後のコードを個別に評価してください。誤ったノートや抜けをゼロにし、発音開始タイミングの95パーセンタイル誤差を50ミリ秒未満、最後のコードの発音開始時刻のばらつきを50ミリ秒未満にすることを目標とします。目標を達成できなかった場合も、実測値を報告してください。指の駆動を無効にするテストを用意します。スコアの進行は続いても構いませんが、押されていない鍵盤からノートが生成されてはなりません。 8. 納品:Three.js、TypeScript、適切な音声API、確立されたパーサーまたは数値計算ライブラリを使用してください。実行可能なアプリケーション、ソースコード、再現可能な音楽フィクスチャ、アセットまたは生成スクリプト、起動手順を納品します。ブラウザ音声、操作系、カメラビュー、デスクトップおよびモバイルレイアウト、繰り返し再生を検証してください。表示するパフォーマンス上の主張はすべて、実測した挙動に基づくものとします。
プロンプトのポイント
Three.js, TypeScript, 3Dシーン を題材にした GPT-6 Astra の 3D 作例「インタラクティブ3Dロボットハンドのピアノ演奏デモ」を見てみましょう。作者の原文プロンプトか、公開情報を基にした制作指示かは、出典の区分で確認できます。
中心となる完成形を保ち、カメラ、操作、照明、成功時にできることを指定しましょう。見た目の細部を足す前に、まず動作を確認します。
どのオブジェクトを分離し、命名し、編集可能にしておくか指定しましょう。見た目が立派でも、中身が外殻だけでは使えない場合があります。
シーンを実行して目に見える不具合を確認し、フレームレート、操作、配置の具体的な基準を満たすまで繰り返すよう求めましょう。
大きな世界は地区、アセンブリ、節目に分け、各部分を確認してから範囲を広げましょう。
プロンプトでゲームやシーンを作ったら、そこに登場するキャラクターや小物も磨きましょう。Tripo で精細なアセットを作ってシンプルな仮モデルを差し替えると、世界がより生き生きとします。
作者が公開した作品紹介を基に、再利用できる制作指示としてまとめています。非公開のプロンプトをそのまま再現したものではありません。
生成した怪獣モデルと効果音を使い、怪獣作品に着想を得た Three.js ゲームを作成してください。巨大な戦闘が分かりやすく、怪獣の大きさが伝わる環境を構築してください。
リギング前に、Tripoキャラクターの表情差分をBlenderで用意してください。メッシュの位置をそろえ、使用していない差分は頭の内側に縮小して格納し、表情を段階的に切り替えてください。滑らかなブレンドやVRMへの対応をうたわないでください。