[過去ログ] 【軽量】godot engine - part2 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
927: 2024/02/13(火)10:04 ID:j1du3Ri/(2/3) AAS
普通にメッシュインスタンスに入っていた
928: 2024/02/13(火)14:27 ID:j1du3Ri/(3/3) AAS
ちわす
ボール同士が合体する仕組みを作りたいです
例えば、1と2が衝突したら、加算されて3のボールになるという感じです
1と2は消滅します

スイカゲーム的な合体を作りたい感じですね

このとき、1か2にシグナルを仕込むのですが、両方にシグナル付けずに、片側から判断するんでしょうか?
929
(1): 2024/02/13(火)15:21 ID:UdYgXfq3(1) AAS
同じもの同士が合体しないのであれば片方からだけでもいいと思う
接触判定やシグナル送り自体は全部やって番号で合体させるかどうか判別させる方が応用は効くかも
930: 2024/02/13(火)19:44 ID:buz/jqFh(1) AAS
ワイも>>929に同意
とりあえず全部にシグナル仕込んどけば考えなくて済むうえ
仕様変更に強い
931: 2024/02/14(水)05:04 ID:NM7yugQr(1/7) AAS
どうもです
共通の球体を用意しておいて、そこに共通のスクリプトをつけて、そのベースを元にして1,2,3という球体を作る感じですね
書き方はgptに聞いてみます
932: 2024/02/14(水)06:11 ID:NM7yugQr(2/7) AAS
ゲームサクサク作れるようになったら楽しいんだろうな
933: 2024/02/14(水)06:21 ID:NM7yugQr(3/7) AAS
数字を加算するような仕組みを作る場合は、例えば1から1000まで すべての画像用意するのは大変だから、テキスト系を使うのかな
934: 2024/02/14(水)09:49 ID:mw6Y9l6K(1) AAS
デザイン重視なら数字画像を用意しておいてテキストのように組み合わせる方法もあるから
935: 2024/02/14(水)09:56 ID:NM7yugQr(4/7) AAS
ありがとう
数字画像はどっかから拾えばいいか
内蔵テキストを背景に組み合わせてもいいやもね
936
(1): 2024/02/14(水)12:15 ID:NM7yugQr(5/7) AAS
contact monitorの設定めんどいな
設定しないとbody_enteredが効かない
うっかり
937
(4): 2024/02/14(水)14:51 ID:ghvh5+Kq(1/3) AAS
Area2Dの衝突を即座に検知する方法ってないですか?
攻撃判定が食らい判定に重なったらダメージモーションに移行っていう当たり前のやつをやりたいんだが
ノードの移動変形が反映されて見た目では完全にパンチ食らってる状態なのに
衝突判定が更新されてなくて棒立ちのまま……っていう瞬間が1フレームだけ生まれてしまう
938
(1): 2024/02/14(水)16:49 ID:NM7yugQr(6/7) AAS
外部リンク:www.gdquest.com
ここに書いてることでどうにかなる?
939: 2024/02/14(水)18:33 ID:ghvh5+Kq(2/3) AAS
>>938
悪いけどどこに解決の糸口があるのか分からんかった
すまん
940
(1): 2024/02/14(水)19:19 ID:Il63QURN(1) AAS
>>937
どうやってモーション管理してるかによるのでは
ステートマシンで制御したら?
941
(1): 2024/02/14(水)19:23 ID:NM7yugQr(7/7) AAS
すごく初歩的な質問だと思うんですが、シグナルがこれで発火しないのはなぜでしょうか?
以下のコードをrigidbody2dにつけていて、staticbodyに衝突したときに発火するようにしてます
チュート見てるとコードからシグナルを使っているパターンがあるので、勉強中です

func _ready():
self.connect("body_enterd",_on_body_entered)
func _on_body_entered(body: Node) -> void:
print("hit")
942
(2): 2024/02/14(水)19:46 ID:vNLstP6c(1) AAS
godot4だと
シグナル自身がconnectする形じゃないっけ?

