【軽量】godot engine【無料】 part4 (892レス)
【軽量】godot engine【無料】 part4 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
828: 名前は開発中のものです。 [sage] 2025/08/21(木) 15:57:31.56 ID:OYDY07jx 必要なのかどうか判らんが>>825の制御方法を回答するなら以下かな 操作可能キャラクターに現在操作権があるかどうかを判定するアクティブフラグを持たせる 操作はフラグが有効な場合にのみ処理する 衝突シグナルの発呼はフラグが有効な場合にのみ処理する 衝突シグナル発呼後にフラグを無効にする 衝突シグナル着呼時にフラグを有効にする http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/828
833: 名前は開発中のものです。 [sage] 2025/08/21(木) 19:31:45.99 ID:OYDY07jx AIが使えるとかなり捗るね 自分の上げた>>828方式だと発呼するのが一人だけなのが保証されているので複数による切り替えは発生しない >>829方式の場合はもうひと工夫が必要 これもやり方は色々あるけど一つ方法を挙げておくと 即時にアクティブキャラクターを更新するのが問題の発生原因なので更新処理を遅延させる call_deferredを使用すると現フレームと次フレームの間に処理が行われるのでこれを利用する より具体的にはアクティブキャラクター更新処理を関数化してcall_deferredで呼ぶ 自分で使うならこう書くんだけど行儀が良くないコードなので実用するなら適宜直してね (func():gm.active_char = other_char).call_deferred() http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/833
835: 名前は開発中のものです。 [sage] 2025/08/22(金) 13:20:20.86 ID:hykeI/+Z 今回上がった>>828,829どちらでも多重切り替えの対策をしていれば安全性は変わらない 作る人が作りやすい間違えにくい方式を選べば良い 現在のアクティブキャラを頻繁に知る必要があるなら>>829の方が良いと思う >>828の場合は対象キャラクターの全件走査が必要になる >>828のメリットはゲームマネージャ不要なので携わるクラスやファイルが少なくなる事かな 全件走査の件はグローバルクラス化して静的変数を持たせればゲームマネージャを用意せずとも同じ結果を得られる やり方は色々存在する 尚現処理では2体以上のキャラクターと同時に衝突した場合の切り替え対象が不定となるので 優先順位が必要な場合は何らかの追加処理が必要 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/835
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.026s