[過去ログ] 【軽量】godot engine【無料】 part3 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
176: 軌道予測 [] 2024/03/24(日) 10:42:59.23 ID:o0STPUVA(2/5) AAS
なんやcopilot普通に使えるやん
マイクロソフトだからなんか微妙なイメージ持ってたわ
177: 名前は開発中のものです。 [] 2024/03/24(日) 16:34:42.38 ID:30RJWthY(1) AAS
使えるは使えるけど、全体の設計とか関数の仕様理解してないと出鱈目なもの作っちゃうな
何でもよしなに作ってもらえるものじゃない
178: 軌道予測 [] 2024/03/24(日) 17:12:56.64 ID:o0STPUVA(3/5) AAS
まあ質問の仕方っすね
179: 軌道予測 [] 2024/03/24(日) 19:25:47.06 ID:o0STPUVA(4/5) AAS
line2dで描いた線をリジッドボディ化する方法ってありますか?
コリジョンをつける件は解決したのですが、ノードの構成をどうすればいいかなと
↓ライン2dをリジッドボディにするには以下のノード構成にする必要があります
ノード1
■rigidbody2d
├line2d
└collisionPolygon2
描く用のline2dノードは別にあって、そこにスクリプトをつけます。
描き終わった時点で物理をつけて、落下させるという処理をしたいです。
ノード2
■line2d_drawing(描画処理を行うノード)
ノード2で描画を行ってから、別シーンにしたノード1に描かれたラインとコリジョンの情報を渡すような流れでしょうか
簡単なプログラムをかけても、こういう、流れ?フローの設計がかなり苦手(*´ω`*)
180: 軌道予測 [] 2024/03/24(日) 19:26:54.19 ID:o0STPUVA(5/5) AAS
訂正:ノード2で描画を行ってから、別シーンにしたノード1をadd_childし、描かれたラインとコリジョンの情報を渡すような流れでしょうか
181(1): 名前は開発中のものです。 [sage] 2024/03/24(日) 23:02:04.63 ID:zekcFUEh(1) AAS
ノード1にLine2Dがあるのに描く用のLine2Dが別にあると言う点が理解できない
Line2Dは線を描く為の物なので同じ内容なら2回も描く必要がない
Line2Dが保持している点データを使いまわしたいのならば
点データ管理用の変数を作ってそれをLine2Dやコリジョン作成に利用すると良い
ノードの構成自体は自分だとこうなる
違うのは描画にLine2DではなくPolygon2Dを使う点
CollisionPolygon2Dに接触判定用のポリゴンデータが渡せるなら
Polygon2Dに全く同じデータを渡して表示する事ができる
シーン1:ゲームを管理する本体
■Node2D※Node2Dである必要は特にないゲームを管理する為のスクリプトをアタッチする
シーン2:インスタンス化して使用する
■RigidBody2D:プレイヤーが描き込んだ物体
├Polygon2D:物体の描画に使う
└CollisionPolygon2D:物体の接触判定に使う
182: 軌道予測 [] 2024/03/25(月) 07:32:49.38 ID:SFtNN9tG(1/5) AAS
>>181
別にしなくていいんですね
line2dで描いたものの頂点をgeometry2dのoffset_polylineで取得して、その頂点をpolygon2dで再描画すりゃいいんですね
ありがとう
183: 軌道予測 [] 2024/03/25(月) 08:27:58.80 ID:SFtNN9tG(2/5) AAS
polygon2dってコリジョンつけるクラスだと思ってたナリ(*´ω`*)
184: 軌道予測 [] 2024/03/25(月) 14:16:15.68 ID:SFtNN9tG(3/5) AAS
1つのファイルに何行くらいコード書きます?
文字数増えると訳わからんくなるけど、対策とかないのかな
自分で1日前書いたコードが若わかめになる
185: 軌道予測 [] 2024/03/25(月) 14:38:30.56 ID:SFtNN9tG(4/5) AAS
godotって変数のアウトライナーってないのかな?
186: 軌道予測 [] 2024/03/25(月) 18:03:15.07 ID:SFtNN9tG(5/5) AAS
ど忘れしたんだけども、インスタンス化したシーンから、そのシーンの変数にアクセスできないのって普通なんだっけ?
オートロードかグローバル変数にでもしない限りは。
187(1): 名前は開発中のものです。 [sage] 2024/03/25(月) 22:34:21.53 ID:qPdwNxZG(1) AAS
「インスタンス化したシーンから、そのシーンの変数にアクセスできない」のは普通ではない
指示代名詞は誤解の元だからできるだけ使用は避けるべきだと思う
「その」が親のシーンを指しているのならば子インスタンスからはownerプロパティで参照できる
188: 軌道予測 [] 2024/03/26(火) 06:21:35.33 ID:UiMW4uHO(1/4) AAS
>>187
通常はインスタンス化するだけでグローバル化もなしに、アクセス出来るものですか?
試したらできましたが、できないパターンもあり、違いがよくわからないところです
189: 名前は開発中のものです。 [sage] 2024/03/26(火) 09:55:23.93 ID:RAozxNLR(1) AAS
せめてそのできないパターンのソースを示せよ
190: 軌道予測 [] 2024/03/26(火) 11:36:39.08 ID:UiMW4uHO(2/4) AAS
どうも
以下のコードなのですが、polygonプロパティにアクセスするとinvalied get indexエラーになるのです
しかし、このシーンをオートロードに指定していることが原因だったようです
それを今から調べます
画像リンク
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
191: 軌道予測 [] 2024/03/26(火) 12:42:11.47 ID:UiMW4uHO(3/4) AAS
あーそうか シングルトン的な観点で駄目なのかこれは
192: 名前は開発中のものです。 [sage] 2024/03/26(火) 16:26:55.68 ID:KPzoI6q7(1) AAS
描画するノードをオートロードに配置する設計に問題はあると思うが
そのコードはエラー無く動いたのでオートロードだからエラーになる訳ではないな
それはそれとして子ノードを参照する変数は宣言と初期化を纏めると
総行数が減って、_ready()以外でも自動補完も効くようになってお得
@onready var polygon2d_node := $Polygon2D
@onready var collisionPolygon_node := $CollisionPolygon2D
193: 軌道予測 [] 2024/03/26(火) 16:34:45.75 ID:UiMW4uHO(4/4) AAS
ありがとう
原因は良くわからないけど、オートロードはなるべく使わずに作っていきます
194: 軌道予測 [] 2024/03/27(水) 06:23:02.67 ID:E2lXw+Px(1/8) AAS
別シーンのready内で下位ノードを取得している場合、
呼び出す側のシーンにアタッチされた時点で、別シーンのreadyが実行されるから、アタッチされる前に下位ノードを取得しようとするとnullになるんすね(*´ω`*)
195(1): 軌道予測 [] 2024/03/27(水) 06:41:08.05 ID:E2lXw+Px(2/8) AAS
このスクリプトで別シーンの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")
196(1): 名前は開発中のものです。 [sage] 2024/03/27(水) 07:46:56.03 ID:asE13Xlz(1/3) AAS
@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である必要はあるのか
197: 名前は開発中のものです。 [sage] 2024/03/27(水) 07:48:17.73 ID:AFLeB0Kj(1) AAS
Mirrorってなんぞ
198: 名前は開発中のものです。 [sage] 2024/03/27(水) 07:56:43.05 ID:asE13Xlz(2/3) AAS
GodotEngineにラッパーライブラリ被せて簡単に扱えるようにしましたって感じかね?
何かあったら一大事になるから覚える価値あるかは疑問
GodotEngineで十分足りてると思う
199(1): 名前は開発中のものです。 [sage] 2024/03/27(水) 08:13:45.74 ID:asE13Xlz(3/3) AAS
とりあえずダウンロードして動かしてみたが4.3の改造版らしいが何が違うのかわからん
ロードマップらしい
外部リンク:github.com
なんもできとらんのでは?スタートアップ投資目的か?
200: 名前は開発中のものです。 [sage] 2024/03/27(水) 09:17:27.54 ID:s0lKVFz1(1) AAS
最近こういう感じの詐欺まがいのプロジェクト多いな
話題さえかっさらえばあとどうでもなるSNSファースト社会の弊害だな
上下前次1-新書関写板覧索設栞歴
あと 802 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.012s