【軽量】godot engine【無料】 part4 (891レス)
1-

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
1
(6): 2024/07/31(水)07:46 ID:fxP1vISb(1/7)調 AAS
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
2chスレ:gamedev
792: 08/13(水)14:37 ID:o1mYTevh(3/3)調 AAS
センスがないのがきちーな
793: 08/14(木)13:10 ID:Nb2iwLU4(1/2)調 AAS
衝突相手のオブジェクトがどれか調べる方法ってある?
名前で判定してるんだけど名前って変更することあるし、底に依存する設計って良くないのかなとか
衝突相手の名前がenemyだったら、if area.name = "enemy":処理
みたいな感じにしてる
794: 08/14(木)14:34 ID:p2Gn9odV(1/2)調 AAS
適切に管理してる限りは名前でも問題ないのでは?
instance IDで判定すれば名前が重複した場合の様な誤判定はなくせる
enemyに属する種別として判定したいのであればEnemyクラスにして型で判定する
またはグループで管理する
795: 08/14(木)15:24 ID:EPDo1MlI(1)調 AAS
ダメだ。5chはソース貼るとNGワードに引っ掛かるんだな
クラス名での判定処理が手軽なんじゃない?
class_nameの形で宣言するやつ

5chはソース貼れないからDiscordで聞いた方がいいと思う
796: 08/14(木)16:37 ID:Nb2iwLU4(2/2)調 AAS
ありがとう
名前でやってみるわ
別の変更することはそうそうないんだが、スクリプトでクラス名設定して、そちらを使ったほうがまあ後々便利そうではある
ただ、使いもしないものを考えても無駄だしな
797: 08/14(木)16:58 ID:p2Gn9odV(2/2)調 AAS
単純に1対1の接触判定なら名前で十分なんだけど
複数の敵だとか弾だとか種別で振り分ける要件があるなら型で判定するのが楽
その後の種別毎の処理もクラスに持たせれば尚捗る

後から名前判定を型判定に切り替えようと思った場合でも必要な修正量は少ないと思うので
そういう方法があると知ってるだけでも十分よ
798: 08/16(土)10:01 ID:yNHWyeJg(1/2)調 AAS
tonkusu
799: 08/16(土)10:09 ID:yNHWyeJg(2/2)調 AAS
もう何年も全く上達しとらん
800: 08/16(土)22:40 ID:grW1btj7(1)調 AAS
しゃっ、なぜか突然やる気出てきた! 一本なんか作ろっと
801: 08/17(日)00:26 ID:R99XdFlR(1)調 AAS
プラットフォーマー?シューティング?
いずれにせよゲーム作るのは大変
802: 08/17(日)06:08 ID:ZbAJcgXG(1/2)調 AAS
aiでインディーゲー制作終わる?
803: 08/17(日)06:48 ID:ZmztiPxu(1)調 AAS
終わってるのはお前の頭だ
804: 08/17(日)07:00 ID:ZbAJcgXG(2/2)調 AAS
はい
805: 08/17(日)09:26 ID:OtXByaPB(1)調 AAS
はいじゃないが
806: 08/17(日)15:05 ID:9AmcoDI2(1)調 AAS
受験で言ったら10数年浪人してるのと同じなのに未だに諦めないのは意味不
このままだと10年後も収入ゼロ行進が続くんじゃないの?
807: 08/19(火)09:10 ID:3t3CLEnJ(1)調 AAS
プログラミング苦手なんだが1日1時間からやりゃいいかな?
808: 08/19(火)10:35 ID:JdP3e7K/(1)調 AAS
数学の勉強から
809: 08/19(火)11:31 ID:GZsC++n5(1)調 AAS
落ちこぼれの学年最下位は1日何時間勉強したら偏差値50の平均的な大学に受かると思う?
810: 08/19(火)13:36 ID:uLkJ1eHB(1)調 AAS
下準備とか要らんから作りたいものがあるならさっさと作りなさい
811: 08/19(火)18:25 ID:jJatJopQ(1)調 AAS
作りたいものがあるならBrackeysのチュートリアル動画で今日明日中にGDScriptは終えるべき
作りたいものがないなら何もしなくていい

