PixelTread
製品

自分のGameMakerスクリプトでGML学習を実践

01

GMLのチュートリアルで学んでいるなら、このページでPixelTreadがどう役立つかを見てみましょう。エージェントはスクリプトを読み取り、確認できる差分付きで編集し、ビルドコマンドを実行し、公式GameMakerマニュアルを参照します。すべてあなたが所有するプロジェクト内で行われます。レッスンが概念を説明し、PixelTreadは1つのアイデアを1つずつあなたの実際のファイルに適用し、変更をカード形式で表示します。Ask firstを使用する場合はあなたの判断を待機するので、無条件に貼り付けるのではなく、学習を継続できます。

01

GMLファイルの編集

edit_fileでスクリプトを読み取り変更を出力し、承認前に変更行の差分を表示します。

02

ビルドの実行

Shellは、設定されている場合、独自のビルドまたはテストコマンドを実行し、カードに実際の終了コードを報告します。

03

マニュアルの参照

web_searchとhttp_getで公式マニュアルを取得し、関数名がソースから正確に引用されるようにします。

PixelTreadがプロジェクトでできること

すべてのアクションは開けるカード

各ツール呼び出しは、実際の結果付きのカードとしてチャートに表示されます。カードを開くと、完全なコマンド出力またはファイル差分が表示されます。ここで判断します:変更行を読み、承認または拒否し、その後GameMakerエディタでビルドとテストを行います。

4つのタスク、ステップバイステップ

オブジェクト同士を結合する

オブジェクトを他のオブジェクトに固定したい場合(例:キャラクターを追従する帽子)。エージェントに、対象となる2つのオブジェクトと帽子の配置場所を伝えます。エージェントはgrepで両方が作成された場所を検索し、read_fileでスクリプトを開きます。その後、edit_fileでターゲットインスタンスを変数に保存し、ステップコードでxとyをターゲットとオフセットから設定します。カードは各変更を表示します。小さな編集です。Ask firstモードでは、差分を読み、承認し、キャラクターが移動している間に帽子が頭に乗ったままになるかルームを再生して確認します。1フレーム遅れる場合は、2回目のパスを依頼してください。確信が持てるまで、古いバージョンをフォルダに保持してください。

任意の数の引数を受け取る

無制限の引数を持つスクリプトには、GMLが提供するargument_countと引数配列が必要です。一般的なGMLチュートリアルではアイデアを1回だけ示しますが、独自のメッセージスクリプトには独自の呼び出し元があります。エージェントにスクリプトとgrepによるすべての呼び出しを読み取らせ、受け取る引数に対してループ処理する関数に書き換えてください。edit_fileカードは差分を表示し、Shellはビルドコマンドを実行して実際の終了コードを確認します。すべての呼び出し元が表示されたままです。差分をレビューし、古い呼び出しが同じ順序で値を渡していることを確認し、変更を承認する前にゲームを1回実行してください。

短いカットシーンの計画

初心者はよくカットシーンの作り方を尋ねますが、1つの回答はコントローラオブジェクト内の小さなステートマシンです:ステート変数、タイマー、各ステップ用のスクリプト。Plan onlyモードで始めます。エージェントはステップリストを記述し、何も実行しません。それを読み、必要に応じて順序を変更してから、Ask firstに切り替えます。エージェントはwrite_fileでスクリプトを作成し、edit_fileでコントローラを編集します。各カードで判断します。最後にビルドし、最初のフレームからシーンを再生し、承認した計画と表示されるものを比較します。

小数点による描画のぶれを修正する

動きのぶれ(ジャッター)の原因は、小数点以下の値で描画される非整数値であることがよくあります。エージェントにgrepでdraw_spriteの描画コードを検索させ、read_fileで移動スクリプトを読み取らせます。その後、edit_fileで描画前に位置を丸め、差分を表示します。Shellはビルドコマンドを実行し、実際の終了コードを報告します。読みやすいです。Ask firstモードでは、変更行を1行ずつ承認し、ゲームを実行し、数秒間往復してスプライトがまだちらつかないか確認します。ちらつく場合、次のカードでカメラコードを確認できます。いずれにせよ、カードは変更の記録を保持します。

PixelTreadがしないこと

PixelTreadはGameMakerエディタのプラグインではなく、ゲームやエンジン内部で実行されることもありません。プロジェクトのファイルに対して動作します。独自のゲーム、独自のアート、サウンド、コード、またはライセンスを持つアセットのみを対象としています。これらの制限内で作業を維持するのはあなたの仕事です。エージェントはスコープを管理しないためです。コードが正しいことを誰も保証できないため、すべての差分を確認し、プロジェクトをビルドして自分でテストしてください。

Windows用PixelTread

自分のスクリプトで試してみよう

PixelTreadをダウンロード ↗