【軽量】godot engine【無料】 part3at GAMEDEV
【軽量】godot engine【無料】 part3 - 暇つぶし2ch138:名前は開発中のものです。
24/03/16 13:03:45.25 +bq7XejG.net
2点の線の間を埋めたい時は線形補完を使用する
Vector2にlerp()という線形補完メソッドがある
2点の位置ベクトルaとbが存在する時
for t in range(10):
var p = a.lerp(b, 0.1 * t)
でa-b間を通る位置ベクトルpを10得られる
公式ドキュメント
URLリンク(docs.godotengine.org)

139:軌道予測
24/03/16 13:13:32.53 ECp53ZYt.net
多分、描いた線をコリジョン化したい場合は、ジオメトリー系を使うみたいです
今から調べます

140:名前は開発中のものです。
24/03/16 13:42:11.02 33L2QT9a.net
Qは一定間隔で円なの普通に見てわかるな
>>133でカプセルっつってんだからカプセルか間に長方形挟むでもいいと思うけど直線がダメか

141:軌道予測
24/03/16 14:03:51.94 ECp53ZYt.net
1フレームあたり座標をずらしたものを複数個追加する方法でいけるかもね

142:軌道予測
24/03/16 17:55:12.95 ECp53ZYt.net
↑駄目だった
やっぱりカーソル早く動かすと1フレームあたりの描画量が足りなくて、点々になっちまう(*´ω`*)、、、、
ジオメトリあたり試してみるナリが、godotの場合、線を引いてそれにコリジョンをつけるには何の機能がいいの?

143:軌道予測
24/03/18 06:18:37.02 sBH5kPda.net
line2dにコリジョンつけたいんだけど、方法ある?
segmentshapeで太さ出せるだろうか?

144:名前は開発中のものです。
24/03/18 12:34:34.92 /glnBgCG.net
SegmentShape2Dで太さは指定できない
厚みを持たせるなら元ネタ同様に球を並べるか二点を通るポリゴンを自分で作る
二点の中点にRectangleShape2Dを置いて傾けるという方法でも可能

145:名前は開発中のものです。
24/03/18 13:18:28.54 /glnBgCG.net
端の処理を考えたらCaosuleShape2Dの方が綺麗にできる

146:軌道予測
24/03/18 13:26:05.86 sBH5kPda.net
rectangleshape2dだと曲線とか難しそうですね
玉連続の場合、1フレームあたりに複数個追加しないと玉が飛ぶんですが、どういうやり方があるんでしょうか。

147:名前は開発中のものです。
24/03/18 13:30:42.80 /glnBgCG.net
使える情報は前フレームの座標と現フレームの座標
フレーム間の座標は自分で作るしかない
回答は>>138

148:軌道予測
24/03/18 13:40:45.88 sBH5kPda.net
どうも
玉手法はgptに聞いてみます
線形補間もやってみます

149:軌道予測
24/03/18 19:15:29.31 sBH5kPda.net
こういうときはunityでのやり方を調べると参考になるかもですね
godotだとやはり情報が少ないっす

150:軌道予測
24/03/19 14:44:11.82 D3Qdtv84.net
URLリンク(www.youtube.com)
このゲームのラインって玉の連続と上で教えてもらったんですが、どこを見ると玉ということが分かりますか?
玉であってもコリジョンを曖昧にすればいけそうですね

151:名前は開発中のものです。
24/03/19 15:20:17.53 n2087dMP.net
引ける線が無制限のつもりならgd_paintみたいなお絵描き機能実装してopaque_to_polygonsの方がいいかも

152:軌道予測
24/03/19 17:15:47.28 D3Qdtv84.net
無制限とはどういうことですか?
色をポリゴン化する機能は知りませんでした

153:名前は開発中のものです。
24/03/19 17:55:59.32 n2087dMP.net
ドラッグで線を描くとして、線を引いてる間に毎フレーム線や円を追加してるとそのうちオブジェクト数がえらい事になる

154:名前は開発中のものです。
24/03/19 18:44:46.90 hE1w1zmY.net
えらい数になる前に点を間引いたり直線近似するんよね

155:軌道予測
24/03/20 09:55:11.93 o2i+3Cka.net
球が増えすぎると重くなるとしたら、ラインのながさを制限するなりしないとだめってことですよね
それもゲーム性にすりゃいいかもです

156:軌道予測
24/03/20 09:55:52.73 o2i+3Cka.net
点の連続で線を描くというのは一般的な方法なんでしょうか。
点が飛ぶのは、lerpでどうにか補完できないか考えてます

157:軌道予測
24/03/21 11:09:56.75 IgSPnTWH.net
godotで3dゲーム作るのはあり?
お遊びだけどさ

158:軌道予測
24/03/21 13:13:49.23 IgSPnTWH.net
やっぱホワイトボックスレベルでも3d作るのは大変だと感じるナリ

159:名前は開発中のものです。
24/03/21 16:40:50.08 XmwxGLbE.net
Godotで3Dゲームを作るのが無しだったら>>1の作例は無いだろう
3Dの方が要求知識が増えるので簡単とは言わないが苦手意識が強すぎる様に思う
3Dでもカメラを固定して一軸を全く使わなければ2Dとほぼ同じ扱いになる
3Dを使ったエフェクトが使いやすくなるのでメリットもある

160:軌道予測
24/03/21 18:06:43.28 IgSPnTWH.net
まあね
完成させられないで失敗しかしてないから

161:名前は開発中のものです。
24/03/21 23:24:33.92 XmwxGLbE.net
少なくとも自分で調べたり聞いた結果
線の引き方は覚えたし内容は理解しきれなくとも線形補完という手法も知った
以前と比べれば何かした分は成長している
how-toを聞いただけで理解して使いこなせたら秀才
使いこなせないのは知識も経験も足りないからで功を焦りすぎ

162:名前は開発中のものです。
24/03/21 23:30:23.01 XmwxGLbE.net
点と点の間の線を引く際に不足する点を補完する方法が線形補完
線を引く上では一般的と言えるがゲームでの利用においては制限があるのは指摘されている通り
制限が問題になるなら対策を打つなり別方法を使用する事になる

163:軌道予測
24/03/22 14:16:19.70 jsxrvFIK.net
コツコツやってきます
興味が長続きしないので解決しなくても課題は定期的に変えますが、、、それが問題

164:軌道予測
24/03/22 20:17:17.38 jsxrvFIK.net
godotのコードサンプルってどこで手に入りますか?
kids can codeはたまに見ますが

165:名前は開発中のものです。
24/03/22 22:12:21.80 YF/BaExa.net
公式のデモプロジェクト
URLリンク(github.com)
細かく解説されている訳ではないので読み解くのは大変だが物量はある
GodotEngineのバージョンで差異があるのでコードを参考にするなら対象バージョンのブランチを選ぶ
全てではないがブラウザで動かせるので手っ取り早くイメージを掴める
URLリンク(godotengine.github.io)

166:軌道予測
24/03/23 10:59:33.56 apw+jUEF.net
geometry2dってポリゴン2dみたいにポリゴンを描くクラスと考えていいんでしょうか
まだ使い方が分かってない
ただ、シングルトンではあるみたいです

>>165
ありがとう

167:軌道予測
24/03/23 11:40:20.63 apw+jUEF.net
geometry2d自体は頂点を生成するだけで、ポリゴンはcollisionpolygon使うみたいですね

168:名前は開発中のものです。
24/03/23 13:42:14.97 uy0YEbAb.net
3dのローポリ作品多いけど、リアルにしたらエンジン的にキツいんかな?

169:名前は開発中のものです。
24/03/23 14:40:47.81 OOg18fNS.net
ハイポリモデルを使うのがキツイのはエンジンじゃなくてマンパワーでしょ

170:軌道予測
24/03/23 18:16:55.69 apw+jUEF.net
最新のgptは有料じゃないと使えないのかな
godot4についてはデータベースがないみたい
copilot使ってみるけど、他におすすめある?

171:軌道予測
24/03/23 19:49:59.54 apw+jUEF.net
geometry2dのoffset_polylineについて質問なんですけど、この関数にポリラインの配列を渡すとなぜか2次元配列で帰って来るのですが、なぜでしょうか
URLリンク(docs.godotengine.org)
返り値をcollisionPolygon2dに代入して使いたいのですが
collisionPolygon2d.polygon = array

172:名前は開発中のものです。
24/03/23 23:13:23.43 uy0YEbAb.net
C#で書いてたらだんだん損した気分になってきた…

173:名前は開発中のものです。
24/03/23 23:57:14.52 J5ee5UXV.net
>>171
そこの説明に書いてある通りで結果が複数になる場合があるから
>because inflating/deflating may result in multiple discrete polygons.
安易な対応方法としては厳密に扱う必要がなければ最初の要素だけ使えば良い
ollisionPolygon2d.polygon = array[0]
>>166
自分の認識ではこんな感じ
PackedVector2Array:点の集合体=ポリゴン
Array[PackedVector2Array]:複数ポリゴン
Polygon2D:ポリゴンを表示に使う
ColiisionPolygon2D:ポリゴンを接触判定に使う
Geometry2D:ポリゴンの加工、評価の為の便利関数群

174:名前は開発中のものです。
24/03/24 06:18:11.73 NBGeRgaU.net
>>172
前に色々調べたときgodotでC#つかうとC#部分は速いけど本体APIとのやりとり部分でオーバーヘッドが生じやすく
トータルでみると結局全部GDスクリプトで書くほうが速いみたいな話を読んだ記憶

175:軌道予測
24/03/24 06:25:14.14 o0STPUVA.net
>>172
厳密すぎて疲れるっていうかね、、、

>>173
geometry2dは位置を作るだけですね、理解
ありがとう

176:軌道予測
24/03/24 10:42:59.23 o0STPUVA.net
なんやcopilot普通に使えるやん
マイクロソフトだからなんか微妙なイメージ持ってたわ

177:名前は開発中のものです。
24/03/24 16:34:42.38 30RJWthY.net
使えるは使えるけど、全体の設計とか関数の仕様理解してないと出鱈目なもの作っちゃうな
何でもよしなに作ってもらえるものじゃない

178:軌道予測
24/03/24 17:12:56.64 o0STPUVA.net
まあ質問の仕方っすね

179:軌道予測
24/03/24 19:25:47.06 o0STPUVA.net
line2dで描いた線をリジッドボディ化する方法ってありますか?
コリジョンをつける件は解決したのですが、ノードの構成をどうすればいいかなと

↓ライン2dをリジッドボディにするには以下のノード構成にする必要があります
ノード1
■rigidbody2d
├line2d
└collisionPolygon2

描く用のline2dノードは別にあって、そこにスクリプトをつけます。
描き終わった時点で物理をつけて、落下させるという処理をしたいです。
ノード2
■line2d_drawing(描画処理を行うノード)

ノード2で描画を行ってから、別シーンにしたノード1に描かれたラインとコリジョンの情報を渡すような流れでしょうか

簡単なプログラムをかけても、こういう、流れ?フローの設計がかなり苦手(*´ω`*)

180:軌道予測
24/03/24 19:26:54.19 o0STPUVA.net
訂正:ノード2で描画を行ってから、別シーンにしたノード1をadd_childし、描かれたラインとコリジョンの情報を渡すような流れでしょうか