基本を終えたらChatGPTに「これがやりたい」と伝えればソースコードくれる
ソースコードの意味がわからなかったら説明して貰えばいい
それでもわからなかったらもっと簡単な実装に変えてくれと言えばいい
812: 08/20(水)06:35 ID:sxbQP0Ah(1/2)調 AAS
connectのcallableってチョウ噛み砕くとつまりなに?
813: 08/20(水)06:38 ID:w6+HP3Ao(1/3)調 AAS
シグナル発呼時に呼ばれる関数名
814: 08/20(水)06:44 ID:w6+HP3Ao(2/3)調 AAS
あ?connect張った側だと着呼か
まあCallableクラスは関数を表す
815: 08/20(水)10:41 ID:sxbQP0Ah(2/2)調 AAS
ありがとう
思い出してきた

ってかノードのプロパティにアクセスしてから、カンス名だけ指定したほうがシンプルかなぁ
collableの使い所が分からん
816: 08/20(水)11:26 ID:w6+HP3Ao(3/3)調 AAS
自分は1ファイルで見通せる方が好きなのでコードで接続してるが
通常はノードで設定した方が設定状況を纏めて見れるし
エディタに接続アイコンが表示されるのでシンプルかつ見やすいと思う

主にシグナル接続をコードで書くのは自前でシグナルを定義した場合になると思うが
これもグローバルクラスにすれば標準クラスと同様にノードで設定できる様になる

connect以外でのCallableの使い所はラムダ関数を使う場合や関数内関数での使用になるかな
817: 08/20(水)11:26 ID:8BIAqddk(1/2)調 AAS
# 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 を意識せずに利用できるため、実務でもこちらを使うのが一般的です。
818: 08/20(水)11:28 ID:8BIAqddk(2/2)調 AAS
# なぜ Callable を経由するのか?

簡潔にまとめると、以下のメリットがあります。

1. 安全性(未定義メソッドを is_valid() で事前検出可能)
2. IDE 補完・リファクタリング対応(文字列指定ではできなかった恩恵)
3. 統一性(シグナル以外でも「関数参照」として利用可能)
4. 柔軟性(ラムダでシンプルに書ける)
5. 将来性(Godot 4.x 以降の標準記法)
819: 08/21(木)07:12 ID:/HImpd/9(1/3)調 AAS
tonkusu
820: 08/21(木)10:04 ID:/HImpd/9(2/3)調 AAS
プログラミングっていきなり答え見たほうがいいのか?
821: 08/21(木)10:26 ID:OYDY07jx(1/8)調 AAS
見ないで答えるにはそれを知っていなければならないから最初は必ず見る
クイズだとしても知識を持っていなければ答えられない
パズルだとしてもルールを知らなければ考えられない

プログラムとはコンピュータとの対話言語を使った会話
言葉を覚えると言う意味では他言語とセオリーは変わらない
曖昧さが少ない分覚えやすいまである
822: 08/21(木)12:09 ID:Ajf2SJxV(1)調 AAS
最後はアルゴリズムだからなぁ
823: 08/21(木)12:24 ID:OYDY07jx(2/8)調 AAS
ゲームにおけるデータ処理なら必要なアルゴリズムは辞典読めば事足りると思う
ゲームに必要な物ならある程度はエンジンが機能を提供してくれる
他がやってない独創的な処理を実装したいなら頭悩ますしかないね
824: 08/21(木)13:27 ID:zThVp00O(1/3)調 AAS
実装したい機能について考え方さえわからない場合も多い
Godotではないが答えを見なければ今でも簡単な当たり判定すら実装できていなかっただろうと思う
825
(2): 08/21(木)14:05 ID:/HImpd/9(3/3)調 AAS
キャラクターをスイッチしたいのだけども
アクティブキャラだけ操作権があって、別キャラと衝突したらそっちに操作権が移る

シグナルはキャラA,B共にarea2dを使っていてあらかじめ有効化している
シグナルのオンオフをいちいち切り替えるのは面倒そうなんで

a,b両方から衝突のシグナルが飛んでくるんで、フィルタリングしたい
フィルタリングの条件分岐に必要な要素って何があるかな?

現在操作キャラ(a)からのシグナルを無視して、それ以外(b)からのシグナルが来たら、bに切り替えるって流れかな
オンオフで対応したほうがシンプルでいいかな

