GameMakerのメモ
2024-12-16にGameMakerを触り始めた人のメモ。
2024/12/17 時点
GameMakerで作ったものをAndroidで動かす
作ったアプリをとりあえずAndroidの実機で動かす方法。
環境
- Windows 10 (64bit)
- Steam版 GameMaker
- IDE v2024.8.171 Steam ランタイム v2024.8.1.218
(Steam版じゃなくても問題ないと思う。多分) - IDE言語:日本語
- IDE v2024.8.171 Steam ランタイム v2024.8.1.218
- GameMaker 無償ライセンス
必要なもの
見出し「やり方」を読んでから用意すると吉。
- 初回
- Opera アカウント
(アカウント連携しないとAndroidの設定画面が表示されない)- 「GameMakerアカウント」持ってる人はそっちを連携でokな気がする。
- Android Studio
- インストールするバージョンは「GameMaker Required SDKs #android」参照。
- ビルドに必要なツールのインストーラーとして使う。必要最低限のものだけPCにインストールすればok。
- 必要なツールをインストールした後はAndroid Studioを使わない。
- Opera アカウント
- 毎回
- 実機へアプリを送るためのUSBケーブル
(Wi-Fiでも繋げられるっぽいけど調べていない)
- 実機へアプリを送るためのUSBケーブル
やりかた
公式資料にあるのでそちらを参照。
日本語資料なさそうなのでブラウザの翻訳機能使ってね。
Setting Up For Android
https://help.gamemaker.io/hc/en-us/articles/115001368727-Setting-Up-For-Android
必要なSDKとかの情報はこちら。
GameMaker Required SDKs (#android)
https://help.gamemaker.io/hc/en-us/articles/227860547-GameMaker-Required-SDKs#android
躓いたところ
- Android Studioのバージョン
- Android Studioの最新版(Android Studio Ladybug | 2024.2.1)で試したらビルド時にGradleがエラー吐いた。「GameMaker Required SDKs」通りの古いバージョンにすれば問題なし。
- ゲームオプション(Game Options)画面の表示方法
- 以下の3通り
- ウインドウ上部のクイックボタン列にある「⚙(歯車アイコン)」を押下。
- アセットブラウザ内の[≡(ハンバーガーメニュー)]→[ゲームオプション]
- アセットブラウザ内の[クイックアクセス]→[ゲームオプション]→[メイン] or [Android]
- 以下の3通り
2024/12/18 時点
Androidで動く仮想ジョイスティックを作る
入力領域に指を置いてスライドさせるとその方向にインスタンスが動くバーチャルパッド。
とりあえず動いたのを記録。自分用。PCのマウスでも動く。
我流。なのでちゃんと作りたい方は公式の資料なり探してみてね。
- 注意事項
- とりあえず動くレベル。リファクタリングはしてない。
- シビアなアクションゲームに使うなら計算部分を要修正。
(スティックの遊び部分が無いので静止しようとすると操作が難しい) - ジョイスティック画像のコリジョンマスク領域から指やマウスが外れると入力が切れる。
環境
- Windows 10 (64bit)
- Steam版 GameMaker
IDE v2024.11.0.179 Steam ランタイム v2024.11.0.226 - IDE言語:日本語
- GameMaker 無償ライセンス
GML Visual
1. ルーム(Room)に適当にインスタンスを置く。
- 動かしたいインスタンス
- 名前: inst_target
- 入力領域にするオブジェクト
- 名前: obj_joystick_input
2. 入力領域にするオブジェクトに以下を設定する。
- オブジェクト名: obj_joystick_input
- スプライト: 画像「◯」を設定。
- コリジョンマスク
- モード: 自動
- タイプ:楕円形(低速)
- コリジョンマスク
- スプライト: 画像「◯」を設定。
イベント情報: 作業
- var_imput_x…X座標の移動距離を入れる変数名
- var_imput_y…Y座標の移動距離を入れる変数名
イベント情報: マウス/左ホールド
- inst_target…ルームに置いた動かしたいインスタンス名
イベント情報: ジェスチャー/ドラッグ
- event_data[?"guidiffX"]
- 現在のタッチの位置と、このジェスチャーの最後のタッチの位置のGUI空間でのX座標の差分。
- event_data[?"guidiffY"]
- 現在のタッチの位置と、このジェスチャーの最後のタッチの位置のGUI空間でのY座標の差分。
詳しくは:GameMaker Manualの "ジェスチャーイベント"
https://manual.gamemaker.io/monthly/ja/index.htm#t=The_Asset_Editors%2FObject_Properties%2FGesture_Events.htm
イベント情報: ジェスチャー/ドラッグ終了
以上
コロプラ「ぷにコン」で問題になった特許第3734820号
任天堂の特許第3734820号とぶつかるのではと素人目線で調べた。
存続期間満了による抹消 存続期間満了日(2024/09/03) 本権利消滅日(2024/09/03) 閉鎖原簿に移記されている
出典:特許情報プラットフォーム https://www.j-platpat.inpit.go.jp/c1801/PU/JP-3734820/15/ja
となっているので、多分問題ないと…思いたい…。