181:名前は開発中のものです。
24/03/24 23:02:04.63 zekcFUEh.net
ノード1にLine2Dがあるのに描く用のLine2Dが別にあると言う点が理解できない
Line2Dは線を描く為の物なので同じ内容なら2回も描く必要がない
Line2Dが保持している点データを使いまわしたいのならば
点データ管理用の変数を作ってそれをLine2Dやコリジョン作成に利用すると良い
ノードの構成自体は自分だとこうなる
違うのは描画にLine2DではなくPolygon2Dを使う点
CollisionPolygon2Dに接触判定用のポリゴンデータが渡せるなら
Polygon2Dに全く同じデータを渡して表示する事ができる
シーン1:ゲームを管理する本体
■Node2D※Node2Dである必要は特にないゲームを管理する為のスクリプトをアタッチする
シーン2:インスタンス化して使用する
■RigidBody2D:プレイヤーが描き込んだ物体
├Polygon2D:物体の描画に使う
└CollisionPolygon2D:物体の接触判定に使う

182:軌道予測
24/03/25 07:32:49.38 SFtNN9tG.net
>>181
別にしなくていいんですね
line2dで描いたものの頂点をgeometry2dのoffset_polylineで取得して、その頂点をpolygon2dで再描画すりゃいいんですね
ありがとう

183:軌道予測
24/03/25 08:27:58.80 SFtNN9tG.net
polygon2dってコリジョンつけるクラスだと思ってたナリ(*´ω`*)

184:軌道予測
24/03/25 14:16:15.68 SFtNN9tG.net
1つのファイルに何行くらいコード書きます?
文字数増えると訳わからんくなるけど、対策とかないのかな
自分で1日前書いたコードが若わかめになる

185:軌道予測
24/03/25 14:38:30.56 SFtNN9tG.net
godotって変数のアウトライナーってないのかな?

186:軌道予測
24/03/25 18:03:15.07 SFtNN9tG.net
ど忘れしたんだけども、インスタンス化したシーンから、そのシーンの変数にアクセスできないのって普通なんだっけ?
オートロードかグローバル変数にでもしない限りは。

187:名前は開発中のものです。
24/03/25 22:34:21.53 qPdwNxZG.net
「インスタンス化したシーンから、そのシーンの変数にアクセスできない」のは普通ではない
指示代名詞は誤解の元だからできるだけ使用は避けるべきだと思う
「その」が親のシーンを指しているのならば子インスタンスからはownerプロパティで参照できる

188:軌道予測
24/03/26 06:21:35.33 UiMW4uHO.net
>>187
通常はインスタンス化するだけでグローバル化もなしに、アクセス出来るものですか?
試したらできましたが、できないパターンもあり、違いがよくわからないところです

189:名前は開発中のものです。
24/03/26 09:55:23.93 RAozxNLR.net
せめてそのできないパターンのソースを示せよ

190:軌道予測
24/03/26 11:36:39.08 UiMW4uHO.net
どうも
以下のコードなのですが、polygonプロパティにアクセスするとinvalied get indexエラーになるのです
しかし、このシーンをオートロードに指定していることが原因だったようです
それを今から調べます
URLリンク(i.imgur.com)
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:軌道予測
24/03/26 12:42:11.47 UiMW4uHO.net
あーそうか シングルトン的な観点で駄目なのかこれは

192:名前は開発中のものです。
24/03/26 16:26:55.68 KPzoI6q7.net
描画するノードをオートロードに配置する設計に問題はあると思うが
そのコードはエラー無く動いたのでオートロードだからエラーになる訳ではないな
それはそれとして子ノードを参照する変数は宣言と初期化を纏めると
総行数が減って、_ready()以外でも自動補完も効くようになってお得
@onready var polygon2d_node := $Polygon2D
@onready var collisionPolygon_node := $CollisionPolygon2D

193:軌道予測
24/03/26 16:34:45.75 UiMW4uHO.net
ありがとう
原因は良くわからないけど、オートロードはなるべく使わずに作っていきます

194:軌道予測
24/03/27 06:23:02.67 E2lXw+Px.net
別シーンのready内で下位ノードを取得している場合、
呼び出す側のシーンにアタッチされた時点で、別シーンのreadyが実行されるから、アタッチされる前に下位ノードを取得しようとするとnullになるんすね(*´ω`*)

195:軌道予測
24/03/27 06:41:08.05 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")

196:名前は開発中のものです。
24/03/27 07:46:56.03 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である必要はあるのか

197:名前は開発中のものです。
24/03/27 07:48:17.73 AFLeB0Kj.net
Mirrorってなんぞ

198:名前は開発中のものです。
24/03/27 07:56:43.05 asE13Xlz.net
GodotEngineにラッパーライブラリ被せて簡単に扱えるようにしましたって感じかね?
何かあったら一大事になるから覚える価値あるかは疑問
GodotEngineで十分足りてると思う

199:名前は開発中のものです。
24/03/27 08:13:45.74 asE13Xlz.net
とりあえずダウンロードして動かしてみたが4.3の改造版らしいが何が違うのかわからん
ロードマップらしい
URLリンク(github.com)
なんもできとらんのでは?スタートアップ投資目的か?

200:名前は開発中のものです。
24/03/27 09:17:27.54 s0lKVFz1.net
最近こういう感じの詐欺まがいのプロジェクト多いな
話題さえかっさらえばあとどうでもなるSNSファースト社会の弊害だな

201:名前は開発中のものです。
24/03/27 09:34:32.48 njswSuTs.net
ノードの自動読み込みとノードのシングルトンって使い分けたほうがいい?
郷に入ってはの精神でなんとなく自動読み込みの方使ってるけど

202:名前は開発中のものです。
24/03/27 10:09:54.95 gGONJtOf.net
>>199
色々追加はされているがまだ始まったばかりやな
最初のコミットは3/15だしそんなもんやろ

203:軌道予測
24/03/27 10:16:36.57 E2lXw+Px.net
>>196
呼び出す側でget_nodeするんですね
シーンに追加されないと子のreadyも実行されないのかなと

204:軌道予測
24/03/27 11:36:51.00 E2lXw+Px.net
godotエディター上で手書きでステージを描いて行く手法とありますかね?
カーソルでポリゴン編集でもいいんですが

205:軌道予測
24/03/27 11:54:27.12 E2lXw+Px.net
URLリンク(store.steampowered.com)
こんな感じのステージです
タイルマップでも難しそうだし、手書きですよね

206:軌道予測
24/03/27 13:43:40.07 E2lXw+Px.net
普通にポリゴン2dでコチコチ打てるやん
ありがとう!!

207:軌道予測
24/03/27 15:26:01.61 E2lXw+Px.net
あっ、でも打てないことがある 仕組みが良く分からん

208:軌道予測
24/03/27 17:03:39.52 E2lXw+Px.net
上のバーに編集モードあったナリありがとう

209:軌道予測
24/03/29 08:00:09.73 YYuuvBhg.net
2dステージ作るのも大変ナリね

210:名前は開発中のものです。
24/03/29 12:26:10.39 4gUGlpzt.net
>>209
専スレ立てたら?
ここお前のレスで埋め尽くされてるじゃん

211:軌道予測
24/03/29 12:44:49.14 YYuuvBhg.net
いいんじゃない 書き込まないと落ちるしもともと人が少ないスレ

212:名前は開発中のものです。
24/03/29 13:04:54.90 twd2rh/A.net
なにひとつよくないが、そんなんだから雑談スレ追い出されんだよ
質問ですらない独り言とかTwitterで鍵かけてつぶやいてろ

213:名前は開発中のものです。
24/03/29 13:12:07.70 sRPqCb6v.net
>>211
いくら過疎スレでも占有はよくないよ
自分で専スレ立てれない?
そっちを日記として使って、どうしても解決できない問題があるときだけここで聞けばいいよ

214:名前は開発中のものです。
24/03/29 13:19:13.92 YYuuvBhg.net
じゃあ君等が落ちないようにしてね

215:名前は開発中のものです。
24/03/29 13:21:25.50 18de9J88.net
dat落ちの条件理解してなさそうだし、適当な事言うのは辞めた方がいい
何か勘違いしてないか?

216:名前は開発中のものです。
24/03/29 13:38:45.51 sRPqCb6v.net
>>214
立てたよ
こっち自由に使ってくれ
俺も使う予定
ゲーム制作の日記、備忘録、メモなど好きに呟くスレ
スレリンク(gamedev板)

217:名前は開発中のものです。
24/03/29 14:40:51.42 YYuuvBhg.net
荒れるから素直に謝っておくか
不快にさせてすみません

218:名前は開発中のものです。
24/03/29 15:42:09.03 s+Iwx5M0.net
>>210-218
個人粘着でスレの進行妨害するのやめてくれないか?
無駄レスも多いが制作に絡んだ話はしている
自治厨始める奴の方が邪魔
無駄レスが気に入らないなら会話になるGodotの話題を出してくれ

219:名前は開発中のものです。
24/03/29 15:46:26.16 2tYAETUL.net
godot4.0になった辺りで触らなくなったんだがもう4.3まで伸びてんのな
4.1~4.3でなんか目玉機能追加された?

220:名前は開発中のものです。
24/03/29 16:43:00.72 18de9J88.net
そもそも過疎板にはDat落ち判定はないんだが(nKB未満が即死する即死判定はある)
頓珍漢な言い訳はやめなさいと言っただけだぞ

221:名前は開発中のものです。
24/03/29 17:26:29.20 nuxfBRdB.net
圧縮で落ちるのが最終更新なら2018年とかのが残ってるから確かに当分は大丈夫そうだな

222:名前は開発中のものです。
24/03/29 17:47:38.73 imN+3EnT.net
3Dファイルはgltf一択?
Blender連携はテクスチャ周りが上手くいかん

223:名前は開発中のものです。
24/03/29 17:56:09.05 YYuuvBhg.net
>>222
fbxはライセンスの関係で使えないんじゃなかった?
今どうなってるか分からん 3dやってないし

224:名前は開発中のものです。
24/03/29 18:36:00.41 eapD4MOf.net
数日放置してたら案の定もめてて草
正直異様でスレ見る気も失せる状態だったし
>>218もいちいち絡んでちゃ自治厨と大差ない
しょーもな

225:名前は開発中のものです。
24/03/29 21:52:57.37 PtR313Sj.net
オマエモナー

226:名前は開発中のものです。
24/03/29 23:38:18.95 imN+3EnT.net
日本語でgodot関連調べてると大抵同じ人の記事にたどり着く…何者なんだ…

227:名前は開発中のものです。
24/03/30 15:36:35.50 8Or9Js4W.net
>>224
これ
変な拘りで自治が自治が言ってる時点で自治してるようなもんだし
5chなんだから気に入らなきゃ別スレでも立てて好きにやりゃ良いのに

228:名前は開発中のものです。
24/03/30 23:48:04.78 uJH0yGQv.net
オマエモナー

229:名前は開発中のものです。
24/04/01 06:44:36.40 bnl1SBKq.net
マリオみたいな2dアクションってタイルマップ使わずに作るのはあり?
タイルマップないと調整が難しいんじゃないかな

ジャンプ力3とした場合、谷をタイル3つぶんにすればギリギリ届く、といった調整が簡単

230:名前は開発中のものです。
24/04/01 08:02:59.00 PL23FYq5.net
>>229
最近のゲームではNoitaが地形全部ピクセルかなと思います
今はCPUやRAMが潤沢なので十分ありなのでは

231:名前は開発中のものです。
24/04/01 12:52:37.52 bnl1SBKq.net
jumpkingみたいな感じのを作りたい
あれはタイルマップ感はないけど、タイルマップではないにしてもグリッドをベースにしたほうが楽そう

232:名前は開発中のものです。
24/04/01 13:15:59.82 vOJskMGJ.net
godotはグリッドにスナップできるし
jumpking程度ならコリジョン付けて配置してくだけで行けると思うよ

