【軽量】godot engine【無料】 part4 (891レス)
【軽量】godot engine【無料】 part4 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
1: 名前は開発中のものです。 [sage] 2024/07/31(水) 07:46:19.20 ID:fxP1vISb Godotエンジンは機能豊富な、クロスプラットフォームのゲームエンジンであり、2D・3Dゲームを単一のインターフェイスで製作することができます。 基本的なツールは一通り用意され、ユーザーはプログラムの再発明をすることなくゲーム製作に集中できます。 製作したゲームは主要なデスクトップ環境(Linux, MacOS, Windows)や、モバイル(Android, iOS)、Webベース(HTML5)環境にワンクリックで書き出せます。 GodotはMITライセンスの下、完全に自由でオープンソースです。 利用に関して特に制限はありませんし、利用料を請求することもありません。 エンジンのコードの最後の一行まで、ゲームは製作したユーザーのものです。 Godotは自主的なコミュニティによって開発されており、エンジンを期待にかなうものにするため、ユーザーの方々も自由に参加できます。 Godotは非営利団体Software Freedom Conservancyによって支援されております。 ■公式サイト https://godotengine.org/ ■コミュニティ https://godotengine.org/community/ ■ドキュメント https://docs.godotengine.org/ja/4.x/ ★次スレは>>950がたててください 前スレ 【軽量】godot engine【無料】 part3 https://mevius.5ch.net/test/read.cgi/gamedev/1708131114/ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/1
792: 名前は開発中のものです。 [] 2025/08/13(水) 14:37:02.30 ID:o1mYTevh センスがないのがきちーな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/792
793: 名前は開発中のものです。 [] 2025/08/14(木) 13:10:48.37 ID:Nb2iwLU4 衝突相手のオブジェクトがどれか調べる方法ってある? 名前で判定してるんだけど名前って変更することあるし、底に依存する設計って良くないのかなとか 衝突相手の名前がenemyだったら、if area.name = "enemy":処理 みたいな感じにしてる http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/793
794: 名前は開発中のものです。 [sage] 2025/08/14(木) 14:34:30.06 ID:p2Gn9odV 適切に管理してる限りは名前でも問題ないのでは? instance IDで判定すれば名前が重複した場合の様な誤判定はなくせる enemyに属する種別として判定したいのであればEnemyクラスにして型で判定する またはグループで管理する http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/794
795: 名前は開発中のものです。 [] 2025/08/14(木) 15:24:38.14 ID:EPDo1MlI ダメだ。5chはソース貼るとNGワードに引っ掛かるんだな クラス名での判定処理が手軽なんじゃない? class_nameの形で宣言するやつ 5chはソース貼れないからDiscordで聞いた方がいいと思う http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/795
796: 名前は開発中のものです。 [] 2025/08/14(木) 16:37:05.46 ID:Nb2iwLU4 ありがとう 名前でやってみるわ 別の変更することはそうそうないんだが、スクリプトでクラス名設定して、そちらを使ったほうがまあ後々便利そうではある ただ、使いもしないものを考えても無駄だしな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/796
797: 名前は開発中のものです。 [sage] 2025/08/14(木) 16:58:20.13 ID:p2Gn9odV 単純に1対1の接触判定なら名前で十分なんだけど 複数の敵だとか弾だとか種別で振り分ける要件があるなら型で判定するのが楽 その後の種別毎の処理もクラスに持たせれば尚捗る 後から名前判定を型判定に切り替えようと思った場合でも必要な修正量は少ないと思うので そういう方法があると知ってるだけでも十分よ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/797
798: 名前は開発中のものです。 [] 2025/08/16(土) 10:01:50.25 ID:yNHWyeJg tonkusu http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/798
799: 名前は開発中のものです。 [] 2025/08/16(土) 10:09:34.14 ID:yNHWyeJg もう何年も全く上達しとらん http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/799
800: 名前は開発中のものです。 [sage] 2025/08/16(土) 22:40:24.94 ID:grW1btj7 しゃっ、なぜか突然やる気出てきた! 一本なんか作ろっと http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/800
801: 名前は開発中のものです。 [] 2025/08/17(日) 00:26:07.73 ID:R99XdFlR プラットフォーマー?シューティング? いずれにせよゲーム作るのは大変 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/801
802: 名前は開発中のものです。 [] 2025/08/17(日) 06:08:18.66 ID:ZbAJcgXG aiでインディーゲー制作終わる? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/802
803: 名前は開発中のものです。 [sage] 2025/08/17(日) 06:48:30.88 ID:ZmztiPxu 終わってるのはお前の頭だ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/803
804: 名前は開発中のものです。 [] 2025/08/17(日) 07:00:20.34 ID:ZbAJcgXG はい http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/804
805: 名前は開発中のものです。 [sage] 2025/08/17(日) 09:26:56.65 ID:OtXByaPB はいじゃないが http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/805
806: 名前は開発中のものです。 [sage] 2025/08/17(日) 15:05:41.75 ID:9AmcoDI2 受験で言ったら10数年浪人してるのと同じなのに未だに諦めないのは意味不 このままだと10年後も収入ゼロ行進が続くんじゃないの? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/806
807: 名前は開発中のものです。 [] 2025/08/19(火) 09:10:38.40 ID:3t3CLEnJ プログラミング苦手なんだが1日1時間からやりゃいいかな? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/807
808: 名前は開発中のものです。 [sage] 2025/08/19(火) 10:35:35.56 ID:JdP3e7K/ 数学の勉強から http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/808
809: 名前は開発中のものです。 [sage] 2025/08/19(火) 11:31:29.44 ID:GZsC++n5 落ちこぼれの学年最下位は1日何時間勉強したら偏差値50の平均的な大学に受かると思う? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/809
810: 名前は開発中のものです。 [] 2025/08/19(火) 13:36:31.30 ID:uLkJ1eHB 下準備とか要らんから作りたいものがあるならさっさと作りなさい http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/810
811: 名前は開発中のものです。 [] 2025/08/19(火) 18:25:53.26 ID:jJatJopQ 作りたいものがあるならBrackeysのチュートリアル動画で今日明日中にGDScriptは終えるべき 作りたいものがないなら何もしなくていい 基本を終えたらChatGPTに「これがやりたい」と伝えればソースコードくれる ソースコードの意味がわからなかったら説明して貰えばいい それでもわからなかったらもっと簡単な実装に変えてくれと言えばいい http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/811
812: 名前は開発中のものです。 [] 2025/08/20(水) 06:35:13.54 ID:sxbQP0Ah connectのcallableってチョウ噛み砕くとつまりなに? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/812
813: 名前は開発中のものです。 [sage] 2025/08/20(水) 06:38:33.56 ID:w6+HP3Ao シグナル発呼時に呼ばれる関数名 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/813
814: 名前は開発中のものです。 [sage] 2025/08/20(水) 06:44:18.64 ID:w6+HP3Ao あ?connect張った側だと着呼か まあCallableクラスは関数を表す http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/814
815: 名前は開発中のものです。 [] 2025/08/20(水) 10:41:04.62 ID:sxbQP0Ah ありがとう 思い出してきた ってかノードのプロパティにアクセスしてから、カンス名だけ指定したほうがシンプルかなぁ collableの使い所が分からん http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/815
816: 名前は開発中のものです。 [sage] 2025/08/20(水) 11:26:23.53 ID:w6+HP3Ao 自分は1ファイルで見通せる方が好きなのでコードで接続してるが 通常はノードで設定した方が設定状況を纏めて見れるし エディタに接続アイコンが表示されるのでシンプルかつ見やすいと思う 主にシグナル接続をコードで書くのは自前でシグナルを定義した場合になると思うが これもグローバルクラスにすれば標準クラスと同様にノードで設定できる様になる connect以外でのCallableの使い所はラムダ関数を使う場合や関数内関数での使用になるかな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/816
817: 名前は開発中のものです。 [] 2025/08/20(水) 11:26:50.72 ID:8BIAqddk # connect() の Callable とは? Godot 4.x から connect() の仕様が変わり、シグナル接続時に Callable クラスを使うようになりました。 記述例(4.x): button.connect("pressed", Callable(self, "_on_button_pressed")) Callable は「あるオブジェクトの特定のメソッドを呼び出すための参照」を表すクラスです。 記述例のように connect() によるシグナル接続時に Calalble コンストラクタの第一引数に実行したいメソッドを持つオブジェクト、第二引数に実行したいメソッドを記述します。 これらの引数はそれぞれ第一引数はオブジェクト参照、第二引数はそのオブジェクトが持つメソッド名(文字列)となります。 Godot 4.x では以下のような 3.x の (target, method_name) 形式は廃止され、第2引数に Callable を渡すことが必須になりました。 記述例(3.x) ※4.x 非対応: button.connect("pressed", self, "_on_button_pressed") また上記の記述例(4.x)は以下のショートハンドでも記述可能です。 記述例( 4.x ショートハンドver.) button.pressed.connect(self._on_button_pressed) これは内部的に Callable(self, "_on_button_pressed") を生成します。 Godot 公式もこの「Signal プロパティ経由」の記述方法を推奨しており、 シンプルかつ Callable を意識せずに利用できるため、実務でもこちらを使うのが一般的です。 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/817
818: 名前は開発中のものです。 [] 2025/08/20(水) 11:28:56.28 ID:8BIAqddk # なぜ Callable を経由するのか? 簡潔にまとめると、以下のメリットがあります。 1. 安全性(未定義メソッドを is_valid() で事前検出可能) 2. IDE 補完・リファクタリング対応(文字列指定ではできなかった恩恵) 3. 統一性(シグナル以外でも「関数参照」として利用可能) 4. 柔軟性(ラムダでシンプルに書ける) 5. 将来性(Godot 4.x 以降の標準記法) http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/818
819: 名前は開発中のものです。 [] 2025/08/21(木) 07:12:58.02 ID:/HImpd/9 tonkusu http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/819
820: 名前は開発中のものです。 [] 2025/08/21(木) 10:04:41.30 ID:/HImpd/9 プログラミングっていきなり答え見たほうがいいのか? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/820
821: 名前は開発中のものです。 [sage] 2025/08/21(木) 10:26:48.86 ID:OYDY07jx 見ないで答えるにはそれを知っていなければならないから最初は必ず見る クイズだとしても知識を持っていなければ答えられない パズルだとしてもルールを知らなければ考えられない プログラムとはコンピュータとの対話言語を使った会話 言葉を覚えると言う意味では他言語とセオリーは変わらない 曖昧さが少ない分覚えやすいまである http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/821
822: 名前は開発中のものです。 [sage] 2025/08/21(木) 12:09:28.51 ID:Ajf2SJxV 最後はアルゴリズムだからなぁ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/822
823: 名前は開発中のものです。 [sage] 2025/08/21(木) 12:24:29.89 ID:OYDY07jx ゲームにおけるデータ処理なら必要なアルゴリズムは辞典読めば事足りると思う ゲームに必要な物ならある程度はエンジンが機能を提供してくれる 他がやってない独創的な処理を実装したいなら頭悩ますしかないね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/823
824: 名前は開発中のものです。 [] 2025/08/21(木) 13:27:58.90 ID:zThVp00O 実装したい機能について考え方さえわからない場合も多い Godotではないが答えを見なければ今でも簡単な当たり判定すら実装できていなかっただろうと思う http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/824
825: 名前は開発中のものです。 [] 2025/08/21(木) 14:05:07.38 ID:/HImpd/9 キャラクターをスイッチしたいのだけども アクティブキャラだけ操作権があって、別キャラと衝突したらそっちに操作権が移る シグナルはキャラA,B共にarea2dを使っていてあらかじめ有効化している シグナルのオンオフをいちいち切り替えるのは面倒そうなんで a,b両方から衝突のシグナルが飛んでくるんで、フィルタリングしたい フィルタリングの条件分岐に必要な要素って何があるかな? 現在操作キャラ(a)からのシグナルを無視して、それ以外(b)からのシグナルが来たら、bに切り替えるって流れかな オンオフで対応したほうがシンプルでいいかな こういう論理的思考が壊滅的に出来ないみたい 練習方法ない? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/825
826: 名前は開発中のものです。 [sage] 2025/08/21(木) 14:59:17.38 ID:OYDY07jx 自分が理解できない物を論理的に考えるのは無理なのでまず自分が理解できる所まで単純化する コンピュータを指示通りに動く人として捉える 相手に自分の考えを伝えるには相手が理解できる言葉を使う 相手がどこまで理解できているかを想像する >>325の例題を要約すると以下の感じであってるかな? 「アクティブ時にのみ操作可能なキャタクターが複数存在する」 「操作キャラクターが操作可能キャラクターに衝突すると操作権が衝突した相手に移る」 相手が理解しやすい単純な説明を心がける まず概要を伝えて会話する為の基礎を築く シグナルとかArea2Dだとか複雑な話題はなくて良い 相手と共通認識ができたらより複雑な話題へ移る こんな感じで物事を単純化してそこから徐々に複雑化していく 練習方法としては相手が知らない事を説明する事、仕様書を書いて読んで貰う事かな? 場を作るのが難しいけどディスカッションを多数こなすのが良いのではないかな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/826
827: 名前は開発中のものです。 [sage] 2025/08/21(木) 15:00:29.64 ID:OYDY07jx >>325でなくて>>825だったわ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/827
828: 名前は開発中のものです。 [sage] 2025/08/21(木) 15:57:31.56 ID:OYDY07jx 必要なのかどうか判らんが>>825の制御方法を回答するなら以下かな 操作可能キャラクターに現在操作権があるかどうかを判定するアクティブフラグを持たせる 操作はフラグが有効な場合にのみ処理する 衝突シグナルの発呼はフラグが有効な場合にのみ処理する 衝突シグナル発呼後にフラグを無効にする 衝突シグナル着呼時にフラグを有効にする http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/828
829: 名前は開発中のものです。 [] 2025/08/21(木) 17:37:16.04 ID:zThVp00O isTouchActiveみたいなbool値でシグナルの受信を管理する必要があるのかと思ったらこれでもいけるらしい ChatGPTにリファクタリングして貰ったらソースがかなり短くなった ttps://pastebin.com/YyjtJXCC ソース冒頭のGameManagerはシングルトンとしてAutoLoadに設定、プロパティはactive_charのみ このactive_charはゲーム内でアクティブなキャラを一意にする意図 プレイヤーノード構成 CharacterBody2D ├Area2D │ └CollisionShape2D └Sprite2D http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/829
830: 名前は開発中のものです。 [sage] 2025/08/21(木) 18:26:36.99 ID:OYDY07jx ゲームマネージャがアクティブなキャラクターを保持する方式だね その方が今誰がアクティブなのかが即判るので良いかもね 一つ気になる点としてはAの処理とBの処理の処理順でAが先に処理される場合 キャラクターAがBに衝突した際にアクティブキャラクターをBに更新してしまうと その後のB側の衝突処理でBは自分がアクティブキャラクターと認識してAに更新してしまうのではと思う さてどうかな? 仕様を誰でも判りやすい言語化するのはAIとの対話にも役立つと思うよ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/830
831: 名前は開発中のものです。 [sage] 2025/08/21(木) 18:35:03.35 ID:OYDY07jx ちょっと訂正、後から文章足したからキャラクターAの登場がずれた キャラクターAとBが存在する時にAとBの処理順がAが先に処理される場合 AがBに衝突した際にアクティブキャラクターをBに更新してしまうと その後のB側の衝突処理でBは自分がアクティブキャラクターと認識してAに更新してしまうのではと思う http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/831
832: 名前は開発中のものです。 [] 2025/08/21(木) 19:10:14.51 ID:zThVp00O おっしゃる通りキャラAからキャラBにタッチした時にB側の_on_area_enteredが実行されて再度キャラAに操作権が渡る可能性があるため(物理サーバーがシグナルを発火させる順番に依存するため100%ではない) 「アクティブ側だけが切替処理を実行」「同じ物理フレームでの多重切替を禁止」の処理を盛り込む必要ありです 流石です http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/832
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
834: 名前は開発中のものです。 [] 2025/08/22(金) 12:59:11.02 ID:5H9qw/cT ありがとう じっくり読んで作るナリよ やっぱりアクティブキャラだけシグナルを発する方式が安全なんすかね? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/834
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
836: 名前は開発中のものです。 [] 2025/08/22(金) 19:05:13.94 ID:5H9qw/cT ありがとう 勉強がてら、フィルタリングでやってみるか http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/836
837: 名前は開発中のものです。 [] 2025/08/25(月) 19:24:52.64 ID:pgacrMvG パッパとRPG造りたいナリ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/837
838: 名前は開発中のものです。 [sage] 2025/08/26(火) 07:36:55.38 ID:jvaDPhtX そういうあなたにぴったりなゲームエンジンがカドカワさんからでてますよ・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/838
839: 名前は開発中のものです。 [] 2025/08/26(火) 09:16:02.52 ID:QxOlVIen あーいうの余計むずく感じるんで無理 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/839
840: 名前は開発中のものです。 [sage] 2025/08/26(火) 13:49:17.12 ID:WJT07pkb じゃあ、おまえは何もできません、おまえ自身が無理だからです 出直してきてください はい、次のワナビどうぞ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/840
841: 生出白液 [] 2025/08/29(金) 00:02:13.70 ID:511euTV9 extends CharacterBody2D var gravity = 980 var jump_velocity = -600 var p = 2 # ジャンプ回数 @onready var sprite = get_node("rotation_fish") # 子ノード(回転魚など) func _physics_process(delta): velocity.y += gravity * delta if is_on_floor(): p = 2 if Input.is_action_just_pressed("jump") and p > 0: velocity.y = jump_velocity p -= 1 if sprite: sprite.call("receive_message", p) # 回転に通知 move_and_slide() if is_on_wall(): get_parent().result = 1 get_parent()._result() queue_free() このコードに物体のy座標が800を超えたら get_parent().result = 1 get_parent()._result() queue_free() と同じような実行をするコードを追加で作ってもらいたいです。親ノードは下のようです extends Node2D var result = 0 # 状態管理用 func _ready(): $Label.visible = false # 最初は非表示 func _result(): if result == 1: $Label.text = "finish" $Label.visible = true else: $Label.visible = false http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/841
842: 名前は開発中のものです。 [sage] 2025/08/29(金) 01:40:24.24 ID:VmXngAYr >>840 お前Unity質問スレでもその先生ごっこやってたことあるだろ 滑ってんだよそのノリ いちいちワナビ追っかけていって絡むのやめろ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/842
843: 名前は開発中のものです。 [sage] 2025/08/29(金) 01:51:57.67 ID:NTpF3sfj 「子が移動後に壁にぶつかったら親に通知して消滅するコードに 子のy座標が800を超えたら1行目と同様の処理を追加したい」 "壁に接触している"事を判定しているのはif is_on_wall():の部分なのでここを変更する "壁に接触している"または"y座標が800を超えている"とする if is_on_wall() or position.y > 800.0: こんなん? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/843
844: 生出白液 [] 2025/08/29(金) 21:55:18.53 ID:511euTV9 そのコードを加えてみましたが、Invalid assignment of property or key 'result' with value of type 'int' on a base object of type 'Window'.というエラーが出ました。このエラーの意味が全く分かりません教えてもらいたいです http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/844
845: 名前は開発中のものです。 [sage] 2025/08/29(金) 22:12:20.66 ID:US91n0Bz 煽りとか抜きにチャットAIに投げたほうが早いぞ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/845
846: 名前は開発中のものです。 [sage] 2025/08/29(金) 22:48:50.42 ID:Zy5HkM5N >>844 そのエラーはresultプロパティにアクセスしようとしたがプロパティが存在しないから発生している >>843の修正を元には発生しない 想像に想像を重ねるとエラー文に出てくる"Window"はエラーを出したノードの親ノードを指している if _on_wall():の次行のget_parent().result = 1が既出エラーを発生させる可能性がある 親ノードにぶら下がる子ノードだったならこのエラーにはならず親ノードの場合に発生する 修正以前にコードの親関係が正しくなくコードが機能する状態でないと思われる 修正前コードを動かすには孫ノードとコードが不足しているのでそれらの追加が必要 ノード構成は以下となるはず Node2D (親コードextends Node2D配下のアタッチ先) +CharacterBody2D (子コードextends CharacterBody2D配下のアタッチ先) ++CollisionShape2D ++Sprite2D (孫コードのアタッチ先※提示されていない) 自分もAIに聞いた方が応答速度が早くて良いと思うよ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/846
847: 名前は開発中のものです。 [sage] 2025/08/29(金) 23:01:21.73 ID:Zy5HkM5N 想定が足りていなかった CharacterBody2Dノードをブランチしてシーンとした場合に 修正後コードでこのシーンを「現在のシーンを実行」で動かすと>>844のエラーが発生する 本来親ノードがなければ動かないシーンをカレントシーンで動かした事が原因 正しく親ノードの配下としてCharacterBody2Dを配置する事 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/847
848: 生出白液 [] 2025/09/02(火) 22:58:19.74 ID:E0WT+1Oc ColorRect(ルート) └── Node2D(result 変数あり) ├── Label └── Player(CharacterBody2D)ここにエラーが出たコードが書かれている result変数が書いてあるNode2Dを親、Labelノードが子のコードのシーンがあって、それを親にし、Playerシーンを子にした状態で同じようなエラーが発生した。 Chatgptに詳しく聞いてみたが解決しなかった。ここでPlayerノードにfunc _ready(): print("自分:", self) print("親:", get_parent()) print("親の親:", get_parent().get_parent()) を書いて実行すると 自分:fish:<CharacterBody2D#29007807814> 親:root:<Window#28470936891> 親の親:<Object#null> 自分:fish:<CharacterBody2D#31323063660> 親:result:<Node2D#31272731991> 親の親:ColorRect:<ColorRect#31239177554> と出た。2回実行されてそれぞれ違う結果になった理由が分からなかった。シンプルにChatgptの使い方が悪いかもしれないけどあまり使えなかったです http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/848
849: 名前は開発中のものです。 [sage] 2025/09/02(火) 23:33:43.35 ID:HYRahreF >>848 get_parent()とは一つ上のノードを取得する関数なので 図のPlayerでget_parent()を実行したならば結果はColorRectになる なのでColorRectの子としてPlayerを配置するならがresult変数はColorRectが持っていなければエラーとなる 一回の実行で同じ_redayが二回呼ばれる事は考えにくい print関数で表示した結果の後ろの数字はノードの固有番号なので違っているならばそれぞれのノードが存在している事になる ツリー上にCharacterBody2Dが2つ存在していてそれぞれが同じコードが割り当てられていると推測する この場合、図示されているCharacterBody2DではないCharacterBody2DはNode2Dの配下のはず ルート直下のCharacterBody2Dを削除すればresultにアクセスできないエラーはなくなる http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/849
850: 名前は開発中のものです。 [sage] 2025/09/02(火) 23:45:42.11 ID:HYRahreF >>848 >シンプルにChatgptの使い方が悪いかもしれないけどあまり使えなかったです 判らない事は幾ら考えても判らないので聞いてくれて構わないが 残念ながらこういう場では解答が貰える保証がない なので独学で学習しているならAIの利用方法を習得するのが望ましい もちろんAIが確実に正答を返してくれる訳ではないので判らなかったら質問を投げてくれてOK しかし返ってくるかどうかいつ返ってくるかも判らない返答を待つのは効率が悪い 自分は使ってないので判らないが廃墟に近いここよりDiscordの方が活気があったりしないだろうか? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/850
851: 名前は開発中のものです。 [sage] 2025/09/02(火) 23:49:54.24 ID:HYRahreF 後は英語力必要になるけどredditあたりか どこでも同じだけどコミュニティのルールに沿った質問が出来ないと相手にされなくなるから 質問する際にはルールを覚える必要はあるね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/851
852: 名前は開発中のものです。 [sage] 2025/09/03(水) 00:01:51.40 ID:jiI02xbM >>848 少し間違っていた 自分:fish:<CharacterBody2D#29007807814> 親:root:<Window#28470936891> 親の親:<Object#null> 自分:fish:<CharacterBody2D#31323063660> 親:result:<Node2D#31272731991> 親の親:ColorRect:<ColorRect#31239177554> このパターンだとColorRectの下にコードを持ったCharacterBody2Dは居ない rootの下に配置されているのでこのツリーには存在していない グローバルにCharacterBody2Dのコードを登録してはいまいか? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/852
853: 名前は開発中のものです。 [sage] 2025/09/03(水) 11:39:46.16 ID:2H/FhQha こういうやり取りのいいところは ChatBOT使ったところでそいつができないことができるようになるわけじゃない、と確認できることだよな こりゃあ、何年かかっても何もできないわけだわ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/853
854: 名前は開発中のものです。 [sage] 2025/09/03(水) 12:00:54.40 ID:jiI02xbM 掲示板でもAIでも答えられる答えしか返らないので欲しい解答が得られる質問の仕方が判らないと先に進まないね 最初に提示されたコードでほぼ合っているので後少しの気付きを得られれば次に進めると思うんだな コードレビューして基本的な考え方を学べると良いのだけれどそういう場を得られない人は大変よね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/854
855: 名前は開発中のものです。 [sage] 2025/09/03(水) 12:29:44.85 ID:jiI02xbM ノードの構造が変だと指摘されてノードから見える親を調べてる時点で有能に思う 埋め込んだコードが二回実行されるのが変だと気が付くのも有能 一度しか呼ばれない前提のコードが二回呼ばれているならば誰が呼び出しているかを探す事になる 取得した情報で自分自身の親情報が取れているのでどこにコードが存在しているかはおおよそ判る ここで親がrootと表示されている事で自身が管理しているツリーに無いノードが存在している事が判る GodotEngineの仕様を知っていればカレントツリーの上にrootがある事も判るのだけれど 初心者向け解説で触れているのは見かけないのでここは躓きポイント root配下にカレントツリー以外がぶら下がる条件を知らないと更に躓く そうなるパターンとしてはグローバルクラスが定義されている場合と @toolなスクリプトが存在して勝手な振る舞いをしている場合 どちらの場合でも利用者が手を加えなければ勝手には発生しないので 設定を変えたりプラグインを導入していないかを確認する http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/855
856: 名前は開発中のものです。 [] 2025/09/03(水) 15:01:28.13 ID:JAFxBHMC Discordにでも行けばいいのに、コードすらまともに貼れないここで長々と質問する意味が分からない http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/856
857: 名前は開発中のものです。 [sage] 2025/09/03(水) 15:08:20.93 ID:2H/FhQha ぶっちゃけスパムレベルの質問だからね、追い出されたんだろ こういう掃きだめ掲示板ならではよ 解決しようがしまいが誰も(本人も)困らないし http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/857
858: 生出白液 [] 2025/09/03(水) 18:05:44.61 ID:F2t9mgCh >>852 エラーの原因はグローバルにCharacterBody2Dのコードを登録していたからでした。教えてくれてありがとうございます。後これからはディスコードで質問していきたいと思います http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/858
859: 名前は開発中のものです。 [sage] 2025/09/03(水) 18:38:34.92 ID:jiI02xbM >>858 解決したなら良かった、先は長いから程々で頑張れよ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/859
860: 名前は開発中のものです。 [] 2025/09/06(土) 17:28:22.61 ID:jL8JB8c1 Area2Dノードを親にした物体を複製した後queue_free()で消したが衝突判定が残っていた。物体自体は見えないのに衝突判定だけ消えないことが起こるものですか? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/860
861: 名前は開発中のものです。 [sage] 2025/09/06(土) 20:25:38.19 ID:hIKwuN7F はい、そうです。 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/861
862: 名前は開発中のものです。 [] 2025/09/06(土) 21:05:58.27 ID:J6IH1IIs ChatGPTで聞けば答えが出てくるようなレベルのことを人に聞くような人がまともなアプリ開発なんかできるの? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/862
863: 名前は開発中のものです。 [sage] 2025/09/06(土) 21:34:31.87 ID:Cy3rYlNu >>860 queue_free()はfree()をキューに入れる関数でその時点ではノードは消えていません http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/863
864: 名前は開発中のものです。 [] 2025/09/14(日) 16:40:02.52 ID:+FNV0YKb チャットジーピーテーお金払わないと嘘ばかり教えてくるからな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/864
865: 名前は開発中のものです。 [] 2025/09/14(日) 19:13:41.47 ID:qOx/PcAM 残念ながらお金を払っても嘘ばかり教えてくるぞ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/865
866: 名前は開発中のものです。 [sage] 2025/09/14(日) 19:32:25.17 ID:XKuRbbQE よさげなエロサンプル見せてこの続きは有料っつって金はらったら結局サンプルと同じ程度ものしかないみたいな 詐欺商売やないかヽ(`Д´)ノ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/866
867: 名前は開発中のものです。 [] 2025/09/16(火) 06:32:40.02 ID:MGrSj3oL いつのまにかGodot 4.5がリリースされた contributorが400人を超えて規模が結構大きくなってきた http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/867
868: 名前は開発中のものです。 [sage] 2025/09/16(火) 07:00:06.91 ID:hyfiSgwN 変更内容が多くて項目一覧見てるだけで目が回った http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/868
869: 名前は開発中のものです。 [] 2025/09/16(火) 13:41:10.44 ID:MMr3FO17 LGBTかなんかで炎上したのはなんだったのかってくらい順調だな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/869
870: 名前は開発中のものです。 [sage] 2025/09/16(火) 14:32:11.17 ID:5KPKLwK7 UnityやUEに比べて凄い軽いからなぁ。ログインも無いし。売上報告もいらない。 個人で使うなら最高のエンジンだろうね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/870
871: 名前は開発中のものです。 [sage] 2025/09/16(火) 15:09:35.51 ID:JwJdTzae 今時のバえるレンダリングエフェクトついたゴリゴリのリッチ3Dとかじゃないゲーム すなわち、個人がフリーでつくるようなゲーム向けとしてはベストチョイスだろうな ただし"ゲームをつくる事そのもの"ではなく、つくってる風な自分を自慢したいタイプには向かない http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/871
872: 名前は開発中のものです。 [sage] 2025/09/16(火) 16:30:09.78 ID:PZc5Vb+f >>871みたいないっちょ噛みしたいだけの奴にも向かないんじゃない? godotに限った話じゃなく、どのエンジンも不向きか http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/872
873: 名前は開発中のものです。 [sage] 2025/09/17(水) 11:07:19.89 ID:P5VnMNiY 初心者がYoutubeでUEと有料アセット使って「俺すげえ!!」って演出してる動画多いね。 そういうのはGodot向かない。 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/873
874: 名前は開発中のものです。 [sage] 2025/09/17(水) 12:54:34.39 ID:poSQVw81 おー、4.5結構盛りだくさんだな 2Dに関することは……、デバッグにバックトレース追加、シェーダーベイカー追加、タイルマップレイヤーはフュージョンハッできるようになったし、抽象クラスも追加されたしって感じか いやー、これは熱い、アップグレードするかあ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/874
875: 名前は開発中のものです。 [sage] 2025/09/17(水) 13:00:05.10 ID:XcG3rzRP フュージョンハッってドラゴンボールかよw http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/875
876: 名前は開発中のものです。 [sage] 2025/09/17(水) 13:22:57.12 ID:poSQVw81 リリースノートのサブタイトルにそういうネタ仕込んでくる公式のノリ好きなんだよね 最初意味がよくわかんなかったけど http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/876
877: 名前は開発中のものです。 [sage] 2025/09/17(水) 17:07:24.13 ID:l/ra6xty うぉー! ペーペーの俺には背景タイルの当たり判定が最適化されたくらいしか分からなかったぜ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/877
878: 名前は開発中のものです。 [sage] 2025/09/17(水) 19:23:50.94 ID:yZVcPIgM ゲームエンジンとして超小型サイズだからアップデートも一瞬だなw 毎回、新バージョンDLで「あれ?ダウンロード途中で切れた?」と勘違いしてしまうw http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/878
879: 名前は開発中のものです。 [] 2025/09/20(土) 09:35:46.39 ID:0geIAgeR ゲー制作というより、バックルームみたいな映像作るのだが、unityのほうが楽かね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/879
880: 名前は開発中のものです。 [sage] 2025/09/20(土) 10:09:48.23 ID:dGV4eSt2 お好きにどうぞ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/880
881: 名前は開発中のものです。 [sage] 2025/09/20(土) 10:47:59.80 ID:ThIDioy5 >>879 何を持って楽というか判らんからなんともだが簡単な録画機能として UnityはRecorderパッケージが提供されていてGodotはMovie Maker modeが内蔵されている 機能が足りないなら外部ツールを使ったキャプチャーを検討すると良い 昨今は配信者が溢れる時代なのでキャプチャーの解説の方が充実しているのではないかと思う http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/881
882: 名前は開発中のものです。 [] 2025/09/20(土) 12:17:42.77 ID:0geIAgeR >>881 アセットの豊富さかな http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/882
883: 名前は開発中のものです。 [sage] 2025/09/20(土) 12:30:41.02 ID:ThIDioy5 >>882 映像作品としてエフェクト盛って加工するって話か? あいにくUnityでそれ系は触ってないので比較はできないな 丁度ここ最近Godotのそれ周りで遊んでたが用語が判れば難しくはない感じだな レンダリングの解説に書いてある事が=出来る事で良いと思う docs.godotengine.org/en/latest/tutorials/3d/index.html#rendering とはいえ情報量でもアセットでもUnityの方が豊富だろうからUnityが良いんじゃない? http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/883
884: 名前は開発中のものです。 [] 2025/09/20(土) 12:45:11.99 ID:0geIAgeR そうだね レトロフィルターとか使って、夢の中っぽい感じにしたいな aiでやろうとしてたんだけど、なかなか思い通りにならないし、グロ系だとコンプラ的に駄目ってとこが結構ある http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/884
885: 名前は開発中のものです。 [sage] 2025/09/20(土) 13:07:10.93 ID:ThIDioy5 思ったんだが完全映像作品ならBlenderとか使った方が良いんじゃないか? Unityも映像作品作れるように強化してるけど歴史的な情報の積み重ねはBlenderに軍配が上がるだろ >レトロフィルター そういうのはシェーダー担当だと思うが自分で作れるのでなければ配布されている物を使うしか無い そういう点ではGodotは弱いな 少ない中から使える物を探さないとならない http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/885
886: 名前は開発中のものです。 [] 2025/09/20(土) 13:51:35.46 ID:0geIAgeR blenderか キャラの探索パートってゲームエンジンのほうが楽なんじゃね と思ってた ゲームエンジンなら今まで通りgodot使うか road to vostokみたいなやつも作れるなら十分でyそう http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/886
887: 名前は開発中のものです。 [sage] 2025/09/20(土) 14:06:11.56 ID:ThIDioy5 映像を作り込もうとするならBlenderの方が良いだろうって考えで 自作ゲーム程度の画質で良いならゲームエンジンで事足りる Godotでのアセット利用に関してはいかんともし難く シェーダーはAssetLibかgodotshaders.comで公開されているものが見つけやすい 画質をレトロ風例えばPS1風にするシェーダーもある ただし解説具合がマチマチなので使い方を理解する所から始める必要がある http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/887
888: 名前は開発中のものです。 [] 2025/09/20(土) 16:25:14.52 ID:0geIAgeR ありがとう blenderでとりあえず作るなり ゲーム開発挫折しすぎて飽きたからね http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/888
889: 名前は開発中のものです。 [sage] 2025/09/20(土) 18:58:12.70 ID:dGV4eSt2 ワナビ2048は質問繰り返しの荒らしだから丁寧に答えんでもいいよ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/889
890: 名前は開発中のものです。 [sage] 2025/09/20(土) 21:31:49.23 ID:z70mFp7/ >>888 飽きたならもう二度と来るなよ http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/890
891: 名前は開発中のものです。 [sage] 2025/09/20(土) 21:40:22.35 ID:7mT39V4c 出来もしないのに何を聞いているのかよく分からないオーラが凄い 実現するためのワークフローすら何も思いつかないから「何すればいい?」←何だコイツ???みたいになってて草 http://mevius.5ch.net/test/read.cgi/gamedev/1722379579/891
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.291s*