1 名前:名前は開発中のものです。 [2024/02/17(土) 09:51:54.18 ID:lpQfy7dC.net] 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/ ■こんなのが作れるよ https://www.youtube.com/watch?v=W1_zKxYEP6Q https://www.youtube.com/watch?v=UAS_pUTFA7o https://www.youtube.com/watch?v=ao34A0Y2x6c ■前スレ 【軽量】godot engine - part2 https://mevius.5ch.net/test/read.cgi/gamedev/1619755427/ ★次スレは>>950 がたててください
187 名前:軌道予測 [2024/03/25(月) 14:16:15.68 ID:SFtNN9tG.net] 1つのファイルに何行くらいコード書きます? 文字数増えると訳わからんくなるけど、対策とかないのかな 自分で1日前書いたコードが若わかめになる
188 名前:軌道予測 [2024/03/25(月) 14:38:30.56 ID:SFtNN9tG.net] godotって変数のアウトライナーってないのかな?
189 名前:軌道予測 [2024/03/25(月) 18:03:15.07 ID:SFtNN9tG.net] ど忘れしたんだけども、インスタンス化したシーンから、そのシーンの変数にアクセスできないのって普通なんだっけ? オートロードかグローバル変数にでもしない限りは。
190 名前:名前は開発中のものです。 mailto:sage [2024/03/25(月) 22:34:21.53 ID:qPdwNxZG.net] 「インスタンス化したシーンから、そのシーンの変数にアクセスできない」のは普通ではない 指示代名詞は誤解の元だからできるだけ使用は避けるべきだと思う 「その」が親のシーンを指しているのならば子インスタンスからはownerプロパティで参照できる
191 名前:軌道予測 [2024/03/26(火) 06:21:35.33 ID:UiMW4uHO.net] >>187 通常はインスタンス化するだけでグローバル化もなしに、アクセス出来るものですか? 試したらできましたが、できないパターンもあり、違いがよくわからないところです
192 名前:名前は開発中のものです。 mailto:sage [2024/03/26(火) 09:55:23.93 ID:RAozxNLR.net] せめてそのできないパターンのソースを示せよ
193 名前:軌道予測 [2024/03/26(火) 11:36:39.08 ID:UiMW4uHO.net] どうも 以下のコードなのですが、polygonプロパティにアクセスするとinvalied get indexエラーになるのです しかし、このシーンをオートロードに指定していることが原因だったようです それを今から調べます https://i.imgur.com/F37AACg.jpg extends RigidBody2D var polygon2d_node var collisionPolygon_node var polygonArray:PackedVector2Array = [ Vector2(0,0), Vector2(200,0), Vector2(200,100) ] func _ready() -> void: polygon2d_node = $"Polygon2D" collisionPolygon_node = $"CollisionPolygon2D" polygon2d_node.polygon
194 名前:軌道予測 [2024/03/26(火) 12:42:11.47 ID:UiMW4uHO.net] あーそうか シングルトン的な観点で駄目なのかこれは
195 名前:名前は開発中のものです。 mailto:sage [2024/03/26(火) 16:26:55.68 ID:KPzoI6q7.net] 描画するノードをオートロードに配置する設計に問題はあると思うが そのコードはエラー無く動いたのでオートロードだからエラーになる訳ではないな それはそれとして子ノードを参照する変数は宣言と初期化を纏めると 総行数が減って、_ready()以外でも自動補完も効くようになってお得 @onready var polygon2d_node := $Polygon2D @onready var collisionPolygon_node := $CollisionPolygon2D
196 名前:軌道予測 [2024/03/26(火) 16:34:45.75 ID:UiMW4uHO.net] ありがとう 原因は良くわからないけど、オートロードはなるべく使わずに作っていきます
197 名前:軌道予測 [2024/03/27(水) 06:23:02.67 ID:E2lXw+Px.net] 別シーンのready内で下位ノードを取得している場合、 呼び出す側のシーンにアタッチされた時点で、別シーンのreadyが実行されるから、アタッチされる前に下位ノードを取得しようとするとnullになるんすね(*´ω`*)
198 名前:軌道予測 [2024/03/27(水) 06:41:08.05 ID:E2lXw+Px.net] このスクリプトで別シーンのpolygon2d_nodeを取りたいのですが、add_childするとnullになりますね 対策としてpolygon2d_nodeをonreadyにしてみたのですが、それでもnullですね この辺理解してませんが、onreadyを使うと同期出来るわけじゃないんですかね var ins = rididDrawLine_scene.instantiate() #root_node.add_child(ins) print(ins.polygon2d_node) @onready var polygon2d_node = get_node("Polygon2D")
199 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 07:46:56.03 ID:asE13Xlz.net] @onreadyはシーンにぶら下がっているノードの参照を安全に得るために使う @onready指定された変数に格納されるノードの初期化が完了するまで_readyの実行が待機される >>195 のコードはイメージしてる事は判らなくもないが print(ins.polygon2d_node)ではinsノードの配下にあるpolygon2d_nodeへのアクセスを試みる事になる 子シーンのインスタンス側で設定されていなければエラーとなる なので書き直すとこうなる # シーンをインスタンス化する var ins = rididDrawLine_scene.instantiate() # インスタンス化したシーンのノードにアクセスする var polygon2d_node = ins.get_node("Polygon2D") print(polygon2d_node) # インスタンス化したシーンを子ノードとして"root_node"に追加する #root_node.add_child(ins) add_childでも悶着ありそうだが眠いので説明は割愛する root_nodeとはどこを指すのか rootならばcall_defferdを使うと良いがrootである必要はあるのか
200 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 07:48:17.73 ID:AFLeB0Kj.net] Mirrorってなんぞ
201 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 07:56:43.05 ID:asE13Xlz.net] GodotEngineにラッパーライブラリ被せて簡単に扱えるようにしましたって感じかね? 何かあったら一大事になるから覚える価値あるかは疑問 GodotEngineで十分足りてると思う
202 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 08:13:45.74 ID:asE13Xlz.net] とりあえずダウンロードして動かしてみたが4.3の改造版らしいが何が違うのかわからん ロードマップらしい https://github.com/orgs/the-mirror-gdp/projects/7 なんもできとらんのでは?スタートアップ投資目的か?
203 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 09:17:27.54 ID:s0lKVFz1.net] 最近こういう感じの詐欺まがいのプロジェクト多いな 話題さえかっさらえばあとどうでもなるSNSファースト社会の弊害だな
204 名前:名前は開発中のものです。 mailto:sage [2024/03/27(水) 09:34:32.48 ID:njswSuTs.net] ノードの自動読み込みとノードのシングルトンって使い分けたほうがいい? 郷に入ってはの精神でなんとなく自動読み込みの方使ってるけど
205 名前:名前は開発中のものです。 [2024/03/27(水) 10:09:54.95 ID:gGONJtOf.net] >>199 色々追加はされているがまだ始まったばかりやな 最初のコミットは3/15だしそんなもんやろ
206 名前:軌道予測 [2024/03/27(水) 10:16:36.57 ID:E2lXw+Px.net] >>196 呼び出す側でget_nodeするんですね シーンに追加されないと子のreadyも実行されないのかなと
207 名前:軌道予測 [2024/03/27(水) 11:36:51.00 ID:E2lXw+Px.net] godotエディター上で手書きでステージを描いて行く手法とありますかね? カーソルでポリゴン編集でもいいんですが
208 名前:軌道予測 [2024/03/27(水) 11:54:27.12 ID:E2lXw+Px.net] https://store.steampowered.com/app/2620500/imomushi/ こんな感じのステージです タイルマップでも難しそうだし、手書きですよね
209 名前:軌道予測 [2024/03/27(水) 13:43:40.07 ID:E2lXw+Px.net] 普通にポリゴン2dでコチコチ打てるやん ありがとう!!
210 名前:軌道予測 [2024/03/27(水) 15:26:01.61 ID:E2lXw+Px.net] あっ、でも打てないことがある 仕組みが良く分からん
211 名前:軌道予測 [2024/03/27(水) 17:03:39.52 ID:E2lXw+Px.net] 上のバーに編集モードあったナリありがとう
212 名前:軌道予測 [2024/03/29(金) 08:00:09.73 ID:YYuuvBhg.net] 2dステージ作るのも大変ナリね
213 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 12:26:10.39 ID:4gUGlpzt.net] >>209 専スレ立てたら? ここお前のレスで埋め尽くされてるじゃん
214 名前:軌道予測 [2024/03/29(金) 12:44:49.14 ID:YYuuvBhg.net] いいんじゃない 書き込まないと落ちるしもともと人が少ないスレ
215 名前:名前は開発中のものです。 [2024/03/29(金) 13:04:54.90 ID:twd2rh/A.net] なにひとつよくないが、そんなんだから雑談スレ追い出されんだよ 質問ですらない独り言とかTwitterで鍵かけてつぶやいてろ
216 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 13:12:07.70 ID:sRPqCb6v.net] >>211 いくら過疎スレでも占有はよくないよ 自分で専スレ立てれない? そっちを日記として使って、どうしても解決できない問題があるときだけここで聞けばいいよ
217 名前:名前は開発中のものです。 [2024/03/29(金) 13:19:13.92 ID:YYuuvBhg.net] じゃあ君等が落ちないようにしてね
218 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 13:21:25.50 ID:18de9J88.net] dat落ちの条件理解してなさそうだし、適当な事言うのは辞めた方がいい 何か勘違いしてないか?
219 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 13:38:45.51 ID:sRPqCb6v.net] >>214 立てたよ こっち自由に使ってくれ 俺も使う予定 ゲーム制作の日記、備忘録、メモなど好きに呟くスレ https://mevius.5ch.net/test/read.cgi/gamedev/1711686911/
220 名前:名前は開発中のものです。 [2024/03/29(金) 14:40:51.42 ID:YYuuvBhg.net] 荒れるから素直に謝っておくか 不快にさせてすみません
221 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 15:42:09.03 ID:s+Iwx5M0.net] >>210-218 個人粘着でスレの進行妨害するのやめてくれないか? 無駄レスも多いが制作に絡んだ話はしている 自治厨始める奴の方が邪魔 無駄レスが気に入らないなら会話になるGodotの話題を出してくれ
222 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 15:46:26.16 ID:2tYAETUL.net] godot4.0になった辺りで触らなくなったんだがもう4.3まで伸びてんのな 4.1~4.3でなんか目玉機能追加された?
223 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 16:43:00.72 ID:18de9J88.net] そもそも過疎板にはDat落ち判定はないんだが(nKB未満が即死する即死判定はある) 頓珍漢な言い訳はやめなさいと言っただけだぞ
224 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 17:26:29.20 ID:nuxfBRdB.net] 圧縮で落ちるのが最終更新なら2018年とかのが残ってるから確かに当分は大丈夫そうだな
225 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 17:47:38.73 ID:imN+3EnT.net] 3Dファイルはgltf一択? Blender連携はテクスチャ周りが上手くいかん
226 名前:名前は開発中のものです。 [2024/03/29(金) 17:56:09.05 ID:YYuuvBhg.net] >>222 fbxはライセンスの関係で使えないんじゃなかった? 今どうなってるか分からん 3dやってないし
227 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 18:36:00.41 ID:eapD4MOf.net] 数日放置してたら案の定もめてて草 正直異様でスレ見る気も失せる状態だったし >>218 もいちいち絡んでちゃ自治厨と大差ない しょーもな
228 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 21:52:57.37 ID:PtR313Sj.net] オマエモナー
229 名前:名前は開発中のものです。 mailto:sage [2024/03/29(金) 23:38:18.95 ID:imN+3EnT.net] 日本語でgodot関連調べてると大抵同じ人の記事にたどり着く…何者なんだ…
230 名前:名前は開発中のものです。 mailto:sage [2024/03/30(土) 15:36:35.50 ID:8Or9Js4W.net] >>224 これ 変な拘りで自治が自治が言ってる時点で自治してるようなもんだし 5chなんだから気に入らなきゃ別スレでも立てて好きにやりゃ良いのに
231 名前:名前は開発中のものです。 mailto:sage [2024/03/30(土) 23:48:04.78 ID:uJH0yGQv.net] オマエモナー
232 名前:名前は開発中のものです。 [2024/04/01(月) 06:44:36.40 ID:bnl1SBKq.net] マリオみたいな2dアクションってタイルマップ使わずに作るのはあり? タイルマップないと調整が難しいんじゃないかな ジャンプ力3とした場合、谷をタイル3つぶんにすればギリギリ届く、といった調整が簡単
233 名前:名前は開発中のものです。 mailto:sage [2024/04/01(月) 08:02:59.00 ID:PL23FYq5.net] >>229 最近のゲームではNoitaが地形全部ピクセルかなと思います 今はCPUやRAMが潤沢なので十分ありなのでは
234 名前:名前は開発中のものです。 [2024/04/01(月) 12:52:37.52 ID:bnl1SBKq.net] jumpkingみたいな感じのを作りたい あれはタイルマップ感はないけど、タイルマップではないにしてもグリッドをベースにしたほうが楽そう
235 名前:名前は開発中のものです。 [2024/04/01(月) 13:15:59.82 ID:vOJskMGJ.net] godotはグリッドにスナップできるし jumpking程度ならコリジョン付けて配置してくだけで行けると思うよ
236 名前:名前は開発中のものです。 [2024/04/01(月) 17:11:07.39 ID:bnl1SBKq.net] サイトでもグリッドデザインとかあるしね
237 名前:名前は開発中のものです。 [2024/04/01(月) 19:23:56.08 ID:bnl1SBKq.net] https://youtu.be/CNhscDwBGQ0?si=DO2b2Dbeb-f9BhFF&t=836 この画面中央にある浮島みたいな複雑な形状もタイルマップなのかな?
238 名前:名前は開発中のものです。 mailto:sage [2024/04/01(月) 19:35:50.50 ID:Qv7VTYs7.net] JKは地形の最小単位自体は見える気がするし単に細かめのタイルマップで再現できるのはできるんじゃね modの作り方見た感じ判定はRGB画像をタイルマップみたく扱ってて見た目は一枚絵被せてるらしい
239 名前:名前は開発中のものです。 [2024/04/01(月) 20:13:46.87 ID:bnl1SBKq.net] タイルマップ研究してみる 機能じゃなくてデザインから作る試みをしてるから 被せるというのは、つまりタイルマップでマスキング(くり抜き)してる感じかな?
240 名前:名前は開発中のものです。 mailto:sage [2024/04/01(月) 21:28:39.74 ID:Qv7VTYs7.net] RGB画像は1画面辺り60×45とかの荒いやつだから違う ゲームデザイン(判定、地形)だけタイルマップ式でそれに合わせた画像を別で用意してるってこと これ貼るのが早いか ttps://jumpkingplus.github.io/workshop/docs/modding/hitboxes/ ttps://jumpkingplus.github.io/workshop/docs/modding/screens/
241 名前:名前は開発中のものです。 [2024/04/02(火) 06:38:50.57 ID:gq8N0/8x.net] >>237 ん?一枚絵を重ねる感じ?
242 名前:名前は開発中のものです。 [2024/04/03(水) 19:26:17.38 ID:BKl8fFHu.net] 慣れてないとタイルマップでステージ作るの難しいね
243 名前:名前は開発中のものです。 [2024/04/04(木) 18:23:04.76 ID:Yk95TemJ.net] タイルマップエディタの位置って変更出来る? 下のスペースだと作業しづらくてしゃあない
244 名前:名前は開発中のものです。 mailto:sage [2024/04/05(金) 02:45:26.77 ID:Pqxpfu1i.net] CollisionLayerやVisibilityLayerのレイヤー名適当に付けてきたから並び替えしたいけど面倒だなー かといってスクリプトで管理するのも面倒
245 名前:名前は開発中のものです。 [2024/04/05(金) 06:47:12.42 ID:VPXaZ05P.net] タイルマップのアルファ部分を境界線として自動的にコリジョンつける機能あったっけ?
246 名前:名前は開発中のものです。 [2024/04/07(日) 10:10:16.82 ID:XQBKHWlL.net] 1つのゲーム何ヶ月くらいかける? そんな大作は作れないから数週間程度にしとくといいのかなと思うが
247 名前:名前は開発中のものです。 [2024/04/07(日) 12:40:54.04 ID:B7MxZFEN.net] 初めて作るなら二週間くらいで作れそうなのにした方が早めに世に出せていいと思う 製作期間なんてどうせ伸びるし
248 名前:名前は開発中のものです。 [2024/04/07(日) 14:24:50.23 ID:XQBKHWlL.net] ありがとう 想定の2倍以上はかかる 確かに
249 名前:名前は開発中のものです。 [2024/04/07(日) 20:10:06.18 ID:XQBKHWlL.net] 2dアクションのステージ作るときにタイルセットじゃなくて、ポリゴンノードを1枚のタイルとして大量に並べていったらパフォーマンスにかなり影響出るのかな? 数千とかそういうレベルになったら
250 名前:名前は開発中のものです。 mailto:sage [2024/04/08(月) 00:34:30.27 ID:BT1LWWM9.net] 余裕で出るだろうねぇ Godotがすごすぎエンジンで問題なかったら逆にビックリするけど
251 名前:名前は開発中のものです。 [2024/04/08(月) 05:26:25.44 ID:EcmamLs3.net] どうも 出るか、、、 ポリゴンノードの羅列のほうが柔軟に形状変えられていいかなと思ったけど、タイルマップでやる タイルマップは形状にどうしても制限が出るから
252 名前:名前は開発中のものです。 mailto:sage [2024/04/08(月) 13:22:19.11 ID:BT1LWWM9.net] 性能テストだと思って実際に作って負荷検証した方がプロっぽいけどな Zennとかで投稿して知見共有してくれてもいいのよ? 宣伝にもなるし あ、契約書からむような案件だったらダメだけど
253 名前:名前は開発中のものです。 [2024/04/08(月) 14:15:01.29 ID:EcmamLs3.net] ありがとう zennってたまに見るけどブログとしていいね fc2から乗り換えよう
254 名前:名前は開発中のものです。 [2024/04/09(火) 11:56:09.63 ID:oLx3m2KZ.net] https://dev.to/christinec_dev/learn-godot-4-by-making-a-2d-platformer-part-4-level-creation-1-4obb オートタイルはterrain使ってやる感じ? 今学習中 スクリプト無しで出来るならいいけど この解説生地を書こう
255 名前:名前は開発中のものです。 [2024/04/09(火) 14:36:54.29 ID:oLx3m2KZ.net] https://imgur.com/B6lPvsv オートタイルを作りたいけど、仕組みがよく理解できない terrainをペイントすることでそれっぽくなるけど、どこをどうペイントするといいのかガ分からない
256 名前:名前は開発中のものです。 [2024/04/13(土) 06:35:26.13 ID:DtpmdlV4.net] https://www.youtube.com/watch?v=TCEEKKeoT-0 オートタイルの動画あったけど仕組みが分からん 塗った場所によって、どのようにつながるか決まるらしいけど、どなたか教えて
257 名前:名前は開発中のものです。 mailto:sage [2024/04/13(土) 12:16:44.81 ID:4XyoFcVO.net] いやこれで分からないんじゃ説明のしようがねえじゃん
258 名前:名前は開発中のものです。 mailto:sage [2024/04/13(土) 14:29:45.52 ID:2dO4J81U.net] 俺の立てたスレに来たら懇切丁寧に教えてもよかったけど この顔文字くん来ないんだよな 人が多いとこに居たいんだろうけど
259 名前:名前は開発中のものです。 [2024/04/13(土) 15:12:12.60 ID:DtpmdlV4.net] 立てたっけ?
260 名前:名前は開発中のものです。 mailto:sage [2024/04/13(土) 15:15:11.02 ID:2dO4J81U.net] >>256 ここな>>216
261 名前:名前は開発中のものです。 [2024/04/13(土) 15:27:51.76 ID:DtpmdlV4.net] 人のこと池沼とか書いてるやついるからええわ
262 名前:名前は開発中のものです。 mailto:sage [2024/04/13(土) 22:30:37.04 ID:PLTsef0l.net] 自覚持てよ
263 名前:名前は開発中のものです。 [2024/04/14(日) 04:27:19.96 ID:xkIt8wPU.net] そういうのいらないから
264 名前:名前は開発中のものです。 mailto:sage [2024/04/14(日) 14:53:38.25 ID:pt7t7Gdb.net] オマエモナー
265 名前:名前は開発中のものです。 [2024/04/17(水) 11:03:55.56 ID:c7cp2PUr.net] godot4で方向取る関数ってなんですか? input.get_axisだと引数が2つ必要になっていましたね 以前はinput.get_axis("horizontal")←これで横方向がトレていたのですが、
266 名前:名前は開発中のものです。 mailto:sage [2024/04/17(水) 11:23:02.69 ID:S9SgvMuX.net] 以前とはいつの事か?またはどのバージョンの事か? 質問する前に自分の記憶が正しいかの確認をする https://docs.godotengine.org/en/3.4/classes/class_input.html 初登場時からget_axisの引数は2つ get_axisの機能を方向取る関数と認識しているのならば 引数の形式が変わっていても新しい引数の形式での使い方を理解するしかない
267 名前:名前は開発中のものです。 [2024/04/17(水) 11:59:17.28 ID:c7cp2PUr.net] >>263 そうでしたか なにかの記憶違いだったかもしれないです var direction if Input.is_action_just_pressed("ui_right"): direction = "right" if Input.is_action_just_pressed("ui_left"): direction = "left" if Input.is_action_just_pressed("ui_up"): direction = "up" if Input.is_action_just_pressed("ui_down"): direction = "down" _move(direction) 文字列での分岐にすることにしました
268 名前:名前は開発中のものです。 mailto:sage [2024/04/17(水) 12:28:13.73 ID:S9SgvMuX.net] なんとなくの予想だがUnityのInputSystem辺りと記憶が混ざってるのかもね 理解できず動かない簡潔なコードよりも理解できて正しく動く冗長なコードが勝るが get_axisとget_vectorは有用なので使い方は理解できた方が良い 余裕があれば挑戦してみて欲しい 公式のサンプルでは大体こんな感じで使われている # 左右をfloatで取得 var movement = get_axis("ui_left", "ui_right") # 上下左右をVector2で取得 var direction = get_vector("ui_left", "ui_right", "ui_up", "ui_down")
269 名前:名前は開発中のものです。 mailto:sage [2024/04/17(水) 14:58:45.87 ID:S9SgvMuX.net] Inputクラスの記述が抜けてた var movement = Input.get_axis("ui_left", "ui_right") # 上下左右をVector2で取得 var direction = Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down") 書き足しついでで補足すると意味的にはこんなん 1軸の向き = get_axis(-方向、+方向) Vector2(x軸の向き, y軸の向き) = get_vector(x軸負方向、x軸正方向、y軸負方向、y軸正方向) 移動処理が簡潔に書ける extends Node2D const SPEED = 300.0 func _process(delta): var direction = Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down") position += direction * SPEED * delta
270 名前:名前は開発中のものです。 [2024/04/17(水) 17:28:28.38 ID:c7cp2PUr.net] どうも get_vectorで方角を返すってやつですね
271 名前:名前は開発中のものです。 [2024/04/18(木) 11:29:20.11 ID:o06ulE3s.net] godotは割とredditが賑わってるのがありがたいは むしろunityより賑わってるのが謎
272 名前:名前は開発中のものです。 [2024/04/19(金) 18:17:49.55 ID:611er4q0.net] 配列特定の値を探したい場合、forで回して比較演算子かfindか使い分けはどうすればいいの?
273 名前:名前は開発中のものです。 mailto:sage [2024/04/19(金) 19:27:59.70 ID:6eKwksTY.net] 関数の方が安全で手っ取り早い代わりに若干低速な可能性がある どれくらい差があるかは知らない 配列の中身が順番に並んでるならbsearch使うか二分探索自分で書けば速い
274 名前:名前は開発中のものです。 [2024/04/19(金) 19:31:58.50 ID:611er4q0.net] どうも どのみち二次元だとfind使えないみたいですね
275 名前:名前は開発中のものです。 [2024/04/20(土) 11:57:25.68 ID:gSjSgOMM.net] 一時的にスクリプトを停止出来ますか? processをdisableしてもprintはされるみたいです
276 名前:名前は開発中のものです。 [2024/04/21(日) 10:08:48.46 ID:YXvcVHHE.net] 定型文登録って合ったっけ? 以下の4方向バージョンを登録しておきたい if Input.is_action_just_pressed("ui_up"): move()
277 名前:名前は開発中のものです。 [2024/04/23(火) 12:13:26.37 ID:/jRBBB4p.net] 特定の関数の中でしか使わない関数ってのはどう定義すればいいの? 入れ子に出来れば関係ない場所から参照されないからいいと思うんだけど func outer(): func inner(): こんな感じの入れ子は無理っぽいからラムダってやつ使うのかな しかし、以下だとprint結果が帰ってこない extends Node2D func _ready() -> void: print(lam) var lam = func outer(num): var value = "hogehoge" return value
278 名前:名前は開発中のものです。 [2024/04/23(火) 12:26:20.71 ID:/jRBBB4p.net] あっ、callしないと駄目なんですね
279 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 13:00:39.54 ID:K58WhwWv.net] 関数のままでは入れ子にできないからCallableとして宣言する 呼び出しは変数名で行うから関数名はなくて良い func _ready(): var innner = func(x = 1):return x * 2 prints("inner() called:", innner.call()) prints("inner(2) called:", innner.call(2))
280 名前:名前は開発中のものです。 [2024/04/23(火) 14:27:19.77 ID:/jRBBB4p.net] どうも 入れ子で書けないのなら、普通の関数とあまり変わらない感じですね 視覚的にこう1箇所にまとめたかったんですが
281 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 15:16:36.49 ID:K58WhwWv.net] 変数に代入して使うのが馴染みないかもだが 関係ない場所からの参照ができなくなるから>>274 で求められた機能としては十分 使用する変数は大体最初に宣言するから一箇所にまとまるのでは?
282 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 15:27:32.29 ID:K58WhwWv.net] >>272 完全停止は出来ないがprocess_modeにdisableを指定した上で 動かれて困るメソッドの先頭に以下の一文でも足せば良いんじゃないかな? if process_mode == Node.PROCESS_MODE_DISABLED: return
283 名前:名前は開発中のものです。 [2024/04/23(火) 19:08:20.21 ID:/jRBBB4p.net] >>278 関係ない場所から参照出来なくなるというのは、callが付与されることで、そのような効果があるということでしょうか? >>279 どうも disableでもおそらくreadyは動くみたいですね
284 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 19:38:02.85 ID:K58WhwWv.net] ローカルで宣言した変数のスコープはローカルという普通の話 別にCallableでの特別処理とかではない グローバルで宣言すればグローバルから扱える _readyの様な初期化処理まで動かしたくないというなら自分は設計の見直しをする 必要なときにadd_childとqueue_freeすればprocess管理する必要がないのではないか?
285 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 19:44:45.31 ID:nRUQyvbL.net] 15歳のGodot教本クラファン、あれ支援してみようかなー
286 名前:名前は開発中のものです。 mailto:sage [2024/04/23(火) 20:12:37.57 ID:SVQ
] [ここ壊れてます]
287 名前:G4/08.net mailto: 確か達成してた気するけどああいうの上乗せ倍プッシュで支援てできるんだっけ?いいんじゃね [] [ここ壊れてます]