233:名前は開発中のものです。
24/04/01 17:11:07.39 bnl1SBKq.net
サイトでもグリッドデザインとかあるしね

234:名前は開発中のものです。
24/04/01 19:23:56.08 bnl1SBKq.net
URLリンク(youtu.be)
この画面中央にある浮島みたいな複雑な形状もタイルマップなのかな?

235:名前は開発中のものです。
24/04/01 19:35:50.50 Qv7VTYs7.net
JKは地形の最小単位自体は見える気がするし単に細かめのタイルマップで再現できるのはできるんじゃね
modの作り方見た感じ判定はRGB画像をタイルマップみたく扱ってて見た目は一枚絵被せてるらしい

236:名前は開発中のものです。
24/04/01 20:13:46.87 bnl1SBKq.net
タイルマップ研究してみる
機能じゃなくてデザインから作る試みをしてるから
被せるというのは、つまりタイルマップでマスキング(くり抜き)してる感じかな?

237:名前は開発中のものです。
24/04/01 21:28:39.74 Qv7VTYs7.net
RGB画像は1画面辺り60×45とかの荒いやつだから違う
ゲームデザイン(判定、地形)だけタイルマップ式でそれに合わせた画像を別で用意してるってこと
これ貼るのが早いか
URLリンク(jumpkingplus.github.io)
URLリンク(jumpkingplus.github.io)

238:名前は開発中のものです。
24/04/02 06:38:50.57 gq8N0/8x.net
>>237
ん?一枚絵を重ねる感じ?

239:名前は開発中のものです。
24/04/03 19:26:17.38 BKl8fFHu.net
慣れてないとタイルマップでステージ作るの難しいね

240:名前は開発中のものです。
24/04/04 18:23:04.76 Yk95TemJ.net
タイルマップエディタの位置って変更出来る?
下のスペースだと作業しづらくてしゃあない

241:名前は開発中のものです。
24/04/05 02:45:26.77 Pqxpfu1i.net
CollisionLayerやVisibilityLayerのレイヤー名適当に付けてきたから並び替えしたいけど面倒だなー
かといってスクリプトで管理するのも面倒

242:名前は開発中のものです。
24/04/05 06:47:12.42 VPXaZ05P.net
タイルマップのアルファ部分を境界線として自動的にコリジョンつける機能あったっけ?

243:名前は開発中のものです。
24/04/07 10:10:16.82 XQBKHWlL.net
1つのゲーム何ヶ月くらいかける?
そんな大作は作れないから数週間程度にしとくといいのかなと思うが

244:名前は開発中のものです。
24/04/07 12:40:54.04 B7MxZFEN.net
初めて作るなら二週間くらいで作れそうなのにした方が早めに世に出せていいと思う
製作期間なんてどうせ伸びるし

245:名前は開発中のものです。
24/04/07 14:24:50.23 XQBKHWlL.net
ありがとう
想定の2倍以上はかかる 確かに

246:名前は開発中のものです。
24/04/07 20:10:06.18 XQBKHWlL.net
2dアクションのステージ作るときにタイルセットじゃなくて、ポリゴンノードを1枚のタイルとして大量に並べていったらパフォーマンスにかなり影響出るのかな?
数千とかそういうレベルになったら

247:名前は開発中のものです。
24/04/08 00:34:30.27 BT1LWWM9.net
余裕で出るだろうねぇ
Godotがすごすぎエンジンで問題なかったら逆にビックリするけど

248:名前は開発中のものです。
24/04/08 05:26:25.44 EcmamLs3.net
どうも
出るか、、、

ポリゴンノードの羅列のほうが柔軟に形状変えられていいかなと思ったけど、タイルマップでやる
タイルマップは形状にどうしても制限が出るから

249:名前は開発中のものです。
24/04/08 13:22:19.11 BT1LWWM9.net
性能テストだと思って実際に作って負荷検証した方がプロっぽいけどな
Zennとかで投稿して知見共有してくれてもいいのよ? 宣伝にもなるし
あ、契約書からむような案件だったらダメだけど

250:名前は開発中のものです。
24/04/08 14:15:01.29 EcmamLs3.net
ありがとう
zennってたまに見るけどブログとしていいね

fc2から乗り換えよう

251:名前は開発中のものです。
24/04/09 11:56:09.63 oLx3m2KZ.net
URLリンク(dev.to)
オートタイルはterrain使ってやる感じ?
今学習中
スクリプト無しで出来るならいいけど
この解説生地を書こう

252:名前は開発中のものです。
24/04/09 14:36:54.29 oLx3m2KZ.net
URLリンク(imgur.com)
オートタイルを作りたいけど、仕組みがよく理解できない
terrainをペイントすることでそれっぽくなるけど、どこをどうペイントするといいのかガ分からない

253:名前は開発中のものです。
24/04/13 06:35:26.13 DtpmdlV4.net
URLリンク(www.youtube.com)
オートタイルの動画あったけど仕組みが分からん
塗った場所によって、どのようにつながるか決まるらしいけど、どなたか教えて

254:名前は開発中のものです。
24/04/13 12:16:44.81 4XyoFcVO.net
いやこれで分からないんじゃ説明のしようがねえじゃん

255:名前は開発中のものです。
24/04/13 14:29:45.52 2dO4J81U.net
俺の立てたスレに来たら懇切丁寧に教えてもよかったけど
この顔文字くん来ないんだよな
人が多いとこに居たいんだろうけど

256:名前は開発中のものです。
24/04/13 15:12:12.60 DtpmdlV4.net
立てたっけ?

257:名前は開発中のものです。
24/04/13 15:15:11.02 2dO4J81U.net
>>256
ここな>>216

258:名前は開発中のものです。
24/04/13 15:27:51.76 DtpmdlV4.net
人のこと池沼とか書いてるやついるからええわ

259:名前は開発中のものです。
24/04/13 22:30:37.04 PLTsef0l.net
自覚持てよ

260:名前は開発中のものです。
24/04/14 04:27:19.96 xkIt8wPU.net
そういうのいらないから

261:名前は開発中のものです。
24/04/14 14:53:38.25 pt7t7Gdb.net
オマエモナー

262:名前は開発中のものです。
24/04/17 11:03:55.56 c7cp2PUr.net
godot4で方向取る関数ってなんですか?
input.get_axisだと引数が2つ必要になっていましたね
以前はinput.get_axis("horizontal")←これで横方向がトレていたのですが、

263:名前は開発中のものです。
24/04/17 11:23:02.69 S9SgvMuX.net
以前とはいつの事か?またはどのバージョンの事か?
質問する前に自分の記憶が正しいかの確認をする
URLリンク(docs.godotengine.org)
初登場時からget_axisの引数は2つ
get_axisの機能を方向取る関数と認識しているのならば
引数の形式が変わっていても新しい引数の形式での使い方を理解するしかない

264:名前は開発中のものです。
24/04/17 11:59:17.28 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)
文字列での分岐にすることにしました

265:名前は開発中のものです。
24/04/17 12:28:13.73 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")

266:名前は開発中のものです。
24/04/17 14:58:45.87 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

267:名前は開発中のものです。
24/04/17 17:28:28.38 c7cp2PUr.net
どうも
get_vectorで方角を返すってやつですね

268:名前は開発中のものです。
24/04/18 11:29:20.11 o06ulE3s.net
godotは割とredditが賑わってるのがありがたいは
むしろunityより賑わってるのが謎

269:名前は開発中のものです。
24/04/19 18:17:49.55 611er4q0.net
配列特定の値を探したい場合、forで回して比較演算子かfindか使い分けはどうすればいいの?

270:名前は開発中のものです。
24/04/19 19:27:59.70 6eKwksTY.net
関数の方が安全で手っ取り早い代わりに若干低速な可能性がある どれくらい差があるかは知らない
配列の中身が順番に並んでるならbsearch使うか二分探索自分で書けば速い

271:名前は開発中のものです。
24/04/19 19:31:58.50 611er4q0.net
どうも
どのみち二次元だとfind使えないみたいですね

272:名前は開発中のものです。
24/04/20 11:57:25.68 gSjSgOMM.net
一時的にスクリプトを停止出来ますか?
processをdisableしてもprintはされるみたいです

273:名前は開発中のものです。
24/04/21 10:08:48.46 YXvcVHHE.net
定型文登録って合ったっけ?
以下の4方向バージョンを登録しておきたい
if Input.is_action_just_pressed("ui_up"):
move()

274:名前は開発中のものです。
24/04/23 12:13:26.37 /jRBBB4p.net
特定の関数の中でしか使わない関数ってのはどう定義すればいいの?
入れ子に出来れば関係ない場所から参照されないからいいと思うんだけど

func outer():
func inner():
こんな感じの入れ子は無理っぽいからラムダってやつ使うのかな

しかし、以下だとprint結果が帰ってこない
extends Node2D
func _ready() -> void:
print(lam)
var lam = func outer(num):
var value = "hogehoge"
return value

275:名前は開発中のものです。
24/04/23 12:26:20.71 /jRBBB4p.net
あっ、callしないと駄目なんですね

276:名前は開発中のものです。
24/04/23 13:00:39.54 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))

277:名前は開発中のものです。
24/04/23 14:27:19.77 /jRBBB4p.net
どうも
入れ子で書けないのなら、普通の関数とあまり変わらない感じですね
視覚的にこう1箇所にまとめたかったんですが

278:名前は開発中のものです。
24/04/23 15:16:36.49 K58WhwWv.net
変数に代入して使うのが馴染みないかもだが
関係ない場所からの参照ができなくなるから>>274で求められた機能としては十分
使用する変数は大体最初に宣言するから一箇所にまとまるのでは?

279:名前は開発中のものです。
24/04/23 15:27:32.29 K58WhwWv.net
>>272
完全停止は出来ないがprocess_modeにdisableを指定した上で
動かれて困るメソッドの先頭に以下の一文でも足せば良いんじゃないかな?
if process_mode == Node.PROCESS_MODE_DISABLED: return

280:名前は開発中のものです。
24/04/23 19:08:20.21 /jRBBB4p.net
>>278
関係ない場所から参照出来なくなるというのは、callが付与されることで、そのような効果があるということでしょうか?
>>279
どうも
disableでもおそらくreadyは動くみたいですね

281:名前は開発中のものです。
24/04/23 19:38:02.85 K58WhwWv.net
ローカルで宣言した変数のスコープはローカルという普通の話
別にCallableでの特別処理とかではない
グローバルで宣言すればグローバルから扱える
_readyの様な初期化処理まで動かしたくないというなら自分は設計の見直しをする
必要なときにadd_childとqueue_freeすればprocess管理する必要がないのではないか?

282:名前は開発中のものです。
24/04/23 19:44:45.31 nRUQyvbL.net
15歳のGodot教本クラファン、あれ支援してみようかなー

283:名前は開発中のものです。
24/04/23 20:12:37.57 SVQG4/08.net
確か達成してた気するけどああいうの上乗せ倍プッシュで支援てできるんだっけ?いいんじゃね

284:名前は開発中のものです。
24/04/23 20:42:58.34 nRUQyvbL.net
ぶっちゃけGodot全然わからんちんなんで
支援して、本貰って自分にシバキを入れたいって思いもある
おっちゃんが15歳に負けたくない><

285:名前は開発中のものです。
24/04/23 20:49:38.67 K58WhwWv.net
始めるなら早い方が良いから完成待たずに既にあるのでやってみたら?
URLリンク(progsha.org)

286:名前は開発中のものです。
24/04/23 23:25:40.86 5HqoYOxs.net
3000円で紙の本と電子本両方もらえるならむしろ安いよね
良心的なクラファンだ