hoge_signal.connect(hoge_method)
943
(1): 2024/02/14(水)21:22 ID:unr7G+lU(1) AAS
>>937
->Area2Dの衝突を即座に検知する方法ってないですか?
無い、Area2Dは物理サーバーだかの更新時に一斉に判定されるからワープ直後にいきなり判定とかは無理
Area2Dを毎フレーム動かしてるなら_physics_processを使った方がいい
状況がよくわからないがどうしても気になるなら最大FPSとか物理ティックをいじるしかないんじゃない
944: 2024/02/14(水)23:25 ID:ghvh5+Kq(3/3) AAS
>>940
一応ステートマシンは使ってるけどステート遷移条件としてのarea_enteredシグナルが発信されるまでのラグに困ってる感じです
>>943
やっぱキツいですかね……
基本的に_physics_processで動かすようにしてるのでそこは間違えてないハズ……AnimationPlayerとかもPhysicsモードにしてるし
ティック弄るのは試してなかったから調べてみます
945: 2024/02/14(水)23:40 ID:bOM0D0dU(1) AAS
見た目上攻撃受けてるけどダメージモーションは次のフレームからって状況は商業ゲームとかでもわりと普通の挙動な気がする
946: 2024/02/15(木)00:08 ID:U+ib019H(1) AAS
気にしてるのは制作者だけってパターンもあったりするし
実際どういう挙動なのか見ないと何とも言えないけど

食らい判定をもう1つ追加して実際のダメージ判定より前に置いて、
攻撃がボディに当たる手前でモーションだけ変化させてタイムラグごまかすとかどう?
947
(1): 2024/02/15(木)06:09 ID:I2lSz8t6(1/5) AAS
>>942
シグナル自体がコネクトというのはどういうことですか
リファレンスあれば教えて下さい
948: 2024/02/15(木)09:02 ID:C6Jtia7P(1) AAS
そうなるともう公式をよく読んでとしか
949
(1): 2024/02/15(木)09:29 ID:4oQt/aCU(1/3) AAS
エスパーの時間だ!コラァ!!
>>941で発火しないのは>>936じゃなくて?
>>947>>941のconnectの書き方が古くてgodot4では>>942の書式ではとの指摘
リファレンスはGodotEngine起動してF1キー押して検索キーワードにconnectと打ち込めば候補がでるから
ObjectのconnectとSignalのconnectを読むと良い
950
(1): 2024/02/15(木)11:40 ID:I2lSz8t6(2/5) AAS
>>949
どうも
contactmonitorの設定は大丈夫なので、コードの書き方だと思うんですよね

ヘルプでコネクトしらべました
connect(signal: StringName, callable: Callable, flags: int = 0)

リファレンスにはないし、どっち見ればいいのかわからないですね

第一引数は名前で、第二は_on_body_enteredというシグナル名、第三はよくわからないので書いていません
951: 2024/02/15(木)11:48 ID:I2lSz8t6(3/5) AAS
ごめんなさい
単純に関数の引数と型とか書いてないのが悪かったみたい
これないだけで動かなくなるんだ
func _ready():
connect("body_entered",_on_body_entered)
func _on_body_entered(body:Node)->void:
print("hit")
952
(1): 2024/02/15(木)12:10 ID:4oQt/aCU(2/3) AAS
connectはgodot4を使っているならSignalの方が良いObjectの方は互換性維持の為に残っているのだと思う
文字リテラルが無いのでより安全なコードとなる
外部リンク[html]:docs.godotengine.org
953: 2024/02/15(木)12:29 ID:I2lSz8t6(4/5) AAS
>>952
コード内からシグナル呼び出す方法がconnectで、エディタだけでやる場合はシグナルってことじゃないのですか?
954: 2024/02/15(木)13:02 ID:4oQt/aCU(3/3) AAS
新しい方が使い勝手が良いだけだから目的通りに動いていて問題ないならそれで良いよ
Objectクラスのconnectメソッドは3.xで使われている古い形式
外部リンク[html]:docs.godotengine.org
Signalクラスのconnectメソッドは4.xからの新しい形式
外部リンク[html]:docs.godotengine.org
955: 2024/02/15(木)14:24 ID:I2lSz8t6(5/5) AAS
ありがとう
動けばいいね 完成目指す
956: 2024/02/15(木)17:37 ID:sVKQXRzU(1) AAS
>>937
検証してみたが仕様っぽい
_physics_processが呼ばれるすぐ前に判定が行われるのでどうやっても1フレームのディレイが発生する
RaycastとかShapeCast、DirectSpaceStateとかは影響受けないからそれかな
パフォーマンスは知らん
外部リンク:forum.godotengine.org
1-
あと 46 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.023s