【ゲームエンジン】Godot Engine
■ このスレッドは過去ログ倉庫に格納されています
せっかく3.0がリリースされたのにスレ無くなってたので
Godot はクロスプラットフォームかつオープンソースの2D/3Dゲームエンジンである。
現在の開発主体はGodot Engine communityであるが、
オープンソース化によってそのような形態をとる前はラテンアメリカの幾つかの企業によって開発、使用がなされていた。 
Wikipediaより
公式サイト
https://godotengine.org blenderとの相性がよくて助かるね
BGEが復活するって噂があるけどしばらくはgodotでいいや AAAレベルを謳ったTPSデモ、やっぱそれなりに重いな。
重いと言われるcryengine使うほうがまだ素直かも discordのコミュニティ見たほうが質問すぐ帰ってきていいね godotとdefoldってどっちがいいのですか?
パズルゲームなどをサクッと作りたいです
プログラミングはほぼ初心者ですが
unityが重いので来ました あと、スクリプトのエディタに補完はないんでしょうか Cocos Creator は、Godot に似てるけど、
Cocos2d-x(Cocos2d-JS)と互換性がない部分もあり、混乱が続く
[Cocos2d-x] Cocos Creatorとは:開発ツールのまとめ
http://site.oukasei.com/?p=1387 GDscriptなんですが、補完はどこから有効にできるんでしょうか?
エディタは内蔵のものです。 全く出てこない?
それとも比較的複雑な場合に出てこない?
ttps://godotengine.org/article/introducing-brand-new-code-completion
古い記事だけどこんな感じで勝手に出てくる
あとはOSとか環境か https://www.youtube.com/watch?v=ybz5CfIPYq0
ありがとうございます
例えばこのチュートを見ると出てきていないように見えます
GDscriptで出るんでしょうか?
32bitも試してみましたが、代わりありませんでした その動画でも14:20くらいのArrayのところで出てるで
printとかは単に入力が早くて表示されてないだけだと思う
単語の途中で止めると大量に出てくる
あとは分からんね 出てきました
書き方が悪かったようです
ありがとうございます >>82
ありがとうございます
とりあえず付属のエディタで作ってみます
しかし何を作ればいいか、、、 とりあえず公式チュートリアル(Dodge)やってみたら 画像をimportする時いつもfilterフラグがOnになっててアンチエイリアスがかかっちゃう
フラグoffにしてreimportすればなんとかなるけど、毎回これやるの面倒で…
Preset...>Set as Defaultにしても上手くいかないんだけど同じ症状の人いる? インポートってドラッグアンドドロップだけなんですよね? それでもいいしInspectorのtextureにD&D or loadでもいい
いずれにせよ自分の場合ImportタブのFlags->Filterが常にチェック入っちゃうから外してreimportをしてる ありがとうございます
基本的にDDなんですね
>>84
ぼんやりしたゲームのイメージはあるんですけど、いざ形にしようとなるとハードル高いですね
unity重いのでこっちに来ました
defoldでもいいかなと思ったんですけど、文字小さくて読めないので インポートしたdaeファイルが「godotで開かれているため削除出来ません」というメッセージが出て削除出来ません。
これはどうしたらいいのでしょうか? ノードは何?Sprite3D?
一応言っておくと画像or3d modelをD&DするのはSprite or Sprite3D nodeをattachした後にtextureをloadするのを簡略化した操作
Sprite(3D) nodeのInspectorタブのTextureを右クリックしてClearしたら? アンビエントオクルージョンはないのでしょうか?
ベイクする記事は見つけましたが 2dでカメラを使っているのですが、設置しただけでは表示されないのでしょうか?
アクティブ化する必要があるのですか?
チュートリアルあれば英語でもいいので教えてください
スプライトとカメラをツリーに追加しているのですが、カメラをツリーに追加していない状態で表示される画面が、カメラを追加した後にも表示されるようです
>>93
解決しました
ごめんなさい ttps://japan.zdnet.com/article/35127322/
GitHubの成長ランキング3位だゾ グラ重視のソフト作ろうと思ったんですが、マテリアルのミラーすらないんですよね
どちらかというと2d向けでサクッと作れる感じに見えます
gDscriptがんばります グラフィック関係はUnreal Engineという強豪がいるからなぁ gdscriptできればc#も出来ますか?
unityはエディタがなんか重くて使いづらい
文字もやたら小さいし 言語仕様は結構違うよ
Pythonなら使えるようになるだろうけど
あと外部エディタで編集はできる(Godotもだけど) パズルの練習してるんでわからない部分教えてくださいあとで
チュートはむずくてわからなかった http://docs.godotengine.org/en/3.0/tutorials/inputs/inputevent.html
キー操作なんですが、GDScriptの場合、どうしてこんなに複雑なコードになるんでしょうか。_unhandled_inputという関数?の中に書かないといけないのですか?
もっと簡易的なコードってありますか? すぐ下に簡単にした例書いてあるじゃん…
_processの中にInput.is_action_pressed()で出来る
というかそのレベルならなおさらチュートリアルやるべきでは 英語読めないのでわからなかったです
ごめんなさいありがとう チュートリアルの内容が難しかったんじゃなくて英語が読めないから難しいって言ってたのか…
中学生とか? 超初歩的な質問なんですが、print("hoge")で文字列を出力したいのですが、画面上やデバッガーに出力できるんでしょうか
動作確認につかいたいのですが
デバッガを開くにチェックを入れても、出てこないです https://godotengine.org/qa/9878/how-to-make-keyboard-controls
再度質問です
スプライトの動かし方ですが、キーをバインドしてから、このコードをnode2dに貼り付けても動かないです
ツリー構造は
node2d
└sprite
という感じです
kinematic2dを使うのかと思ったのですが、キネマティックというのは物理を伴った移動であって、単純移動であればnode2dで良いと認識していますが、違うでしょうか?
自分が作りたいのはパズルなので、特に物理は必要ないです。 Node2Dのメンバ変数のposition.x, position.yの値を変えればいい
リンク先のは変数定義してその値変えてるだけ >>106
Google 翻訳でもすれば?
ウェブページ丸ごとも、翻訳できる >>114
どうも
アドオンはつかってたんですが、godotのサイトだと何故か翻訳されなかったです
まるごとコピペします
>>113
メンバ変数というのは、そのノード特有の変数みたいなものですよね 英語読めないって全く読めないってことはないだろうに…
各ノードのメンバもhelp->searchから調べれられる まぁゲームエンジン初心者・プログラミング初心者・英語わからない
だったら素直に日本語の情報多いUnityの方がええんやな でもgodotユーザーが増えるのは嬉しいけどね
色々Tipsの共有とかしたいし unityはエディタがちと重いし、文字サイズ小さすぎて読めないので、、、 結局あのアドバイスで分かってくれたか不安なのでコードを貼ってあげよう
extends Node2D
func _ready():
pass
func _process(delta):
if Input.is_action_pressed("ui_up"):
position.y -= 10
if Input.is_action_pressed("ui_down"):
position.y += 10
if Input.is_action_pressed("ui_left"):
position.x -= 10
if Input.is_action_pressed("ui_right"):
position.x += 10 ↑ありがとうございます
勉強中です
最終的にはリアルなゲーム作りたいけど、小さいゲームでも作れるようにならないとだめっすね、、、 >>120
これって_processというはじめから入ってる関数を使うんですね
これを使わなければ動かせないということなんでしょうか とりあえずイベントドリブンっていう言葉をググれ
それで全ての謎が解ける もしかして_process関数というのはunreal でいうevent tickのようなものでしょうか?
フレームごとに実行するというような機能ですか
func readyがそれだと思っていましたが readyとprocessの意味から推測できると思うが
readyはオブジェクトが作られた時最初に一度のみ実行される
processはオブジェクトが生成されている間なんども実行される(実行間隔はdelta) なるほど、やっとわかりました
ありがとうございます >>120
スプライトにこのコードで動かす事はできたのですが、position変数というのは最初から入ってる変数ですよね
こういった最初から入ってる関数ってどこで調べられるでしょうか
エンジン上で調べられると楽ですが
https://docs.godotengine.org/en/3.0/classes/class_sprite.html?highlight=sprite
ここのバリアブルにはposition変数のってないです、、、(´・ https://docs.godotengine.org/en/3.0/classes/class_node2d.html
Member Variables
Vector2 position - Position, relative to the node’s parent.
クラスの継承という概念について勉強するしかないね >>128
だからエンジン内のHelp->Searchでノード名検索すればそのメンバ変数やメンバ関数書いてあるって教えたでしょ 要はpositionはNode2DのメンバだけどSpriteはNode2Dを継承してるから使えるってだけ
継承はオブジェクト指向の基本 最初何のパズルがいいですか?
まだグリッド移動とかやってる途中ですけど
>>133
親の持ってる機能を使える
といったのがクラスですよね それは継承
継承はクラスを使う利点の1つだけどそれだけじゃない 最近はプログラミングの学習でも小学生くらいからPython使ってたりするし
ちょうどGDScriptはPython風だし
せっかくだからPython使って1からプログラミング勉強してもいいと思うゾ >>134
>>137
>>134
ありがとう
小さいパズル作れるようになる とりあえず func _process(delta):
if Input.is_action_just_pressed("ui_up"):
position.y += 10
この前もらったコードですが
node2dをクラスリファレンスで調べたところpositionという変数がありました
positionというのはvector2クラスの持っている変数なのか、node2dの持っている変数なのか、読み方がよくわからないのですが、教えてください だからプログラミングから勉強しる
これは変数の型という概念だ vector2は変数の型ですか
型であると同時にクラスでもあるのですか? input.is_action_just_pressed
みたいなコードの場合、このドットは階層構造を表しているということでしょうか
フォルダような
input>is_action_just_pressed
といった感じですかね
この場合inputがクラスで、is_actionは関数だと思いますが、
クラス.クラス.関数
といった並びになる場合もあるのですか? Godotって、無料でちょっとオモチャっぽさもあるけど、
UnityやUnrealも理解した上で、あえて通る道ではあると思う。 var list_x=[0,1,2,3]
var list_y=[0,1,2,3]
func _ready():
for x in list_x:
print(x)
パズルで位置を表す場合2次元配列を使うと思いますが、どのように書くといいんでしょうか
このあたりの参考になるサイトがあれば教えてください。
x0y0のいちを表す場合、list_x[0],list_y[0]みたいな感じに表すと思いますが、具体的な書き方がわからないです
とりあえずグリッドを作製したいです Godot grid movement とかでググればいくらでも出てくるじゃん…
あとその書き方だと二次元配列じゃなくて配列を二つ用意しただけ
配列の配列にしないと あと何度も言うがチュートリアルとかドキュメントの初めのあたりは読んでくれ godotに関係ない話を一切するなとは言わないけど
全部godotじゃなくてプログラミングの質問だからなw
プログラミング好きな奴にとってはgodotは結構しっくりくるけど
プログラミング勉強したくない奴は他のゲーム製作ツールの方がいいのかも知れん ユーザーが増えるのは嬉しいんだけどね
ところでここ見てて実際に開発してる人どれくらいいるの?
モチベーション上げるために進捗状況貼ったりしたい
画像は自分の現状(基本的な移動や会話とかは実装したがゲームにはなってない)
https://i.imgur.com/vxSk6Pa.png 言語仕様の日本語のリファレンスがどうしても欲しいならPythonのを探したら
基本的にほぼ同じなので
さっきの質問なら"多次元配列 Python”とかで調べればよい 調べるための前提知識すらなかったです
今から調べます
ありがとう タイルマップを使ってるんですが、エディタ側でテクスチャのリサイズは出来ないのでしょうか?
例えばタイルのサイズが100pxとしたら、あらかじめ100pの画像を用意しなければいけないのでしょうか?1000pxの画像でも、100個に刻むことは出来ますが、この1000pxを100pにしたいのです 知らないうちに日本語が簡単に使えるようになってる。 godotで3dゲー作る人はあんまりいないんですか? unhandled_key_inputとunhandled_inputの違いなんですかね p = get_node("/root/Node/KinematicBody")
print(p)
これでエラーになるのは何でですか?
ノード構造は間違っていないと思うんですが
node=rootなんでしょうか godot apiってなんですか?
apiというのはクラスですか?
nodeはapiと書いていますが https://www.slant.co/topics/1495/~best-3d-game-engines
なぜかGODOTが一位 前ここにゲーム画面貼ったりしたけど
ここ見てる人本当に何か開発してるの?知識交換しようにもまともに触ってる人全然見ない 2Dの18禁同人ゲーなので特に難しいことをするわけでもなく
最新の情報だけは見てる
そういえばGDquestがらみの話誰かするかなと思ったけど誰も書かなかったな R18アクションゲームでGodot使ってたのは一つ知ってるな…
GDquestいいよね
個人的には動画じゃなくて書籍に逆引き辞典みたいな感じでまとめてくれると嬉しいけど欲張り過ぎか 何つくってますか?
個人でFPSとか手間かかりすぎるよね 自分は2dアクションゲーム
3.1で追加されたtilemapの機能だけど、atlasで作るときにcollisionも自動で各タイルに設定ができないんだけどやり方わかる人いる? Discordでも聞いたけど無理みたいだ
仕方ないから前から使ってたプラグイン使うか… ■ このスレッドは過去ログ倉庫に格納されています