287:名前は開発中のものです。
24/04/24 04:23:26.66 oxZnmf8P.net
>>281
なるほど 中で宣言するというだけですね

288:名前は開発中のものです。
24/04/24 20:15:21.72 oxZnmf8P.net
倉庫番のロジックで分からないところがあるのでこっちで質問させてもらいます
マップは二次元配列で作成します
ただ、キャラクターの移動はvector2で行います

1マスの大きさが32であった場合、vector2の座標が32,0だとしたら、配列上ではarray[y0][x1]となりますよね。
こういった変換に便利な関数とかないでしょうか?
やりたいことを箇条書きにすると以下です
1:vector2の座標から配列上の座標を割り出す
2:キャラクターが移動したとき、配列上のキャラクター座標を移動させる(配列上の要素2がキャラとしてます)

289:名前は開発中のものです。
24/04/24 20:27:18.43 PzjnMMaW.net
普通に割り算して切り捨てるだけでは
ものを1マス単位で動かさない前提なら1マス辺りの座標を1にして逆に見た目の方の座標を掛け算なりする方が楽

290:名前は開発中のものです。
24/04/24 22:41:11.22 YL8z0NQ2.net
自分が便利なように関数かけばいいじゃないの 

291:名前は開発中のものです。
24/04/25 00:19:55.34 5JWtrSqN.net
昔の2Dゲーム機は基本的に背景をマップタイル(キャラクタージェネレータなどとも呼ばれる)単位で管理してたものだから、同じように仮想的なタイルを敷き詰めた画面があるものとして構造体組んで、その上でモブがタイルに沿って動く管理を考えるのがとりあえずは昔のノウハウを適用できて簡単だと思う
倉庫番はまさにそういう動き

292:名前は開発中のものです。
24/04/25 00:27:21.13 8kKIrJCJ.net
AIに聞けばええやん

293:名前は開発中のものです。
24/04/25 00:30:55.75 5JWtrSqN.net
なのでモブが動くときはpix単位の座標移動が発生するけどそれはサブルーチンとして、ゲームアルゴリズムとしてはマップ全体の座標を整数の配列で(例えば100×100とか)表して制御し、画面に表示する座標は既に言われてるように適切に係数掛け算する関数を作るのが良いと思います
倉庫番の場合、マップが広いレベルを縮小してモニタに表示したりするので、その拡大縮小表示の変換が自由にできるほうがUXが良くなるし、なんなら回転表示もしたくなるかもしれないので。

294:名前は開発中のものです。
24/04/25 00:33:10.60 5JWtrSqN.net
>>292
まあ倉庫番まんまならAIに頼めばノーコードで完成するでしょうな
しかしゲームメカニクスの基礎は自分の頭で考えないと応用が効かなくなるから

295:名前は開発中のものです。
24/04/25 00:42:09.44 7TwSlN/Q.net
ちがうアプローチとしてはTileMapを使用するかな
使えるようになるまでのコストが大きいからお勧めとは言い難いが
高機能で複雑な分、理解できたら便利なクラス

296:名前は開発中のものです。
24/04/25 01:06:24.88 /gUanyy1.net
理解できないから半年以上苦しんでるんでしょう。
もっと園児でもわかるような単純なやり方を教えてあげて

297:名前は開発中のものです。
24/04/25 01:08:58.36 5JWtrSqN.net
まんまTilemapなクラスがあったのね
これなら簡単だわ勉強になりました

298:名前は開発中のものです。
24/04/25 06:12:26.81 Esvk0j05.net
>>291
キャラの動きも配列の書き換えで行って、書き換えられたら再描画というふうにしてもいいんですが
これだと滑らかに動くキャラってのが作れなくなるんですよね 
だからチュートなどではvector2で移動させてるんだろうなと

マップ座標とvector2座標の変換は必要になりますね

>>289
別に特殊なクラスとか使うことないんですね

299:名前は開発中のものです。
24/04/25 06:27:04.46 Esvk0j05.net
>>293
ゲームロジックとしては配列の書き換えだけということですか?
配列の書き換え→その位置に基づいてキャラを描画、ということでしょうか

300:名前は開発中のものです。
24/04/25 12:30:15.39 Esvk0j05.net
関数から、2つの値を返すには何使うんですか?
カンマ区切りではダメだったので[1,2]こういう形にしたらいけました

301:名前は開発中のものです。
24/04/25 12:50:05.12 Esvk0j05.net
↑2つの値を返して、二次元配列として使いたい感じです
array[0][0]
こんな感じです

302:名前は開発中のものです。
24/04/25 13:25:04.08 7TwSlN/Q.net
2つの値を返す方法が[1,2]でいけたならそれで解決じゃね?
var return_value = [1, 2]
array[return_value[0]][return_value[1]]

303:名前は開発中のものです。
24/04/25 14:29:31.06 ddMre8ET.net
GDScriptでいいのか?
Pythonっぽい言語仕様だけど実際はC++をスクリプトにしただけっぽいので
Pythonで複数の値を返す時に使うTupleは使えないんだとよ
方法としては2つ、Arrayで返すかDictionaryで返す
以下はサンプルコードな ※RUNボタンで実行結果も確認できるぞ
URLリンク(gd.tumeo.space)

304:名前は開発中のものです。
24/04/25 15:44:33.49 Esvk0j05.net
ありがとう配列で値を返して、インデックス番号でとればいいんですね
これがタプルってやつですか


URLリンク(www.reddit.com)
あと、人いねーと思っていつもの癖でマルチポストしちゃった
ごめんなさい改善します

305:名前は開発中のものです。
24/04/25 16:12:28.75 ddMre8ET.net
マルチでもなんでも問題解決できりゃなんでもいいんだぞ
あとTupleの話は出すべきじゃなかったな、忘れてくれ

306:名前は開発中のものです。
24/04/25 16:35:23.02 lNMYdYSi.net
流石になんでも良くはねえよ…
それぞれの場所で時間使って答えてくれてんだから

307:名前は開発中のものです。
24/04/25 17:07:59.94 7TwSlN/Q.net
同じ質問は数日待っても解答が得られなかったらとか制限は掛けた方がいいな
redittの方の解答にあるが戻り値がx,yの座標を扱うものであるならVector2を使うと読みやすくなる

308:名前は開発中のものです。
24/04/25 17:42:32.62 ddMre8ET.net
>>306 一理ある。初心者は気を遣うことを覚えるより完成させることを優先しろ、オレの先輩の言葉
>>307 配列のIndexを返したいって話だから、Vec2はオーバーキルだと思うぞ。ぶっちゃけやってることは同じだしわかりやすい方でいいんだけどさ。This is KISS.

309:名前は開発中のものです。
24/04/25 18:26:51.75 Esvk0j05.net
すまん、どちらか一方にするよ
redditはそれにしても人多いねぇ

310:名前は開発中のものです。
24/04/25 18:43:10.78 /XEpAv2m.net
つーかマルチポストで聞く暇あるなら少しは勉強しろよ
初歩的な問題で詰んでるなら尚更

311:名前は開発中のものです。
24/04/25 20:20:30.32 7TwSlN/Q.net
>>308
質問のみならそうなのだが話題の元が倉庫番作るのにキャラ座標をマップ配列に変換するなのでそこまで含むと解答はこうなる
func cpos_to_mpos(cpos:Vector2i, size:int = 32) -> Vector2i:
return cpos / size

312:名前は開発中のものです。
24/04/25 21:13:31.21 ddMre8ET.net
おー、なるほどね!
Vector2iって勝手にTrancateしてくれるんだな、勉強になったわ

313:名前は開発中のものです。
24/04/26 06:09:14.77 1Ez+K35D.net
>>311
すみません
なんか自己流で複雑なやり方になってる気がする
普通はキャラ座標とマップ座標の変換はやらずに、座標を1つに統一したりするんでしょうか

314:名前は開発中のものです。
24/04/26 13:14:53.40 yaANzBxw.net
上の人も書いてるけど倉庫番と言うことはグリッドの途中で立ち止まる事はないだろうから、それであれば32で割った盤面上の座標だけ保持して画面表示の時に32倍するなりアニメ補間すればよいのでは
その方がセーブやアンドゥも楽になる

315:名前は開発中のものです。
24/04/26 13:46:32.39 1Ez+K35D.net
>>314
配列使わないということですか?
配列使わない場合、障害物の位置などを表現する場合、どうするでしょうか
二次元配列を使った場合、以下のようにマップを表現すると思います
1=壁,2=キャラ、3=動かせる箱、0=動ける範囲
[
[1,2,3,0,1],
[1,0,0,0,1],
[1,1,1,1,1],
]
グリッドの途中で立ち止まらないというのは、32ずつグリッド移動するという意味ですよね。
1pxずつ動かしたいわけじゃないので、それはその通りです。

316:名前は開発中のものです。
24/04/26 13:52:06.26 XXsncJVJ.net
もしかしてモブはスプライト管理じゃない?

317:名前は開発中のものです。
24/04/26 14:35:25.85 /ZFKx6UF.net
>>315
倉庫番である以上オブジェクトは必ず格子状に配置し管理される
それを2次元配列とみなす事ができる
配列を使わない場合は遠回りに配列があるのと同等の処理を行うだけ
なぜ>>314の説明で配列使わないという解釈になるのかが判らない
配列を使わない便利な魔法でもあると想像してないか?
配列を使わない方法があっても手間が増えて複雑になるだけだから配列が使われる
配列を使った方法で理解するのが定番

318:名前は開発中のものです。
24/04/26 14:55:56.89 /ZFKx6UF.net
>>313
昔はコンソール上で動かす前提で表示もキャラクター単位だったので
配列の要素番号と表示座標の変換は不要だった
今はウインドウアプリになって表示に座標変換は必須
ウインドウアプリの作法も覚えなきゃで同じ倉庫番の初心者講習でも
昔よりは複雑になり難易度上がってはいる

319:名前は開発中のものです。
24/04/26 15:42:16.89 86tvu5TE.net
絵文字使ってるので表示が上手くいかなかったらごめん
ゲームとしては全然足りないし完成させる所までが課題ではあるが
学習項目を配列のみに集約するとこの配列操作が理解できれば十分
func _ready():
var map = "🧱👷📦🚩🧱\n"
print(map)
map[3] = map[2]
map[2] = map[1]
map[1] = "◾"
print(map)

320:名前は開発中のものです。
24/04/26 15:45:16.29 86tvu5TE.net
二次元配列まで理解できたら上出来
func _ready():
var map = ["🧱🧱🧱", "🧱👷🧱", "🧱📦🧱", "🧱🚩🧱", "🧱🧱🧱", "\n"]
for c in map: print(c)
map[3][1] = map[2][1]
map[2][1] = map[1][1]
map[1][1] = "◾"
for c in map: print(c)

