俺に解るように説明する "Godot Engine 3.x" 入門+

ゲームエンジン Godot Engine に関すること。入門とか使い方とかチュートリアルとか、あれとかこれとか。日本語解説。

Godot Engine エアホッケー 8 「プロジェクトを越えるシーンの移植はコピペでOK」

エアホッケーの6・7で作った「スタート画面」を、GDScriptの11・12で作った「シーンA」にハメよう。もちろん、もう一度スタート画面をラベルノードやらボタンノードやらを並べて作るのはめんどくさい。ここはコピペで対応だ。エクスプローラーで該当のプロジェクトフォルダを開き、必要なファイルを直接コピペ。これで、Godot は問題なく認識してくれる。必要なファイルは4つ

f:id:ore2wakaru:20170907225919p:plain

― ― ― なお、ファイルが足りないと怒られるので注意。

上手くいったら、持ってきた「スタート画面」のルートに付いてるスクリプト “Label.gd”エアホッケーの7用)を “sn_A.gd”(GDScriptの12用)に貼り変えよう。シーンパネルから張り替えようとするとバグる可能性があるので、今のところはインスペクターパネルからのやった方が安全だ。

f:id:ore2wakaru:20170907233732p:plain

スクリプトの張り替えが終わったら、"Label.gd" と “sn_A.tscn” はもういらない。ファイルシステムパネル上で、右クリメニューのデリートを選んで消してしまおう。キーボードのデリートキーで消そうとすると、シーンパネルで選択されている何らかのノードがデリートの対象となるので注意。右クリメニューからやること。

また、ファイルシステムパネル上で消すとファイルの復活(アンドゥー)が出来ないので慎重に。

f:id:ore2wakaru:20170907234959p:plain

それから、消去の際メインパネルで “sn_A.tscn” が開かれている、又はタブに “sn_A.tscn” があると “[unsaved](*)” となって、「どうしますか?」って聞いてくる場合があるかもしれない。ここはセーブとかしないで [Don’t Save] で削除してしまうこと。

最後に “Label.tscn” を “sn_A.tscn” にリネームすれば(ファイルシステムパネルの右クリメニュー > [Rename or Move..])、これで完了。

f:id:ore2wakaru:20170908000535p:plain

試しに、[ゲーム再生] ボタンから動作を確認。「シーンA」の代わりに、ちゃんと「スタート画面」が出て、ボタンを押せば、「シーンB」に切り替わるはずだ。

f:id:ore2wakaru:20170908003508p:plain

コピペで事が済んでしまうとは、なんとも簡単な。

本当に、意外と簡単に他のプロジェクトからシーンを運んでくることが出来たと思う。これも、Godot が、".tscn" ファイルにノードの情報をバッチリ入れてくれているためと思われる。なかなかやるな Godot。



次回は、「シーンB」の方を「ゲーム画面」に改造していこうと思う。