目次
- はじめに
- 3Dクラフトの基本
- オブジェクトの設置
- 座標について
- 光の表現とマテリアル
- シーンについて
- イベントスクリプト
- プロジェクトタイプ
- 作品を公開する
シーンについて
プロジェクトの3D空間は「シーン」という単位で管理されます。
クラフト画面の左上を見てください。
「デフォルト」という名前が表示されていますね、これがシーン名です。
「デフォルト」はプロジェクトを作成すると必ず作成されるシーンで必ず1つ存在します。
新規シーン作成
プロジェクトに新しくシーンを追加してみましょう。
シーン操作→新規作成 でシーン名を入力してください。
仮に名前は「シーンA」としておきます。
まっさらな3D空間が作成されましたね。
左上のドロップダウンでシーン名を選択して「読込」をクリックすると自由にシーンを切り替えることができます。
3D空間の区切りのよい場面でシーンを分けておくと管理しやすいので便利です。
例えば、一つの街をプロジェクトで表現しようとした場合、街の外と建物の中を同じシーンで管理してしまうと、非常に複雑な構造になってしまいます。
その場合
・街の外
・建物の中
でシーンを分けておくと、シーンごとにすっきりした構造になりますので管理しやすいでしょう。
シーンをモデルとして登録する
シーンは3D空間を分ける目的以外に、再利用するためのモデルを作成する場所としても利用できます。
例えば、複数のパーツで構成されたオブジェクトを考えてみましょう。
次のシーンでは円柱と板で構成されたベンチをつくりました。
全部で10個のパーツで構成されています。
このベンチをいくつも配置したい場合、その度にパーツを組み合わせて作っていたら大変ですね。オブジェクトを何回も使いまわしたいような場合、シーンをモデルとして登録することができます。
右上のエクスポート→モデルとして登録 をクリックします。モデル名を「ベンチ」として登録してみましょう。
続いてクラフトから「3Dモデル」を選択します。
モデル選択をクリックすると、先程保存したベンチが確認できますね。
あとは、いままでと同じように配置してみてください。
いくつでも、簡単に配置できるようになりました。
複雑なパーツで構成されるオブジェクトはモデルとして登録しておいてシーンに登録するようにしましょう。 また、モデル化したオブジェクトは高速に読み込むことができるので、ロード時間の短縮にも有効です。
作成したモデルを外部の人と共有したい場合はファイル化して保存することもできます。
右上のエクスポート→json形式 を選択しておけば、自由にRaptexStudioに取り込むことが可能です。
モデルはシーン全体が保存されます。赤い中心を基準として作成しておくと良いでしょう。
シーンを背景として使用する
もう一つの便利な使い方を紹介します。
シーンは別のシーンの背景としても使用することができます。
新しく「背景用シーン」というシーンを作成してください。
まず、標準の背景を非表示にしてみましょう。
シーン設定から背景シーンに「なし[標準]」を選択します。
いままで存在していた地面がなくなりましたね。
ここに背景をつくっていきます。
今回は草が生い茂っている地面とレンガの壁を配置してみました。
一旦、このシーンを保存して、以前つくっておいた「シーンA」に移動します。
シーンAを表示したら、歯車ボタンをクリックしてシーン設定ダイアログを開きます。
背景シーンに「背景用シーン」を選択して適応するを選択します。
いかがでしょう。編集中のシーンに「背景用シーン」が合成されました。
例えば、いくつかのシーンで共通化したいオブジェクトがあった場合、シーン毎につくるのではなく、背景用のシーンを用意して共有できるようにしておくと便利です。
背景用のシーンに含まれるオブジェクトは編集できませんので、ご注意ください。
シーン間の移動
2つのシーン間を移動する方法みていきましょう。
いくつかの方法がありますが、もっとも簡単な方法は「シーン移動」オブジェクトを使用する方法です。
まず、移動先のシーンと位置に視点を移動させてみてください。
今回はシーンAの以下場所まで移動してきました。
右下の現在地アイコンをクリック→クリップボードにコピーで「トラベルパス」を取得します。
トラベルパスはプロジェクトのシーンと位置を指し示す一意の値です。
つまり、このトラベルパスの位置に移動する。といった命令を発行することができるということになります。
続いて、移動元の場所を決定します。今回はデフォルトシーンから、このシーンAへ移動する動作を試してみたいと思いますので、デフォルトシーンを開きます。
次に、クラフト画面を開いて「シーン移動」を選択します。
トラベルパスのところに先程コピーしておいた値を貼り付けて好きな場所に設置してみましょう。
扉をクリックすると、シーン間の移動が確認できますね?
シーン移動は同一シーン間でも可能です。シーンをまたぐとローディングが発生してしまうため、1シーンで複数の空間を擬似的に生成する手法も有効です。
(ただし、1シーンに詰め込みすぎると最初のローディングが長くなります)
扉ではなく、好きなタイミングで移動させることも可能です。
例えば、ある地点に到達したらシーンを移動させるといった動作です。
これを実現するには「イベントスクリプト」を使用します。次章以降で解説しますので興味がありましたらご確認ください。