こういう論理的思考が壊滅的に出来ないみたい
練習方法ない?
826: 08/21(木)14:59 ID:OYDY07jx(3/8)調 AAS
自分が理解できない物を論理的に考えるのは無理なのでまず自分が理解できる所まで単純化する
コンピュータを指示通りに動く人として捉える
相手に自分の考えを伝えるには相手が理解できる言葉を使う
相手がどこまで理解できているかを想像する

>>325の例題を要約すると以下の感じであってるかな?
「アクティブ時にのみ操作可能なキャタクターが複数存在する」
「操作キャラクターが操作可能キャラクターに衝突すると操作権が衝突した相手に移る」
相手が理解しやすい単純な説明を心がける
まず概要を伝えて会話する為の基礎を築く
シグナルとかArea2Dだとか複雑な話題はなくて良い
相手と共通認識ができたらより複雑な話題へ移る

こんな感じで物事を単純化してそこから徐々に複雑化していく
練習方法としては相手が知らない事を説明する事、仕様書を書いて読んで貰う事かな?
場を作るのが難しいけどディスカッションを多数こなすのが良いのではないかな
827: 08/21(木)15:00 ID:OYDY07jx(4/8)調 AAS
>>325でなくて>>825だったわ
828
(2): 08/21(木)15:57 ID:OYDY07jx(5/8)調 AAS
必要なのかどうか判らんが>>825の制御方法を回答するなら以下かな
操作可能キャラクターに現在操作権があるかどうかを判定するアクティブフラグを持たせる
操作はフラグが有効な場合にのみ処理する
衝突シグナルの発呼はフラグが有効な場合にのみ処理する
衝突シグナル発呼後にフラグを無効にする
衝突シグナル着呼時にフラグを有効にする
829
(2): 08/21(木)17:37 ID:zThVp00O(2/3)調 AA×

https://pastebin.com/YyjtJXCC
830: 08/21(木)18:26 ID:OYDY07jx(6/8)調 AAS
ゲームマネージャがアクティブなキャラクターを保持する方式だね
その方が今誰がアクティブなのかが即判るので良いかもね

一つ気になる点としてはAの処理とBの処理の処理順でAが先に処理される場合
キャラクターAがBに衝突した際にアクティブキャラクターをBに更新してしまうと
その後のB側の衝突処理でBは自分がアクティブキャラクターと認識してAに更新してしまうのではと思う
さてどうかな?

仕様を誰でも判りやすい言語化するのはAIとの対話にも役立つと思うよ
831: 08/21(木)18:35 ID:OYDY07jx(7/8)調 AAS
ちょっと訂正、後から文章足したからキャラクターAの登場がずれた

キャラクターAとBが存在する時にAとBの処理順がAが先に処理される場合
AがBに衝突した際にアクティブキャラクターをBに更新してしまうと
その後のB側の衝突処理でBは自分がアクティブキャラクターと認識してAに更新してしまうのではと思う
832: 08/21(木)19:10 ID:zThVp00O(3/3)調 AAS
おっしゃる通りキャラAからキャラBにタッチした時にB側の_on_area_enteredが実行されて再度キャラAに操作権が渡る可能性があるため(物理サーバーがシグナルを発火させる順番に依存するため100%ではない)
「アクティブ側だけが切替処理を実行」「同じ物理フレームでの多重切替を禁止」の処理を盛り込む必要ありです

流石です
833: 08/21(木)19:31 ID:OYDY07jx(8/8)調 AAS
AIが使えるとかなり捗るね

自分の上げた>>828方式だと発呼するのが一人だけなのが保証されているので複数による切り替えは発生しない
>>829方式の場合はもうひと工夫が必要

これもやり方は色々あるけど一つ方法を挙げておくと
即時にアクティブキャラクターを更新するのが問題の発生原因なので更新処理を遅延させる
call_deferredを使用すると現フレームと次フレームの間に処理が行われるのでこれを利用する

より具体的にはアクティブキャラクター更新処理を関数化してcall_deferredで呼ぶ
自分で使うならこう書くんだけど行儀が良くないコードなので実用するなら適宜直してね

(func():gm.active_char = other_char).call_deferred()
834: 08/22(金)12:59 ID:5H9qw/cT(1/2)調 AAS
ありがとう
じっくり読んで作るナリよ