321:我のうんちは小粒(^^
24/04/26 17:21:02.02 jKYfR5nN.net
二次元配列って配列に配列入れるやつでふよね(^^
そこで詰まってるなら人に聞くよりブッコフに走ってプログラムの基礎が書いてある本買って読んだほうがいいのでは?(^^
煽りとかいじめでいってるんじゃなくて真剣に(^^
ボッキング!(^^

322:名前は開発中のものです。
24/04/26 18:10:17.22 1Ez+K35D.net
>>317
配列でやってみます
ありがとう
昔のやり方というのは、配列の座標を書き換える→画面表示を更新、といったやり方ですよね
今のように、ぬるっと動かすことが出来ないということですね

323:名前は開発中のものです。
24/04/26 18:28:59.68 Tn7ydmJN.net
>>322
今の奴ってどのサンプルの話?
存在しない物を今とか空想してんの?

324:名前は開発中のものです。
24/04/27 14:28:13.76 RX6jyHGA.net
フローチャートよりシンプルな図示方法ってないかな?
やっぱりロジックを整理しておいてからコード書かないと脳みそがパンクする
可といってフローチャートは難しい

325:名前は開発中のものです。
24/04/27 14:39:46.99 RX6jyHGA.net
擬似コードってのやってみますゆえ

326:名前は開発中のものです。
24/04/27 16:13:48.17 b+RnbsA6.net
フローチャートが難しいってどういう事

327:名前は開発中のものです。
24/04/27 17:08:49.43 RX6jyHGA.net
むずいというか、他人に説明するためのものではないので、自分だけ分かる方法でいいかなと
より簡易的であればいいです

フロチャは図形の使いこなしが苦手です

328:名前は開発中のものです。
24/04/27 22:14:59.66 toVZIEFB.net
>>324
plantumlが面白いかも
plantuml web serverでインストール不要で試せる
検索すればフローチャートの書き方もあるっぽいので
コピペして遊んでみては?

329:名前は開発中のものです。
24/04/28 02:33:44.79 XkoBpqzr.net
Godotの2Dのコンセプトは3Dを2Dに見せるやり方ではないってのだけはすぐ分かるのだけど、仮想ゲームマシン的な意味での最大スペックはどこ見ればいいのだ
実行マシンさえ強ければ、昔ながらのBG面もテキスト面もスプライト面もそれらの拡縮回転移動もカラーパレットも無制限で表示させて良い感じなのかな?

他にも昔の疑似3Dもやろうと思えば作れるのだろうけど、それには本物の3D使うよね普通の人は。

330:名前は開発中のものです。
24/04/28 06:15:05.24 6Dc8VXuN.net
1つのスクリプトに書いてるんですが、コードが増えてきた場合、領域を分ける方法は関数以外にありますか?
ただ、視覚的に分けるだけでもいいです
レギオンは使えるみたいですね
>>328
どうも
擬似コード的なものを視覚化するというイメージですかね

331:名前は開発中のものです。
24/04/28 06:42:32.33 6Dc8VXuN.net
コアな機能だけモジュール化なりクラス化なりしたほうがいいのかな

332:名前は開発中のものです。
24/04/28 09:40:08.77 6Dc8VXuN.net
インデントが深くなりすぎる場合、対策はあるでしょうか。
pythonで関数をカッコで表現出来るでしょうか。

333:名前は開発中のものです。
24/04/28 11:30:45.87 KYDjUHts.net
>>330-332
最初から最後までしっかり読みなさい。
大ヒットゲーム『Balatro』のコードが“力業”だとして共感呼ぶ。コードが汚くても、ゲームが完成してちゃんと動けばそれでいい - AUTOMATON
URLリンク(automaton-media.com)

334:名前は開発中のものです。
24/04/28 12:06:25.45 qOnW5aMf.net
>>330-332
コードの書き方は多種多様な流派があり自分にあった書き方を模索するしかない
チームで開発する時はチームでルールを定める
基本的には公式に従う

安易にファイル分割すると管理が大変になる
単にソースが長いだけならregionで閉じる
全体で共通して使う機能ならグローバルなクラスに纏める
特定のクラスのみの機能なら基底クラスを作って継承する

インデントが深いと思ったらそもそもの処理方式を考え直す
ループの内側を関数化する
ifをand,orで纏める
ソースを短くする為にソースが読み難くなるのは本末転倒なので下手な対策はしない

335:名前は開発中のものです。
24/04/28 13:46:45.79 GkEu3rtv.net
力業ねえ
そうは言っても作り方のセオリーはあるんじゃないかな
ユニティだけど物理ワールドでオブジェクト移動するときにポジションに1加算みたいなことしたらバグるし重いよね
ベロシティにアドフォースするのがセオリーじゃん?

そんな感じで、頭の悪いぐちゃぐちゃなセオリーもへったくれもないコードだと見づらいバグる重いでいいことないし
ゴドーで「こういう仕組み作るときはこうやるのがベター」みたいなノウハウを集めたサイトが欲しいわ

336:名前は開発中のものです。
24/04/28 14:04:21.58 KYDjUHts.net
>>335
逆引き辞典みたいなのあるといいよね(英語のはわりとある)
まあセオリーやノウハウが欲しいなら、他人のコードをたくさん読むことが近道じゃないかな

337:名前は開発中のものです。
24/04/28 15:15:52.67 6Dc8VXuN.net
>>334
どうも
自分なりに書いてみます
とりあえず見た目と機能は分けます

338:名前は開発中のものです。
24/04/29 06:16:45.87 W8KMTghQ.net
シンタックスのテーマはストアにないんですかね?
githubから持ってくる感じでしょうか

339:名前は開発中のものです。
24/04/29 14:25:37.21 W8KMTghQ.net
arrayをforで展開するときに、size関数は要素数ですので、例えば要素数5であった場合インデックス0から開始されますので、4までです
この差が誤解を産むことがあるのですが、なにか対策はあるんでしょうか?
>>338
解決 自作します

340:名前は開発中のものです。
24/04/29 14:53:30.83 2FsCulaT.net
殆どの言語で要素番号は0から始まるから数こなして慣れるのが一番
順次処理なら要素番号を使わない操作を心がける
どうしても気になるなら要素番号が1から始まる配列クラスを自前で作る

341:名前は開発中のものです。
24/04/29 16:52:13.85 W8KMTghQ.net
ありがとう
練習あるのみか
イメージ力みたいなのが足りないと思う
図で考えたほうがいいのかな

342:名前は開発中のものです。
24/04/29 21:18:04.62 n5TYyf+c.net
仕様書はちゃんと書いた方が良い

343:名前は開発中のものです。
24/04/30 05:44:38.46 HJbDE4xz.net
仕様書はフロチャですか

344:名前は開発中のものです。
24/04/30 13:00:30.92 qkeOAzaS.net
レスがつくのは嬉しいだろうけど、Godotから話題が離れてるので自分のゲーム開発だけ話すのなら別のスレで書いて欲しい

345:名前は開発中のものです。
24/04/30 13:09:32.02 HJbDE4xz.net
そうか、了解

346:名前は開発中のものです。
24/04/30 14:13:24.81 uAstRO41.net
一人が言ってるだけだから気にしなくていいよ
他で出せる話題でもないならここでやればいい

347:名前は開発中のものです。
24/04/30 14:21:24.39 t9d+Ii5w.net
まーた揉めるようなことを・・・学習しねえな

348:名前は開発中のものです。
24/04/30 14:26:04.37 hVvdsoIz.net
スレの運用は適切に
例外を許容しすぎると該当スレの存在意義がなくなる

349:名前は開発中のものです。
24/05/01 10:08:19.10 ePZpzJCq.net
質問です
godotで子ノードにアタッチしたスクリプトの変数にはアクセス出来るんですが、スクリプトを直接ロードして、そこからアクセスしようとするとエラーになるのはなぜでしょうか。この2つの違いが良くわかりません。

目的は長いスクリプトを複数に分けることです。

350:名前は開発中のものです。
24/05/01 10:27:48.27 ePZpzJCq.net
↑ああそうか
一度シーンにぶら下げないとダメなんですよね godotの場合は
子ノードを作成するか autoloadにするか

351:名前は開発中のものです。
24/05/01 12:45:52.75 ZXYQy06U.net
AddChildやAutoLoadはシーンツリーに接続されていてそこ経由でのアクセスが可能
ロードしたスクリプトはシーンツリーから独立したインスタンスになるので
そこから他のノードへアクセスしたいのならば他のノードへの参照を渡せばアクセス可能にはなる
個人プロジェクトだろうから好きにすれば良いが
長くなったスクリプトを短くする為に理解出来てない機能を使うのは得策では無いと自分は思う
それでもどうしてもregionを使わずスクリプトを短くしたいのならば継承を使うと良い
そうすれば継承元のスクリプトは継承先では見た目上隠蔽される

352:名前は開発中のものです。
24/05/01 14:24:41.42 ePZpzJCq.net
ありがとうございます
シーンに適当なノードぶら下げてそこにスクリプトつけて分割することにします

353:名前は開発中のものです。
24/05/02 19:02:27.61 UVx4JLwS.net
URLリンク(www.crazygames.com)
goober dashおもろいよね

354:名前は開発中のものです。
24/05/03 01:51:43.60 KMJa0hAC.net
直接loadしたスクリプトはnew()すると使えるはず

355:名前は開発中のものです。
24/05/03 13:51:37.10 C+l8v586.net
>>353
gooberはgodotだから貼った

356:名前は開発中のものです。
24/05/03 18:50:34.76 C+l8v586.net
関数内関数を書く時に以下のような形式になるじゃないですか
名前はどんなふうにつけますか?
一般的に変数名を省略系にするのかなと考えますが
var mB = func moveBlock():
print("ブロック動かす処理")

357:名前は開発中のものです。
24/05/03 19:12:54.15 C+l8v586.net
godotのテキストエディタって機能的に十分なのかな?
vscode使えるならもちろんそうしたいけどね
公式のエクステンションでもあれば

358:名前は開発中のものです。
24/05/03 20:14:54.48 QnOXIZPi.net
プログラム初心者で、Gamemakerを触っていたのですが
godotはGamemaker触ってたら理解は出来そうですか?

359:名前は開発中のものです。
24/05/03 21:48:22.15 SB6QCt+i.net
>>358
インストール不要で気軽に始められるから、公式チュートリアル30分位さわってみて判断したらいいよ

360:名前は開発中のものです。
24/05/03 23:12:06.81 klkiRmCj.net
%や/とか+=の意味が分からないくらいなら
ゲーム開発入門みたいな本を買うなり借りるなりして一度目を通すと少しは助かるかもしれない

361:名前は開発中のものです。
24/05/03 23:13:59.18 /rh2liyL.net
GameMaker使ったことないから比較するのにチュートリアルやってみようとしたら開けなかった
ブランクプロジェクト開いても何して良いか全然判らなかった
これ使えてたならGodotを新しく覚えるのも余裕じゃない?

362:名前は開発中のものです。
24/05/04 00:40:51.69 1eZ/ckRt.net
みなさんどうもです
触ってみろは仰る通り
事前に調べて日本語情報が異様に少ないとか
あったのでパイソン?
とかの言語知ってるのが前提なのかな?みたいな疑問もあって
聞いてみた次第です

GMで苦労したのにまたゼロから習得していくのはしんどいなあw

363:名前は開発中のものです。
24/05/04 00:49:24.03 sLFn1foN.net
基本的な情報は有志の日本語ブログと公式ドキュメントをツールで翻訳すれば足りる
Pythonに言語仕様が似ているので知っていると楽ができる
今後ビジュアルスクリプティングが流行らないとは言えないがGDScriptでなくても何かの言語は覚えるべき

GodotEngineとGDScriptはかなり使いやすいし判りやすいけど
日本語の初心者向け情報を頼りたいならUnityでC#になるんでないの?

364:名前は開発中のものです。
24/05/04 01:10:12.79 sLFn1foN.net
>>356
関数名は省略できるっしょ
自分が以前書いた例文もCallableクラスの例文も書いてないと思うけどどこで覚えてきたの?
var move_block = func(): print("~")
move_block.call()

365:名前は開発中のものです。
24/05/04 01:18:05.31 sLFn1foN.net
すまん確認してみたら自分が最初に教えた時に明示的にするために関数名書いてたわ
デバッグなんかで関数名の表示できると判りやすいとか付けるメリットもあるが
インラインで使う関数に名前は付けなくていいよ

366:名前は開発中のものです。
24/05/04 05:51:48.79 Q/GMBOls.net
>>364
出来るんですね どうも
たしかに出来た

367:名前は開発中のものです。
24/05/04 17:37:03.86 YlgyzU/N.net
初心者どころか無知張りの質問ばっか
流石に聞く前に少し勉強しようよ…

368:名前は開発中のものです。
24/05/05 19:19:42.62 i1XkVcGH.net
URLリンク(store.steampowered.com)
goober dashってこのゲームの会社だったのね

369:名前は開発中のものです。
24/05/06 08:38:46.50 tVmDFPsn.net
去年リリースのゲームだけどなんかあったん?
今年の無料枠だと20small mazesとvoid whisperが良かったな

370:名前は開発中のものです。
24/05/07 18:08:44.68 2LczD5CB.net
URLリンク(ideone.com)
このくのif文のネストというのはやり過ぎですか?
コードの意味というより、構造としてです

371:名前は開発中のものです。
24/05/07 18:13:54.37 mOg/x0Fw.net
別にダメではないんじゃね
抑えたいんだったらforの中のifだったら否定continueにできないかとか主な部分の分岐は関数にできないかとか

372:名前は開発中のものです。
24/05/07 18:29:18.13 2LczD5CB.net
ありがとう
折りたたみがあれば、自分的に分かりづらくはないので、そこが判断基準でしょうかね。

373:名前は開発中のものです。
24/05/07 19:36:46.79 RdSJWMfw.net
コードの文法にこだわるより動いて完成させるほうが大事ってヒットしたゲーム開発者が言ってた

374:名前は開発中のものです。
24/05/07 19:55:59.80 Wut59JH8.net
>>370
冗長ではあるかも
範囲外チェックは関数化すれば使い回せるし押せるかチェックも同じく関数化で使い回せる

375:名前は開発中のものです。
24/05/07 22:49:42.73 4dk4e7hy.net
>>370
本題とはずれるけど関数やブロックは簡易でもコメント書いた方が良いと思う
優先されるのは動く事なんだけど冗長すぎるコードは将来的には管理不能になり易い
正しく動く関数を作ったら中を見なくても使える位のコメントは必要かと
自分が自分用のコードで書くのはこの程度

## マップ情報からタイル情報を取得
## 指定したpos座標からdir方向にstep目のタイルを取得する
func get_tile(pos, dir = Vector2i.ZERO, step = 0):
var x = pos.x + dir.x * step
var y = pos.y + dir.y * step
if y < 0 or y >= map.size(): return
if x < 0 or x >= map[y].length(): return
return map[y][x]

376:名前は開発中のものです。
24/05/08 06:03:56.80 DXZ4K4HC.net
forの外でなく中で分岐チェックが入るのはなぜだろうと
for内部で分岐チェック変数自体が変化するのかなとか一寸思った

377:名前は開発中のものです。
24/05/08 06:12:38.24 DI+sRL/w.net
>>373
ほんとそれ(*´ω`*)
でも自分でも書いたコードの意味がわからなくなることがある
ただ、完成させたら後は触らなけりゃいいものね

378:名前は開発中のものです。
24/05/11 10:19:20.20 5tdP2r62.net
URLリンク(anogame.net)
こういうベーコンみたいな動きはjoint系でやるんかな

379:名前は開発中のものです。
24/05/11 12:20:37.88 sm7gTskD.net
これはJointでやってるね
URLリンク(github.com)

380:名前は開発中のものです。
24/05/11 12:46:54.43 5tdP2r62.net
>>379
どうも
むつかしそうなことしないと作れないんですね

381:名前は開発中のものです。
24/05/11 13:15:20.66 sm7gTskD.net
addonになってるから手順に従えば使えるんじゃないかね?
3Dでも良いなら公式にSoftBody3Dクラスがあって解説されている
URLリンク(docs.godotengine.org)

382:名前は開発中のものです。
24/05/11 14:04:47.85 5tdP2r62.net
どうも
2dなんですが既存のノードだけでやろうとしてました

383:名前は開発中のものです。
24/05/11 17:29:09.70 5tdP2r62.net
2dはソフトボディ用のノードはないんですね

384:名前は開発中のものです。
24/05/11 23:50:45.86 sm7gTskD.net
>>379のはgit cloneすればsampleの動作を見れる
addonとして追加すればSoftBody2Dクラスが使えるようになる
チュートリアル動画を見て自分でノードを追加してテクスチャ設定して動作する所までは確認した
自分で使う為のカスタマイズがどこまで出来る、どの様に出来るかまでは把握してない
必要なら納得いくまで自分で試してみると良い

385:名前は開発中のものです。
24/05/12 09:50:56.31 vY/ipjwY.net
>>384
ありがとう
動かないやと思ってたら3でやってたが、4でも動かないや
これから調べます
使えなかったらspringjoint系でも自作は出来るみたいですね

386:名前は開発中のものです。
24/05/12 09:57:58.01 vY/ipjwY.net
>>385
pluginsからenableしないとダメなんですね

387:名前は開発中のものです。
24/05/12 12:36:37.11 vY/ipjwY.net
pinjoint2dにテクスチャ付けたいのですが、そのテクスチャをpinjoint2dの動きと連動させるには、スケルトン2dあたりも必要になるんでしょうか?
参考になる記事が見つからなかったので

388:
24/05/12 15:01:30.18 lxvBH4fm.net
ブロック崩しの「ボール」みたいなのは CharacterBody2D か Area2D どっちが適してる?
反射処理も悩んでいる _on_body_entered() で自分の進んでいる方向と当たった箇所はどうやって取得?
まだまだチュートリアルから卒業できない。

389:名前は開発中のものです。
24/05/12 15:33:26.07 vY/ipjwY.net
>>388
ボールはcharactebodyかと
URLリンク(docs.godotengine.org)
normal系の関数があるので、その入射角を逆転するといいのかと
gptがコードくれる

390:名前は開発中のものです。
24/05/12 15:37:19.30 lxvBH4fm.net
>>389
ありがとう!
GPT にも相談しながら試行錯誤してみる

391:名前は開発中のものです。
24/05/12 18:02:36.32 vY/ipjwY.net
質問です
スケルトン2dのuvエディタなんですが、真ん中の棒がuvからかなり突き出ているためか、ボーンを動かしても思い通りに曲がりません
これってどういう状態でしょうか。棒の意味がわかりませ
imgbox.com/mUDkcBDk

392:名前は開発中のものです。
24/05/12 21:09:27.02 B/CvPUu/.net
>>391
URLリンク(docs.godotengine.org)

393:名前は開発中のものです。
24/05/13 06:00:25.10 LyBZy055.net
単にボーンなんですね どうも

394:名前は開発中のものです。
24/05/13 06:13:59.75 LyBZy055.net
ただ、ボーンが2本なのにuvエディタでは3本表示されるようです

395:名前は開発中のものです。
24/05/13 09:28:15.52 mESw/UcZ.net
は~、世の中には不思議なことがあるものですね
自分の設定ミスや勘違いじゃなければ仕様かBug
OSSってのはそういうもんだ、あきらめるか無視しろ
可能であれば、Engineの開発チームにIssues飛ばすかBugFixしてCommitしたれ
Engineのクレジットに名前が載るぞ

396:名前は開発中のものです。
24/05/13 10:29:30.01 LyBZy055.net
作り直しすね

397:名前は開発中のものです。
24/05/13 11:35:40.82 LyBZy055.net
pinjoint2dでテクスチャを曲げたいのですが、これはどうやったらいいんでしょうか。
通常、1枚のテクスチャを曲げるには、skelton2dとpolygon2dを使うみたいです。
ということはpinjointでつなげたrigidbody2dとskelton2dを連動させる必要があるんでしょうか。
もっと楽な方法があれば教えてもらいたいです。

398:名前は開発中のものです。
24/05/13 13:12:28.51 mESw/UcZ.net
>>397
>>379
URLリンク(www.reddit.com)

399:名前は開発中のものです。
24/05/13 13:41:07.99 LyBZy055.net
>>398
何がしたいの?
答えがないからこっち来てるんだけど

400:名前は開発中のものです。
24/05/13 14:08:35.59 cP0RX87M.net
>>399
読解力があれば質問を控えてまず自分で試行錯誤しろという警告である事を理解できるはずなんだが
やらずに聞くのではなくやってみてダメだったことをここに質問しに来れば良いのでは

401:名前は開発中のものです。
24/05/13 14:16:24.26 LyBZy055.net
既存のチュートあるならそれが一番だと思っているので
自分の力で考えても良い結果になった試しが、自分に関してはないので

402:名前は開発中のものです。
24/05/13 14:59:41.28 GZFPiHMx.net
よくそんな頭でゲーム作れると思ったね

403:名前は開発中のものです。
24/05/13 15:08:43.38 kcPbeUZZ.net
わざわざ日本語情報少ないエンジン選んでるんだから少ない情報から試行錯誤したり機械翻訳でも英語読んだりは必要よ

404:名前は開発中のものです。
24/05/13 18:09:04.01 LyBZy055.net
試行錯誤でどうにかできそうならもちろんそうするんだけど、情報少なくて、、、
英語フォーラムで聞きます

405: 警備員[Lv.1][新初]
24/05/13 22:10:49.81 wp4+Grhj.net
普通にさっきのプラグインじゃダメ?4.3だけど普通に動く
手作業で作ると糞ダルイと思うけど

406:名前は開発中のものです。
24/05/13 22:46:36.05 oArf0K5p.net
最初に提示された>>378からして設定面倒そうで自分に必要でなければ試す気にならない
簡単に使えなくてぷるぷるするのが珍しいから魅力を感じるのでしょう

407:名前は開発中のものです。
24/05/13 23:02:22.43 mESw/UcZ.net
見守ってあげよう
ゲーム作りたいって気持ちはないがしろにはできないから

408:名前は開発中のものです。
24/05/13 23:12:28.08 oArf0K5p.net
作例があっても模倣できないのに漠然としたイメージだけで仕様に落とし込めてない物が作れる訳がない
本当に作りたいなら基礎固めしないとどうにもならない
まあ夢を語るのは好きにすれば良いと思うよ

409:名前は開発中のものです。
24/05/13 23:19:32.14 xXU4uaU/.net
他人を利用して作った事にして恩恵だけを横取りしたいだけで
別に作りたくもなんともない本音が透けて見えるんだよな
自分にメリットがありそうなコピペできなきゃチュートリアルすらやらないしね

410:名前は開発中のものです。
24/05/13 23:52:40.88 oArf0K5p.net
>>397
これで目的が実現可能かは自分には判らんが
RigidBody2DとSkelton2D配下のBone2Dを連動させるにはRemoteTransform2Dを使うとできる

411:名前は開発中のものです。
24/05/13 23:59:53.50 oArf0K5p.net
>>409
単に力量不足でコピペに頼るしかないのだと思うよ
地道な研鑽をやらずに結果を得ようとするから上手くいかなくなる

412:名前は開発中のものです。
24/05/14 01:15:33.35 UhfKPee9.net
>>411
バイトや仕事をやったことがないし仕事覚えられる頭がなくて働けないから
働く代わりにゲームを売って生計を立てたいんだとさ
言われた事を100回聞きなおした挙句何もしないならそりゃクビになるよな

413:名前は開発中のものです。
24/05/14 01:29:23.43 SrUAy4Yf.net
条件的には簡単に作れる流行りものに乗るのが良いのかね
VampireSurvivorsが流行った初期ならフォロワーでも少しは売れたかも
スイカゲームは作るのは簡単だけど国内のみの人気だから勝ち目は無かったかな
確かこのスレで聞いてたQはオリジナルのステージ量に勝てないから無理目
他特殊なアイデアの物は真似できないからそもそも無理
AI使ったエロパズルももう下火かね
時流に乗るには即座に作る技量が居るからやっぱ無理じゃない?

414:名前は開発中のものです。
24/05/14 04:06:55.48 SrUAy4Yf.net
>>405
自分でも試してみた
テクスチャ貼ったら子ノードは自動生成だったから自分で作るよりは遥かに楽だね
apply_force()で跳ねさせてみた分にはそれっぽい挙動はする
仕事だとしたくないけど実験は楽しいから睡眠時間を犠牲にしてしまった
情報が少ないのでサンプルやアドインのコードを読まなきゃならないからその点では簡単とは言えないかもね

415:名前は開発中のものです。
24/05/14 05:18:21.14 3uWWN16A.net
>>408
作例がgodotの場合なかったもので

416:名前は開発中のものです。
24/05/14 05:51:59.88 3uWWN16A.net
>>410
ありがとうございます
>>409
そういうことでいいですよ そう思うのなら
チュートリアルはやってるけど目的と関係ないことやっても答えが得られないし

417:名前は開発中のものです。
24/05/14 05:55:17.20 3uWWN16A.net
URLリンク(github.com)
ソフトボディ借用してとりあえず完成させますわ

418:名前は開発中のものです。
24/05/14 10:41:37.71 2NzQNHqV.net
(今は)それがいいよ、がんがれ

419:名前は開発中のものです。
24/05/14 12:59:43.14 3uWWN16A.net
荒らしてすんません

420:名前は開発中のものです。
24/05/14 13:08:00.31 +vuesiX5.net
>>416
義務教育や算数の授業受けろと言われても目的と関係ないとか言いだしてボイコットするタイプ?
目標とか言ってオリンピックだの全国大会だのデカイ風呂敷広げるのは結構だが、基礎が出来なきゃ応用なんて
とても出来る物じゃない。何が基礎で何が応用なのか相関関係が分からないのはお前が未熟だからだろ。
そもそも勧められたチュートリアルの基礎技術/根幹技術は倉庫番のどこで出て来て使われてたのか分かりもしないのに
何故お前にそれが必要か不必要かの判断が出来るんだよ?
そういうのを驕りとか傲慢って言うんだぜ
そうやって練習や基礎基本を舐めてるから10年やっても1000回やっても出来ないだけじゃねえか
お前がそういうもの全般バカにしてなきゃそういう態度にはならねえと思うけどな
基礎基本をマスターすらしてない人間が、選り好みや取捨選択なんて100万年早い
10年やっても1000回やっても結果に繋がらない理由はもうハッキリしてるじゃん
いくらやっても今のままを続けるなら時間の無駄だよ だって舐めてるじゃん

421:名前は開発中のものです。
24/05/14 13:10:28.27 0o80wI9o.net
同じこと繰り返してるし別に悪いと思ってないよね
形だけの謝罪はいらんねん

422:名前は開発中のものです。
24/05/14 13:38:51.04 3uWWN16A.net
>>420
ではpinjointとボーンのリンクの方法が含まれるチュートリアルを教えて下さい。
基礎が大事といってもその部分が今の自分にとっては基礎。基礎と応用の境界線は明確じゃない。
もしかして、体系的に学ばないと意味がないという考え方なんですかね?

423:名前は開発中のものです。
24/05/14 13:55:56.42 +vuesiX5.net
>>422
何で勝手にSoftbodyと話をスリ変えてんの?
他人を利用するには手段を択ばないタイプ?
聞かれた事は倉庫番とGodotの入門チュートリアルの話だろ?
そもそも倉庫番で入力のロジックはどのソースで何行目か聞いた時答えられなかったよな?
その時点で入門の応用だという事が何も理解出来てないのを誤魔化してるだけだろ
ほぼ同一のコードやロジックが何度も出て来るのにそれすら分からない
足し算が出来ないのに掛け算だけ都合よく理解出来るとか1次方程式や2次方程式が都合よく理解出来るなら
お前は既に適当にごちゃごちゃ言ってるSoftbodyも出来て当然だろ
何故理解も出来ないし使う事も出来ないんだ? 矛盾してるだろ

424:名前は開発中のものです。
24/05/14 14:04:43.44 3uWWN16A.net
>>423
倉庫番の話なんてこっちから出してない

425:名前は開発中のものです。
24/05/14 14:17:35.99 +vuesiX5.net
>>424
こっちが聞いてるんだが?
反証のしようがないって事なら、正当な理由もなく判断してるって事だよな
お前は物事を理由もなく判断しているのかい?
それこそ気分で〇〇だとか言ってるだけのファッションなの?
本題は基礎と応用の相関関係の話じゃねえの?
人間ってのは自分の技量や知性を超えた物や理解出来ない特性があるから
Lv1がLv2の世界を理解する事は出来ないんだが、お前がそれを覆すなら
何故今すぐSoftbodyができないのか説明が付かないんだが説明してみろよ

426:名前は開発中のものです。
24/05/14 15:19:34.23 SrUAy4Yf.net
自分は作例と模倣の話は最近の出来事として倉庫番をイメージして書いたが
>>3uWWN16AはSoftBodyの事だと認識した
これで伝わるだろうと言葉を端折った自分の落ち度
お互いの前提が異なる状態で争うのは抑えてくれないか
文脈や行間を読むのが不得意でその時のひらめきで判断してるのだろう
そういう仮定で話を理解して会話しないと会話が成り立たないと思う

427:名前は開発中のものです。
24/05/14 15:34:46.76 SrUAy4Yf.net
>>+vuesiX5
アドバイスするにも指摘して反証求めるにも喧嘩腰で話しても反発させるだけ
対話を求めるなら相手に合わせるべきだと思う
行動や発言に不満があるなら無視すべき
文句を言った所で行動を改められないのに数を重ねられるのは不快

428:名前は開発中のものです。
24/05/14 15:42:40.14 +vuesiX5.net
>>427
何が改善や打開に繋がるのか理解せず我流で続けるから10数年も掛かって
チュートリアルすらも終えられたことがない
正解を読み取れない人間が不正解を選び続ける事が本質的な原因そのものだし
本道から外れてる事が原因にしか見えないけどね
改善の意思が見られないから改善する気がないのか?と聞いてる 確認なのだが?
そもそも改善する気がない人間にアドバイスなんて意味がないだろ

429:名前は開発中のものです。
24/05/14 15:47:47.82 SrUAy4Yf.net
10数年も追っかけご苦労さん
10数年も成果を得られない壁打ちするのは時間の無駄だと思うよ

430:名前は開発中のものです。
24/05/14 15:48:49.24 +vuesiX5.net
結局、目的は答案を見せろ写させろであって、勉強の仕方や賢くなる事じゃない
それが勉強を省略できる唯一の方法だと信じて10数年もそれを続けている
だから成績が改善しないという単純な問題にしか見えないんだが
それを愚者だと言わずに何というのだろうかね? 馬鹿?

431:名前は開発中のものです。
24/05/14 17:08:20.35 xERmGSqO.net
初心者に手厚くするのは歓迎だけど努力もしない馬鹿に一から十まで答え用意する義理はないからなぁ
それこそAIに聞いてろって話

432:名前は開発中のものです。
24/05/14 17:18:11.82 4qPs/YFz.net
numpyが使えれば簡易的なpython環境として遊べそうかと思ったんだけど

433:名前は開発中のものです。
24/05/14 17:24:43.58 SrUAy4Yf.net
>>432
自分で使ってないので保証できないが遊べるんじゃないかな?
URLリンク(github.com)

434:名前は開発中のものです。
24/05/14 17:49:30.21 4qPs/YFz.net
>>433
これはpythonをインストールしないといけないみたいですね。
pythonは環境設定が面倒なんでgodotだとそれをしないで済むかなと思ったんです。
pythonのメリットてnumpyが使えるのが大きいんでそれが使えれば良かったんです

435:名前は開発中のものです。
24/05/14 17:57:29.38 SrUAy4Yf.net
GodotEngineはpythonに似た構文のGDScriptが使えるってだけでpythonではないからね
numpyを使うのが目的なら素直にpython環境を構築するのが良いと思うよ

436:名前は開発中のものです。
24/05/14 19:11:22.54 3uWWN16A.net
remoteTransformでリグと同期できたわ
ありがとね教えてくれた人

437:名前は開発中のものです。
24/05/14 19:12:28.00 3uWWN16A.net
>>431
努力もなにも情報がないんだっての

438:名前は開発中のものです。
24/05/14 19:53:13.57 SrUAy4Yf.net
情報がないとは言うがSkelton2Dの公式チュートリアルにおいて
先にカットアウトアニメーションのチュートリアルを実行する事を勧められる
このカットアウトアニメーションのチュートリアルの中でRemoteTransform2Dの説明が為されている
公式チュートリアルを全部やれと言うのは難題だが自分のやりたい範囲くらいは丁寧に学習するべきだと思うよ
自分がなぜRemoteTransform2Dを知っていて答えられたかと言えばチュートリアルを読んでいたから
少なくともSoftBodyとそれを実現する情報は存在しているから教えられている

439:名前は開発中のものです。
24/05/14 20:19:26.17 SrUAy4Yf.net
>>378に提示された記事においてぷるぷるする技術をSoftBodyと呼称している
ではGodotでSoftBodyは使えるのかと調べてSoftBody3Dしかない事が判る
ではSoftBody2Dを実現するにはと調べて>>379に辿り着く

情報があってもそこまで辿り着けてないだけ
調べる手順に何か不足があるからだと思うがそこまでは自分には判らない

440:名前は開発中のものです。
24/05/14 20:48:05.75 xERmGSqO.net
>>437
なら情報豊富なUnityでもやれば?
わざわざGodot選んでおいて何言ってんの

441:名前は開発中のものです。
24/05/14 21:09:25.27 2NzQNHqV.net
使ってて思ったけど
Godotはとっかかりやすいけどかゆいところにまだ手が届いてないって感じだよな
v6くらいになれば機能面でもnext unityになるのだろうか

442:名前は開発中のものです。
24/05/14 21:18:18.86 SrUAy4Yf.net
>>441
2Dで何か作る分には困ることないように思うのだがかゆいところって具体的には何じゃろ?
3Dは軽くしか触ってないがそっち方面かね?
自分はGodotにはVR開発できる快速エンジンとして期待しているのだが

443:名前は開発中のものです。
24/05/14 21:26:50.79 2NzQNHqV.net
物理演算周りかな
自分は土日のお題のミニゲームレベルのゲーム作ってるだけだけど
それですらめちゃくちゃ困ってる(move_and_slideの挙動とか、細かい制御とか)

VR開発かぁ、いいなぁ!

444:名前は開発中のものです。
24/05/14 21:49:12.33 SrUAy4Yf.net
>>443
物理演算はかなり荒ぶるね他の物理エンジンなら変わるのかな?
自分が作るなら物理演算はできるだけ避けるかな移動判定はやむなしって所だけど
SoftBody2Dを作ってるappsinacupさんがBox2DとRapierのGDExtension作ってるから困っているなら試すのもありかも
URLリンク(github.com)
単純置換できると良いがそれ前提で組む必要があるなら面倒だなと思った所で中まで見てないのでどうだかは判らない

VRは情報が少なくて難儀はしたけど手順を理解するとUnityより楽
URLリンク(www.snopekgames.com)
ここの情報だけでWebXRで動かせたのには感動までした
Unityでは良く判らなくて投げ出したから

情報ってあるないより判りやすいとか簡単に使えるって事の方が大事に思う
情報あっても手順が複雑難解過ぎて理解できない使えないって事が多々あるから

445:名前は開発中のものです。
24/05/14 22:00:08.59 SrUAy4Yf.net
Installationを読む限りでは組み込んで設定を変えるだけで物理エンジンを変更できるようだね
URLリンク(github.com)

446:名前は開発中のものです。
24/05/14 22:07:34.80 2NzQNHqV.net
サンキューブラザー!
実はSoftbody調べてるときにこの人Box2Dも移植してるのかすげーって見かけて気になってたんだよね
簡単に変更できるならやってみるかな~

VRゴーグル、ください……(涙

447: 警備員[Lv.1][新初]
24/05/14 22:12:23.24 bdanlVdG.net
ブロック崩しの人?
ボールならslideじゃなくmove_and_collideのほうがええで
slideは名前の通りスライドする挙動のときに使うやつ(プレイヤーキャラとか)でそれ以外のときは使わない方がいいっぽい

448:名前は開発中のものです。
24/05/14 22:18:58.55 SrUAy4Yf.net
>>446
AssetLibからダウンロード→高度な設定で物理2Dエンジン変更→再起動
これだけだった、簡単に球が落ちるプログラム書いて動かしてみたが違いは判らんね
Extensionの都合で動作環境に制約が掛かるのは注意してね
Web公開できなくなるのは人によっては困るのではと思う
おもちゃとしてではなく自分への投資と考えたら高くないよ
自分は絵心ないから凝った事はできないけど
テーブルの上の箱を掴んで投げるプログラム書くだけでも楽しいよ

449:名前は開発中のものです。
24/05/14 22:25:23.75 2NzQNHqV.net
あ、ごめん、ブロック崩しの人ではないです
collide使うのかぁ
細かい動作しようとするとその辺(下手するともっとローレベルな仕組み)避けられそうにないですもんね、この辺りがゆいところに届かないなって感じたところだったり

450:名前は開発中のものです。
24/05/14 22:41:18.15 SrUAy4Yf.net
素のCharactorBody2Dでは単純なジャンプアクションしかできないものね
一般的な2Dアクションゲームの挙動しようと思ったら結局がりごり書かなきゃならない
確かに求められる機能として実装されているか実装方法がやさしく解説されていればとは思うね

451:名前は開発中のものです。
24/05/15 10:24:48.85 Szw7onph.net
荒れてる所で書く事か分からんけど、エンジンに求めるのは車輪の再発明しなくて済むよう楽にやりたい事が出来るか否かって面もあるからなぁ
ただエンジン自体が複雑になればUnity、UE等のようにラーニングコストが跳ね上がっていくのも事実(Godotの場合大きさや重さも)
この辺はにんともだね

452:名前は開発中のものです。
24/05/15 10:42:42.28 Tw0e5XRh.net
うん、今から自作エンジン作ってやるぞよりはマシってレベルでいい気はする
なければ作るしかないわけだし、作るのも楽しいしな

453:名前は開発中のものです。
24/05/15 12:12:39.15 xwWuJjo1.net
いいなー自分もエディタの自作楽しいって言えるくらいになりたい
公式の解説見ながらやったけど自分には早かった…

454:名前は開発中のものです。
24/05/17 00:42:31.49 b6UUdbR+.net
unityなんかも
既存機能は微妙なんでアセットあるかどうかっていうコミュニティ規模の差でしかないと思う
AIの補助が難しいのもgdscriptがマイナー言語だから
godotの強みって
エディタが見やすくて拡張しやすいとか、エディタ軽いとか、動的型付けでシンプルに実装できるとかで
変なインディーゲー作る小規模開発者みたいなニッチな需要でしかないと思う
テンプレゲーを演出で魅せたいタイプなら別のエンジンの方が良いという感想

455:名前は開発中のものです。
24/05/18 11:42:18.01 EuMJlZlO.net
いいねぇ、その需要はワイにぴったりだわ
人口増えるといいなぁ、Godot

456:名前は開発中のものです。
24/05/18 12:32:44.19 aPiRSuii.net
characterbody2dにfrictionはある?
physicsmaterialは使えないみたいだ
単に重力を増やすしかない

457:名前は開発中のものです。
24/05/18 13:02:08.67 EuMJlZlO.net
うん、公式ドキュメント曰く、そもそもCharacterBodyはPhysicsEngineから影響を受けるように想定されておらず、直接コーディングして挙動をコントロールためのノードです、とのこと
つまり、自分でFriction(っぽい動きをする)コードを書くか、RigidBodyにあるものを使うか、その二つということなのでは

とオレは現段階では解釈してる

URLリンク(docs.godotengine.org)

458:名前は開発中のものです。
24/05/19 07:07:39.91 3F1cbYhB.net
どうも
フリクションというより単純に移動スピードを切り替えるのがいいみたい

459:名前は開発中のものです。
24/05/21 14:37:22.48 HYKbHfLd.net
ゲームメカニクスのフレームワークでおすすめある?
プロト作っても訳わからん物体が出来上がるだけなので、フレームワークに沿って作りたい
とりあえずMDAってやる

460:名前は開発中のものです。
24/05/21 16:17:51.22 XcXjhwLy.net
それ分析用のフレームワークじゃなかったか? ちゃんと理解できてる?

461:名前は開発中のものです。
24/05/21 16:44:53.78 HYKbHfLd.net
作るときも使えるんじゃないかな

462:名前は開発中のものです。
24/05/21 17:21:21.30 XcXjhwLy.net
そうか、がんばれ、おもろいものできたら是非報告してくれ
ちなみにフレームワークのおすすめは白紙とペンだ
ホワイトボードでもいいものできるぞ

463:名前は開発中のものです。
24/05/21 17:31:32.78 HYKbHfLd.net
どうも(*´ω`*)

464:名前は開発中のものです。
24/05/22 17:18:47.27 QjJZ+5Gk.net
3Dの本でるみたいだねgodotで3Dやる人どれだけいるか知らないけど

465:名前は開発中のものです。
24/05/22 20:20:02.22 D6omcNZI.net
割と見かけるけどね3Dの作品
どっちかっていうとシェーダーとかエフェクトのレシピ本の方が欲しい気もする

466:名前は開発中のものです。
24/05/23 11:22:47.28 WI0F9tlR.net
おっさんだからちょっと暇つぶしみたいなゲームに魅力感じるようになった

467:名前は開発中のものです。
24/05/23 12:36:43.58 0hjpLf2Q.net
業界動向的にもそんな感じはする
クリエイターもプレイヤーも高齢化してるってことだろう
※個人の感想です
新興市場でどういうゲームが出てくるか要チェックだな

468:名前は開発中のものです。
24/05/23 13:35:37.20 HMcktGp7.net
steamは相変わらず作りたいもの作ってる人がほとんど

469:名前は開発中のものです。
24/05/25 06:15:45.18 +eYd67Za.net
お馬鹿なアイディアを出せるようになりたい

470:名前は開発中のものです。
24/05/25 19:06:20.36 +eYd67Za.net
ゲームってぶれないコンセプトが必要なんだね
面白そうと思ったコアメカニクスから考えて、コンセプトがブレブレってことがよくある
コンセプトはどんな体験を与えたいか、そこから考えるべきだったんだね(*´ω`*)、、、

471:名前は開発中のものです。
24/05/25 19:10:08.22 5FIYzrrw.net
うん、入門書の最初の方に書いてあるやつだけどね

472:名前は開発中のものです。
24/05/25 19:44:23.27 +eYd67Za.net
そうか

473:名前は開発中のものです。
24/05/26 09:51:33.25 ABp6gZxI.net
アクションとしては斬新なものはないんだけど結構やっちゃう
キャラのデザインもかわいいし、他キャラがワチャワチャしてるのも楽しい
見せ方って大事だなぁ
www.crazygames.com/game/ninja-parkour-multiplayer

474:名前は開発中のものです。
24/05/27 07:57:23.56 e+r+hTiv.net
発想法とか考えてたら、また何作るか分からんループにハマってしまった
シンプルに決める方法とかあるかな?

475:名前は開発中のものです。
24/05/27 08:24:57.16 EjujlbLP.net
>>474
何かと何かを組み合わせると面白くなるかも(フルーツ+くっつける+パズル=スイカゲーム、駅+迷路+脱出=8番出口)
逆に既存のものを分解してみると面白いかも
あと、やりたいこと(ぼやっとしててもいい)から逸れると迷走してよく分からなくなると思う

476:名前は開発中のものです。
24/05/27 12:42:46.29 e+r+hTiv.net
>>475
ありがとう
あくまでやりたいこと優先ってこと?
発想法ででてきたIDEAがやりたいこととは限らないし
結局、取り掛かる熱量がないとダメだし
やりたいことを明確にするには、自己分析とか必要だなぁ
自分が何に快感を感じるのか
とまたドツボにハマる

477:名前は開発中のものです。
24/05/27 14:19:26.79 fmFmdyyd.net
出来合いのアニメーション付き3Dモデルを動かすのは出来たけど自作モデルを動かすのは面倒な感じですかね

478:名前は開発中のものです。
24/05/27 16:33:42.34 WAsBM8Kv.net
3Dでゲーム全然作らないからあれだけどblenderでモデリング場合によってはスカルプチュアやらやって
ボーンぶちこみウェイトとリギング、想定してる個々の動作アニメーションも設定して
テクスチャやらペイントで色付けの作業を全ての素材で行うのが苦じゃないならいけるよ
ちなみに色々省いてだからクオリティ高くしたいならさらに工数が増える
3Dは作れば資産になるけどそこまで行くのが大変だよね

479:名前は開発中のものです。
24/05/28 15:12:06.70 jxogMkdX.net
やる気出る方法ある?
常に手を動かしてないとだめだな
夕方になってやっとやる気がちょっと出てくる
godotで3dってあんまり見ないね

480:名前は開発中のものです。
24/05/28 17:18:35.48 8SgXol+s.net
5ch閉じればやる気出るだろ

481:名前は開発中のものです。
24/05/28 18:07:28.11 QMHSfJi+.net
3Dの本の1日目でプログラミング無しでキャラ動かすまで行くよ

482:名前は開発中のものです。
24/05/28 18:17:01.71 0BkqNCh9.net
>>479
エディターはスタートアップに入れておく
PCが立ち上がったらエディターに向かってコメント書きでもソース整形でもプロパティ変更でもいいから触る
あとは前日名残惜しい所で終わらせておく派とキリのいいところまで終わらせる派がいるね

483:名前は開発中のものです。
24/05/28 18:18:37.29 QMHSfJi+.net
正確には1日目(キャラ移動)で、2日目~4日目を飛ばして、
5日目(カメラとアニメーション)でキャラ動かせるようになった(プログラムもあるけどコピペで)

484:名前は開発中のものです。
24/05/28 18:25:54.27 sXaPA2p7.net
>>476
実際にやってみるまでどれくらい好きとか分からないから、三日坊主でもいいから数打ってやるのが良いと思う

485:名前は開発中のものです。
24/05/28 18:27:08.44 sXaPA2p7.net
>>479
ゲームでも何でも、ふとした時にやってのめり込むことが多いから、障壁をできるだけ低くするのがいいんじゃない

486:名前は開発中のものです。
24/05/28 18:36:29.93 QMHSfJi+.net
>>479
他人にやれと言われてもやる気出ないから
やりたいものやるのがいいと思ってるわ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch