みなさんこんにちは!UnityやUnreal Engineを勉強しながらゲームつくるマンです。
ゲーム開発ツールのUnityを少しづつ勉強中。解説書やネットで調べた情報を参考にして覚えたことを忘れないように書き留めています。
Unityのアドベンチャーゲーム制作アセットAdventure Creator の公式サイトに掲載されている英語のチュートリアル をGoogle翻訳しながら進めていきたいと思います。今回は導入編チュートリアルの最終回。ベアボーンと呼ばれる必要なオブジェクトや設定を行ったゲームの基礎となるシーンの設定について見ていきましょう。
原文:Setting up a bare-bones scene
Adventure Creatorでベアボーンシーンを作成するための基本的な手順は次のとおりです。
Adventure Creatorのシーンを実行するには、GameEngine、PersistentEngine、Playerの3つのプレハブが必要です。シーンが始まると、GameEngineだけが存在するはずです。自動的に他の2つが作成されます。
Scene Managerを使用して必要なGameEngineプレハブを作成できます。これは、シーンオブジェクトを編成することによって行われます。メニュー:Adventure Creator > Editors > Game Editorを選択。[AC Game Editor]パネル > Sceneタブを選択します。Basic Structure > Organise room objects: [With folders]ボタンをクリックしてシーンをフォルダで整理することをお勧めします。これにより、階層の混乱が軽減されます。
Scene Managerの表示が変更されて設定のリストが表示され、ロジックプレハブのクイックボタンが表示されます。
シーンのセットには、ゲームのスタイルに応じて、3Dモデル、2Dスプライト、またはその2つの組み合わせが含まれます。これらのオブジェクトをシーンに配置し、他のUnityシーンと同じようにライティングすることができます。Adventure Creatorは、シーンの階層構造にライトとセットジオメトリを配置するためのフォルダを用意していますが、これは便宜上のものであり、削除することができます。
PlayerStartプレハブは、シーンの開始時にPlayerの開始位置をマークします。異なるPlayerStartを使用して、以前にプレイしたシーンに基づいて異なる位置にマークを付けることができます。デフォルトのPlayerStartは、このシーンからのゲームが存在するときにプレーヤーを配置するために使用されるか、または他の適切なPlayerStartが見つからない場合に使用されます。
シーンオブジェクトを編成すると、デフォルトのPlayerStartが作成されます。Scene Managerには、デフォルトのPlayerStartとしてリストされています。
PlayerStartは青い矢印で表されます。階層ウィンドウのシーンの_Navigationフォルダ内の_PlayerStartsフォルダ内に自動的に配置されていることに注目してください。シーンを配置し、シーン内で回転させて、プレイヤーに表示させるポイントを正しくマークします。
Adventure Creatorは、GameCameraプレハブを使用して、シーンの周りのMainCameraをガイドします。GameCameraは実際には何もレンダリングしません。代わりに、MainCameraはGameCameraに自身を「割り当て」、GameCameraが与えた移動ルールに従います。
新しいGameCameraを作成するには[AC Game Editor]パネル > [Scene]タブ:Scene Manager> Scene prefab > [Game camera]をダブルクリックします。実際に表示されるカメラのプレハブは、設定マネージャのカメラパースペクティブに基づいて異なります(たとえば、2DゲームではGameCamera2Dを作成できます)が、その原理は似ています。
新しいGameCameraを3D空間に配置し、PlayerStart矢印が表示されている視点に移動します。コーナーにあるカメラプレビューウィンドウを使用して、カメラプレビューを確認することができます。
GameCameraを選択して[Inspector]パネルを見るとターゲットの位置に基づいて動きや回転を制御する機能を提供します。ロックチェックボックスのチェックを外すと、その軸がどのように影響を受けるか、またどのGameObjectがTarget(デフォルトではPlayer)になるかを制御できます。
このGameCameraをシーンのデフォルトとして割り当てる必要があります。Scene ManagerのDefault Cameraフィールドにドラッグします(または小さな円をクリックしてオブジェクト選択ウィンドウからGameCamera選択します)。
シーンが始まると、PlayerStartの位置にPlayerが表示され、MainCameraはGameCameraからのビューになります。
すべてのAdventure Creatorのシーンには通常、CollisionオブジェクトとNavigationオブジェクトが必要です。Collisionオブジェクトは、キャラクターをセット内に留める、または落ちるのを防ぐために使用され、Navigationオブジェクトは、キャラクターが行う経路探索ルートを計算するために使用されます。ポイント&クリックゲームを作っていない場合でも、NPCはパスファインディングを使ってシーンをナビゲートします。
シーンのナビゲーションとコリジョンの要件は2Dシーンと3Dシーンで異なるため、適切なチャプターをさらに参照してください。
というわけで導入編のチュートリアルは終了です。チュートリアルといっても英語を翻訳して内容を読んでばかりでほとんどUnityの作業はありませんでしたね。今回のツボはGame Camera。Main Cameraを制御するためにGame Cameraをシーンに配置するという仕組みになってるわけですね。