やっぱりアクティブキャラだけシグナルを発する方式が安全なんすかね?
835: 08/22(金)13:20 ID:hykeI/+Z(1)調 AAS
今回上がった>>828,829どちらでも多重切り替えの対策をしていれば安全性は変わらない
作る人が作りやすい間違えにくい方式を選べば良い
現在のアクティブキャラを頻繁に知る必要があるなら>>829の方が良いと思う
>>828の場合は対象キャラクターの全件走査が必要になる
>>828のメリットはゲームマネージャ不要なので携わるクラスやファイルが少なくなる事かな
全件走査の件はグローバルクラス化して静的変数を持たせればゲームマネージャを用意せずとも同じ結果を得られる
やり方は色々存在する

尚現処理では2体以上のキャラクターと同時に衝突した場合の切り替え対象が不定となるので
優先順位が必要な場合は何らかの追加処理が必要
836: 08/22(金)19:05 ID:5H9qw/cT(2/2)調 AAS
ありがとう
勉強がてら、フィルタリングでやってみるか
837: 08/25(月)19:24 ID:pgacrMvG(1)調 AAS
パッパとRPG造りたいナリ
838: 08/26(火)07:36 ID:jvaDPhtX(1)調 AAS
そういうあなたにぴったりなゲームエンジンがカドカワさんからでてますよ・・・
839: 08/26(火)09:16 ID:QxOlVIen(1)調 AAS
あーいうの余計むずく感じるんで無理
840
(1): 08/26(火)13:49 ID:WJT07pkb(1)調 AAS
じゃあ、おまえは何もできません、おまえ自身が無理だからです
出直してきてください
はい、次のワナビどうぞ
841: 生出白液 08/29(金)00:02 ID:511euTV9(1/2)調 AAS
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
842: 08/29(金)01:40 ID:VmXngAYr(1)調 AAS
>>840
お前Unity質問スレでもその先生ごっこやってたことあるだろ
滑ってんだよそのノリ
いちいちワナビ追っかけていって絡むのやめろ
843
(1): 08/29(金)01:51 ID:NTpF3sfj(1)調 AAS
「子が移動後に壁にぶつかったら親に通知して消滅するコードに
子のy座標が800を超えたら1行目と同様の処理を追加したい」

"壁に接触している"事を判定しているのはif is_on_wall():の部分なのでここを変更する
"壁に接触している"または"y座標が800を超えている"とする
if is_on_wall() or position.y > 800.0:

こんなん?
844
(2): 生出白液 08/29(金)21:55 ID:511euTV9(2/2)調 AAS
そのコードを加えてみましたが、Invalid assignment of property or key 'result' with value of type 'int' on a base object of type 'Window'.というエラーが出ました。このエラーの意味が全く分かりません教えてもらいたいです
845: 08/29(金)22:12 ID:US91n0Bz(1)調 AAS
煽りとか抜きにチャットAIに投げたほうが早いぞ
846: 08/29(金)22:48 ID:Zy5HkM5N(1/2)調 AAS
>>844
そのエラーはresultプロパティにアクセスしようとしたがプロパティが存在しないから発生している
>>843の修正を元には発生しない

想像に想像を重ねるとエラー文に出てくる"Window"はエラーを出したノードの親ノードを指している
if _on_wall():の次行のget_parent().result = 1が既出エラーを発生させる可能性がある
親ノードにぶら下がる子ノードだったならこのエラーにはならず親ノードの場合に発生する

修正以前にコードの親関係が正しくなくコードが機能する状態でないと思われる
修正前コードを動かすには孫ノードとコードが不足しているのでそれらの追加が必要

ノード構成は以下となるはず
Node2D (親コードextends Node2D配下のアタッチ先)
+CharacterBody2D (子コードextends CharacterBody2D配下のアタッチ先)
++CollisionShape2D
++Sprite2D (孫コードのアタッチ先※提示されていない)

自分もAIに聞いた方が応答速度が早くて良いと思うよ
847: 08/29(金)23:01 ID:Zy5HkM5N(2/2)調 AAS
想定が足りていなかった
CharacterBody2Dノードをブランチしてシーンとした場合に
修正後コードでこのシーンを「現在のシーンを実行」で動かすと>>844のエラーが発生する
本来親ノードがなければ動かないシーンをカレントシーンで動かした事が原因
正しく親ノードの配下としてCharacterBody2Dを配置する事
848
(3): 生出白液 09/02(火)22:58 ID:E0WT+1Oc(1)調 AA×

849: 09/02(火)23:33 ID:HYRahreF(1/3)調 AAS
>>848
get_parent()とは一つ上のノードを取得する関数なので
図のPlayerでget_parent()を実行したならば結果はColorRectになる
なのでColorRectの子としてPlayerを配置するならがresult変数はColorRectが持っていなければエラーとなる

一回の実行で同じ_redayが二回呼ばれる事は考えにくい
print関数で表示した結果の後ろの数字はノードの固有番号なので違っているならばそれぞれのノードが存在している事になる
ツリー上にCharacterBody2Dが2つ存在していてそれぞれが同じコードが割り当てられていると推測する
この場合、図示されているCharacterBody2DではないCharacterBody2DはNode2Dの配下のはず
ルート直下のCharacterBody2Dを削除すればresultにアクセスできないエラーはなくなる
850: 09/02(火)23:45 ID:HYRahreF(2/3)調 AAS
>>848
>シンプルにChatgptの使い方が悪いかもしれないけどあまり使えなかったです
判らない事は幾ら考えても判らないので聞いてくれて構わないが
残念ながらこういう場では解答が貰える保証がない
なので独学で学習しているならAIの利用方法を習得するのが望ましい

もちろんAIが確実に正答を返してくれる訳ではないので判らなかったら質問を投げてくれてOK
しかし返ってくるかどうかいつ返ってくるかも判らない返答を待つのは効率が悪い
自分は使ってないので判らないが廃墟に近いここよりDiscordの方が活気があったりしないだろうか?
851: 09/02(火)23:49 ID:HYRahreF(3/3)調 AAS
後は英語力必要になるけどredditあたりか
どこでも同じだけどコミュニティのルールに沿った質問が出来ないと相手にされなくなるから
質問する際にはルールを覚える必要はあるね
852
(1): 09/03(水)00:01 ID:jiI02xbM(1/4)調 AAS
>>848
少し間違っていた
自分:fish:<CharacterBody2D#29007807814>
親:root:<Window#28470936891>
親の親:<Object#null>
自分:fish:<CharacterBody2D#31323063660>
親:result:<Node2D#31272731991>
親の親:ColorRect:<ColorRect#31239177554>

このパターンだとColorRectの下にコードを持ったCharacterBody2Dは居ない
rootの下に配置されているのでこのツリーには存在していない
グローバルにCharacterBody2Dのコードを登録してはいまいか?
853: 09/03(水)11:39 ID:2H/FhQha(1/2)調 AAS
こういうやり取りのいいところは
ChatBOT使ったところでそいつができないことができるようになるわけじゃない、と確認できることだよな
こりゃあ、何年かかっても何もできないわけだわ
854: 09/03(水)12:00 ID:jiI02xbM(2/4)調 AAS
掲示板でもAIでも答えられる答えしか返らないので欲しい解答が得られる質問の仕方が判らないと先に進まないね
最初に提示されたコードでほぼ合っているので後少しの気付きを得られれば次に進めると思うんだな
コードレビューして基本的な考え方を学べると良いのだけれどそういう場を得られない人は大変よね
855: 09/03(水)12:29 ID:jiI02xbM(3/4)調 AAS
ノードの構造が変だと指摘されてノードから見える親を調べてる時点で有能に思う
埋め込んだコードが二回実行されるのが変だと気が付くのも有能
一度しか呼ばれない前提のコードが二回呼ばれているならば誰が呼び出しているかを探す事になる

取得した情報で自分自身の親情報が取れているのでどこにコードが存在しているかはおおよそ判る
ここで親がrootと表示されている事で自身が管理しているツリーに無いノードが存在している事が判る

GodotEngineの仕様を知っていればカレントツリーの上にrootがある事も判るのだけれど
初心者向け解説で触れているのは見かけないのでここは躓きポイント
root配下にカレントツリー以外がぶら下がる条件を知らないと更に躓く

そうなるパターンとしてはグローバルクラスが定義されている場合と
@toolなスクリプトが存在して勝手な振る舞いをしている場合
どちらの場合でも利用者が手を加えなければ勝手には発生しないので
設定を変えたりプラグインを導入していないかを確認する
856: 09/03(水)15:01 ID:JAFxBHMC(1)調 AAS
Discordにでも行けばいいのに、コードすらまともに貼れないここで長々と質問する意味が分からない
857: 09/03(水)15:08 ID:2H/FhQha(2/2)調 AAS
ぶっちゃけスパムレベルの質問だからね、追い出されたんだろ
こういう掃きだめ掲示板ならではよ
解決しようがしまいが誰も(本人も)困らないし
858
(1): 生出白液 09/03(水)18:05 ID:F2t9mgCh(1)調 AAS
>>852
エラーの原因はグローバルにCharacterBody2Dのコードを登録していたからでした。教えてくれてありがとうございます。後これからはディスコードで質問していきたいと思います
859: 09/03(水)18:38 ID:jiI02xbM(4/4)調 AAS
>>858
解決したなら良かった、先は長いから程々で頑張れよ
860
(1): 09/06(土)17:28 ID:jL8JB8c1(1)調 AAS
Area2Dノードを親にした物体を複製した後queue_free()で消したが衝突判定が残っていた。物体自体は見えないのに衝突判定だけ消えないことが起こるものですか?
861: 09/06(土)20:25 ID:hIKwuN7F(1)調 AAS
はい、そうです。
862: 09/06(土)21:05 ID:J6IH1IIs(1)調 AAS
ChatGPTで聞けば答えが出てくるようなレベルのことを人に聞くような人がまともなアプリ開発なんかできるの?
863: 09/06(土)21:34 ID:Cy3rYlNu(1)調 AAS
>>860
queue_free()はfree()をキューに入れる関数でその時点ではノードは消えていません
864: 09/14(日)16:40 ID:+FNV0YKb(1)調 AAS
チャットジーピーテーお金払わないと嘘ばかり教えてくるからな
865: 09/14(日)19:13 ID:qOx/PcAM(1)調 AAS
残念ながらお金を払っても嘘ばかり教えてくるぞ
866: 09/14(日)19:32 ID:XKuRbbQE(1)調 AAS
よさげなエロサンプル見せてこの続きは有料っつって金はらったら結局サンプルと同じ程度ものしかないみたいな
詐欺商売やないかヽ(`Д´)ノ
867: 09/16(火)06:32 ID:MGrSj3oL(1)調 AAS
いつのまにかGodot 4.5がリリースされた
contributorが400人を超えて規模が結構大きくなってきた
868: 09/16(火)07:00 ID:hyfiSgwN(1)調 AAS
変更内容が多くて項目一覧見てるだけで目が回った
869: 09/16(火)13:41 ID:MMr3FO17(1)調 AAS
LGBTかなんかで炎上したのはなんだったのかってくらい順調だな
870: 09/16(火)14:32 ID:5KPKLwK7(1)調 AAS
UnityやUEに比べて凄い軽いからなぁ。ログインも無いし。売上報告もいらない。
個人で使うなら最高のエンジンだろうね
871
(1): 09/16(火)15:09 ID:JwJdTzae(1)調 AAS
今時のバえるレンダリングエフェクトついたゴリゴリのリッチ3Dとかじゃないゲーム
すなわち、個人がフリーでつくるようなゲーム向けとしてはベストチョイスだろうな
ただし"ゲームをつくる事そのもの"ではなく、つくってる風な自分を自慢したいタイプには向かない
872: 09/16(火)16:30 ID:PZc5Vb+f(1)調 AAS
>>871みたいないっちょ噛みしたいだけの奴にも向かないんじゃない?
godotに限った話じゃなく、どのエンジンも不向きか
873: 09/17(水)11:07 ID:P5VnMNiY(1)調 AAS
初心者がYoutubeでUEと有料アセット使って「俺すげえ!!」って演出してる動画多いね。
そういうのはGodot向かない。
874: 09/17(水)12:54 ID:poSQVw81(1/2)調 AAS
おー、4.5結構盛りだくさんだな

2Dに関することは……、デバッグにバックトレース追加、シェーダーベイカー追加、タイルマップレイヤーはフュージョンハッできるようになったし、抽象クラスも追加されたしって感じか
いやー、これは熱い、アップグレードするかあ
875: 09/17(水)13:00 ID:XcG3rzRP(1)調 AAS
フュージョンハッってドラゴンボールかよw
876: 09/17(水)13:22 ID:poSQVw81(2/2)調 AAS
リリースノートのサブタイトルにそういうネタ仕込んでくる公式のノリ好きなんだよね
最初意味がよくわかんなかったけど
877: 09/17(水)17:07 ID:l/ra6xty(1)調 AAS
うぉー!
ペーペーの俺には背景タイルの当たり判定が最適化されたくらいしか分からなかったぜ
878: 09/17(水)19:23 ID:yZVcPIgM(1)調 AAS
ゲームエンジンとして超小型サイズだからアップデートも一瞬だなw
毎回、新バージョンDLで「あれ?ダウンロード途中で切れた?」と勘違いしてしまうw
879
(1): 09/20(土)09:35 ID:0geIAgeR(1/5)調 AAS
ゲー制作というより、バックルームみたいな映像作るのだが、unityのほうが楽かね
880: 09/20(土)10:09 ID:dGV4eSt2(1/2)調 AAS
お好きにどうぞ
881
(1): 09/20(土)10:47 ID:ThIDioy5(1/4)調 AAS
>>879
何を持って楽というか判らんからなんともだが簡単な録画機能として
UnityはRecorderパッケージが提供されていてGodotはMovie Maker modeが内蔵されている
機能が足りないなら外部ツールを使ったキャプチャーを検討すると良い

昨今は配信者が溢れる時代なのでキャプチャーの解説の方が充実しているのではないかと思う
882
(1): 09/20(土)12:17 ID:0geIAgeR(2/5)調 AAS
>>881
アセットの豊富さかな
883: 09/20(土)12:30 ID:ThIDioy5(2/4)調 AAS
>>882
映像作品としてエフェクト盛って加工するって話か?
あいにくUnityでそれ系は触ってないので比較はできないな
丁度ここ最近Godotのそれ周りで遊んでたが用語が判れば難しくはない感じだな
レンダリングの解説に書いてある事が=出来る事で良いと思う
docs.godotengine.org/en/latest/tutorials/3d/index.html#rendering

とはいえ情報量でもアセットでもUnityの方が豊富だろうからUnityが良いんじゃない?
884: 09/20(土)12:45 ID:0geIAgeR(3/5)調 AAS
そうだね
レトロフィルターとか使って、夢の中っぽい感じにしたいな
aiでやろうとしてたんだけど、なかなか思い通りにならないし、グロ系だとコンプラ的に駄目ってとこが結構ある
885: 09/20(土)13:07 ID:ThIDioy5(3/4)調 AAS
思ったんだが完全映像作品ならBlenderとか使った方が良いんじゃないか?
Unityも映像作品作れるように強化してるけど歴史的な情報の積み重ねはBlenderに軍配が上がるだろ

>レトロフィルター
そういうのはシェーダー担当だと思うが自分で作れるのでなければ配布されている物を使うしか無い
そういう点ではGodotは弱いな
少ない中から使える物を探さないとならない
886: 09/20(土)13:51 ID:0geIAgeR(4/5)調 AAS
blenderか
キャラの探索パートってゲームエンジンのほうが楽なんじゃね と思ってた
ゲームエンジンなら今まで通りgodot使うか

road to vostokみたいなやつも作れるなら十分でyそう
887: 09/20(土)14:06 ID:ThIDioy5(4/4)調 AAS
映像を作り込もうとするならBlenderの方が良いだろうって考えで
自作ゲーム程度の画質で良いならゲームエンジンで事足りる

Godotでのアセット利用に関してはいかんともし難く
シェーダーはAssetLibかgodotshaders.comで公開されているものが見つけやすい
画質をレトロ風例えばPS1風にするシェーダーもある
ただし解説具合がマチマチなので使い方を理解する所から始める必要がある
888
(1): 09/20(土)16:25 ID:0geIAgeR(5/5)調 AAS
ありがとう
blenderでとりあえず作るなり
ゲーム開発挫折しすぎて飽きたからね
889: 09/20(土)18:58 ID:dGV4eSt2(2/2)調 AAS
ワナビ2048は質問繰り返しの荒らしだから丁寧に答えんでもいいよ
890: 09/20(土)21:31 ID:z70mFp7/(1)調 AAS
>>888
飽きたならもう二度と来るなよ
891: 09/20(土)21:40 ID:7mT39V4c(1)調 AAS
出来もしないのに何を聞いているのかよく分からないオーラが凄い
実現するためのワークフローすら何も思いつかないから「何すればいい?」←何だコイツ???みたいになってて草
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.052s