あなたの世界を構築する、またはワールドビルディングとは、アセットライブラリからの洗練されたアセットで環境を装飾し、3D空間の追加要素を追加・設定してあなたの世界を生き生きとさせるプロセスです。このワークフローのエキサイティングなステップでは、あなたのビジョンと努力が一つにまとまり、完成し、公開の準備が整った一貫した環境を見ることができます。
環境アート - 構築 .rbxlファイルを参照として、この環境アートカリキュラムのセクションでは、高品質のアセットとカスタムマテリアルをグレーボックスジオメトリに使用・適用する方法を示し、チームベースの一人称レーザータグシューティングゲームの各異なるエリアを区別する方法を説明します。以下のステップバイステップの指示が含まれています:
- アセットライブラリを建物のアーキテクチャや屋外スペースに適用して、ユーザーに全体の世界についての情報を提供します。
- カスタムタイル可能なテクスチャを使用して地形を彫刻し、建物がある全体の島を作成します。
- プレイ可能なエリアを制限して、ユーザーが島から落ちずに戦闘を続けられるようにします。
- 特殊効果や照明ソースを設定して、3D空間に動き、温かさ、リアリズムを加えます。
このセクションを完了すると、あなたのコンテンツをレビューし、設定して、ゲームがデバイス全体で最適なパフォーマンスを発揮することを確認する方法を学びます。

アセットライブラリを適用する
環境を構築する最初のステップは、3D空間にアセットライブラリを適用することであり、このプロセスは通常、以下の作業カテゴリのいずれかに分類されます:
- グレーボックスジオメトリにアセットライブラリを直接適用して、元のデザインと正確に一致させる。
- グレーボックスジオメトリを元のデザインの意図を尊重しつつ、全く別のものに変換する。
- グレーボックスジオメトリを別のものに変換しながら、新しいオブジェクトにアセットライブラリを適用して、環境全体の一貫性を保つ。
グレーボックスとアセットライブラリを使用して環境を構築するプロセスは、元のデザインから最終アートへの直線的なものに見えることはほとんどありません。各ステップ間やステップを超えた反復は、ユーザーの体験を改善する新しい方法を見つけるために、開発プロセスでは通常であり、ほぼ常に必要です。たとえば、フロアセクションのガイダンスでは、元のフロアグレーボックスジオメトリを新しい区分に変換して、ユーザーが建物内のどこにいるかをより良く把握できるようにしています。

これらの指示に従って、サンプルの環境アート - 構築 .rbxlファイル内の最終環境を正確に再現する際に、各ステップがどのように連携して環境にキャラクターを追加し、ユーザーに全体の世界についての情報を提供するかを観察してください。プロセスのどの部分でも、自分のゲームの仕様に合わせて調整できます。あなたの環境は、作成している世界に応じて異なるニーズを持つかもしれません。
フロア
フロアの元のグレーボックスデザインは、建物を2つの半分に分けることでした。これは、各半分をそれぞれのチームのスペースとして視覚化し、マップの中心を区別するのに役立ちました。しかし、環境を構築し始めると、壁がこの目的をより効果的に果たすことができ、フロアはユーザーが建物の外部に対してどこにいるかを把握するのにより役立つことがわかるかもしれません。
たとえば、最終サンプルのレーザータグ環境では、ユニークなマテリアルを持つ新しいフロアピースを使用して、ユーザーが建物の内部を移動しているのか、屋外スペースに近づいているのかを知らせます。ユーザーが建物の内部にいるときは、GlossyTiles MaterialVariantを持つ表面の上を歩き、後でこのチュートリアルで作成する中庭やオーバーハングピースの中を歩いているときは、Concrete_Tiles_A MaterialVariantを持つ表面の上を歩きます。これらのマテリアルは、サンプルの環境アートアセットライブラリで見つけることができます。

この技術は元のグレーボックスジオメトリを置き換え、変換しますが、ゲーム全体の視線と関与距離を制御するピークと谷を作成するという元のデザインの意図を尊重しています。これは、ユーザーが3D空間内で自分がどこにいるかを知る利点を持ちながら、上昇と下降の物理的および感情的な感覚を保持することを意味します。
自分のアセットライブラリをフロアに適用するには:
ブロックパーツを使用して、屋内フロアの対称的な表面を作成します。

ウェッジパーツを使用して、建物の内部のメインフロアと中二階の間に高低差を作成します。
これらの屋内パーツを選択し、プロパティウィンドウで色、マテリアル、および/またはMaterialVariantを、環境内の他の表面とは異なる視覚的処理を適用する値に設定します。これにより、プレイヤーは常に建物内にいることを認識できます。

ブロックパーツを使用して、屋外フロアの対称的な表面を作成します。

ウェッジパーツを使用して、建物の外部のメインフロアと中二階の間に高低差を作成します。

ブロックまたはウェッジパーツを使用して、建物の外部のメインフロアと屋外フロアの間に高低差を作成します。

これらの屋外パーツを選択し、プロパティウィンドウで色、マテリアル、および/またはMaterialVariantを、環境内の他の表面とは異なる視覚的処理を適用する値に設定します。これにより、プレイヤーは常に建物の外にいることを認識できます。

これらのフロアパーツをすべて固定します。
スポーンゾーン
スポーンゾーンの元のグレーボックスデザインは、マップの反対側にエリアを作成し、ユーザーがマッチ開始時にそれぞれのチームに参加できるようにすることでした。これらのスポーンゾーンの配置により、ユーザーはマッチの開始時に敵の火から遠く離れた安全な場所を持つことができます。

最終サンプルのレーザータグ環境は、このデザインの意図を保持しつつ、色のテーマを追加しています:マップの左側に集まるチームにはミント、右側に集まるチームにはカーネーションピンクです。このチュートリアルのこのセクション全体で、各チームのスポーンゾーン近くのマップのエリアを区別するために、この同じカラースキームを使用し続けます。
自分のアセットライブラリをスポーンゾーンに適用するには:
左スポーンゾーンの内部に適用可能な壁、コーナー、およびドアフレームのモジュラーアセットを追加して設定します。

壁コンポーネントを選択し、プロパティウィンドウで色をユニークな色合いに設定します。この色は、マップの残りの部分でプレイヤーがこのチームのカラーテーマに対して自分の位置を把握するために使用し続けます。

右スポーンゾーンについてもこのプロセスを繰り返します。

これらのスポーンゾーンアセットをすべて固定します。
戦闘ポケット
戦闘ポケットの元のグレーボックスデザインは、マップの主要なレーンが交差する場所に戦闘のための意図的なスペースを作成することでした。さらに、元のグレーボックスデザインでは、各戦闘ポケットには、ユーザーが空間を移動する際に選択の過剰を避けるために、最大で3つの出入り口を含める必要がありました。
最終サンプルのレーザータグ環境は、サンプルの環境アートアセットライブラリをグレーボックスジオメトリに直接適用して、元のデザインと正確に一致させつつ、前のセクションで導入されたカラーテーマを使用して、各チームのスポーンゾーン近くのマップのエリアを区別しています。これらの色とフロアマテリアルを使用することで、ユーザーは建物の周りのどこにいても自分がどこにいるかを迅速に把握できます。これは、建物のフロアのグレーボックスデザインの元の意図を尊重しています。

さらに、このセクションの技術は、サンプルアセットライブラリからの小道具を左側と右側の戦闘ポケットに適用して、環境にキャラクターを追加し、ユーザーが存在しなくてもそれが独自の生命を持っているという信憑性を提供します。このプロセスは、セットドレッシングとも呼ばれ、ユーザーに訪れている世界についての直接的および間接的な情報を提供します。たとえば、このセクションのサインや植生の小道具は、開発ポリッシュアセットからのサンプルアートスタイルを強化し、ユーザーにハイテク環境にいることを知らせます。


自分のアセットライブラリを戦闘ポケットに適用するには:
適用可能なプロップや壁、コーナー、ドアフレーム、ドアのモジュラーアセットを左の戦闘ポケットの内側と外側に追加して設定します。

左の戦闘ポケットの外側にある壁コンポーネントを選択し、プロパティウィンドウで色を左のスポーンゾーンのカラーテーマと同じ色合いに設定します。これにより、プレイヤーは主要なレーンや交差レーンを移動する際に、このチームのカラーテーマに対して自分の位置を把握できます。

左の戦闘ポケットの内側にある壁コンポーネントを選択し、プロパティウィンドウで色をユニークな色合いに設定します。これにより、プレイヤーは戦闘ポケット内にいるときに出口を見ながら自分の位置を把握できます。

このプロセスを中央の戦闘ポケットと右の戦闘ポケットに繰り返します。

これらの戦闘ポケットアセットをすべて固定します。
周辺の廊下
前のセクションで戦闘ポケットの外装にアセットライブラリを適用することで、ほとんどの交差レーンには、建物の周囲を構成する廊下を除いて、磨かれたアセットが含まれています。前のセクションと同じカラースキームを使用することに加えて、最終的なサンプルのレーザータグ環境では、壁アセットにデフォルトのオレンジ色を使用して、ユーザーが建物の後ろに対してどこにいるかを知らせています。
例えば、次の画像の視点を使用すると、ユーザーは建物内で自分がどこにいるかを把握するための情報をすぐに得ることができます:
- リブ付きコンクリートは、ユーザーに左に移動すると中央の戦闘ポケットに入ることを知らせます。
- 黄色の壁は、ユーザーに前に進むと建物の後ろと内部の主要なレーンに到達することを知らせます。
- ピンクの壁は、ユーザーに右に移動すると右の戦闘ポケットに入ることを知らせ、マップの右側に最も近いことを示します。

この技術は、サンプルの環境アートアセットライブラリを直接灰色のジオメトリに適用して、壁が元のデザインと正確に一致するようにするだけでなく、ユーザーが敵の火からカバーを提供できるように、クレートプロップアセットの形でジオメトリを追加します。このデザインの反復は、視界の明かりや交戦距離を突き出た廊下のスペースや高低差で分割する意図を尊重しています。

自分のアセットライブラリを周囲の廊下に適用するには:
建物の左側にある周囲の廊下に、適用可能なプロップまたは壁、コーナー、ドアフレームのモジュラーアセットを追加して設定します。

壁のコンポーネントを選択し、プロパティウィンドウで色を左のスポーンゾーンのカラーテーマと同じ色合いに設定します。

建物の後ろにある周囲の廊下に、適用可能なプロップまたは壁、コーナー、ドアフレームのモジュラーアセットを追加して設定します。

壁のコンポーネントを選択し、プロパティウィンドウで色をユニークな色合いに設定します。これにより、プレイヤーは自分が内部の主要なレーンに対してどこにいるかを把握できます。サンプルゲームでは、これらのアセットはデフォルトの色のままです。
建物の右側にある周囲の廊下に、適用可能なプロップまたは壁、コーナー、ドアフレームのモジュラーアセットを追加して設定します。

壁のコンポーネントを選択し、プロパティウィンドウで色を右のスポーンゾーンのカラーテーマと同じ色合いに設定します。

これらの周囲の廊下アセットをすべてアンカーします。
ドア
最終的なサンプルのレーザータグ環境では、ドアがグレーボックスのジオメトリに直接適用されており、元のデザインと正確に一致していますが、すべての出入り口にドアアセットがあるわけではありません。自分のゲームの要件によっては、戦闘ポケット内の戦闘を制御する方法に応じて、ドアの数が多すぎたり少なすぎたりすることがあります。ドアが多いと、ユーザーが戦闘ポケットに入ったり出たりするまでの待機時間が長くなることが多いですが、ドアが少ないと望ましくない視界が開かれる可能性があります。
このため、さまざまなバリエーションでプレイテストを行い、異なるプレイスタイルを試すことをお勧めします。実際、ドアのアセットを戦闘ポケットに配置し、ドアの片側からのみユーザーが開けられるようにしたり、全く開かないようにしたりすることも試すことができます。
自分のアセットライブラリをドアに適用するには:
戦闘ポケットの出入り口に、任意のドアモジュラーアセットを追加して設定します。

- オプションこれらのドアアセットをすべてアンカーします。
外部アセット
外部アセットの元のグレーボックスデザインは、ユーザーが外部の主要なレーンを移動する際に敵の火からのカバーを提供するオブジェクトのプレースホルダー位置を設定することでした。これは、ユーザーが階段を上ったり下ったりする際、中央の戦闘ポケットを横断する際、または屋外の空間に存在する際に、何が役立つかを視覚化するのに役立ちましたが、環境を構築する際には、これらのカバーオブジェクトに異なる用途を提供することでこのデザインを改善できます。
以下のセクションでは、これらの初期プレースホルダーアセットを、ゲームのアートスタイルに従った美的に魅力的なオブジェクトに変換する方法についてのガイダンスを提供し、元のデザインの意図を維持します。
塔
屋外スペースに変換できる最初の外部アセットは、中央の戦闘ポケットのすぐ外側にある2つの塔で、外部の主要なレーンと交差しています。このセクションの技術は、視覚的に魅力的なオブジェクトを作成するだけでなく、ユーザーに環境内でのスケール感を提供するオブジェクトを作成します。これまでの他のオブジェクトはすべてユーザーのキャラクターのサイズに近いですが、これらの塔はそれとは異なり、建築や全体の島の背後にあるストーリーに興味を引くことができます。
自分のアセットライブラリを塔に適用するには:
ブロックパーツを使用して、プレイヤーよりもはるかに大きな塔を作成し、環境内でのスケール感を提供します。

ゲームのアートスタイルに応じて、異なるブロックパーツにユニークな色と素材を適用します。

この塔を複製し、マップ上の対称的な位置に配置します。

これらのパーツをすべてアンカーします。
コラム
屋外スペースに変換できる2番目の外部アセットは、後でこのチュートリアルで作成するオーバーハング部分を支える2つのコラムです。塔と同様に、このセクションの技術は、視覚的に魅力的なオブジェクトを作成するだけでなく、ユーザーに全体の環境内での位置を示すさらなる視覚的手がかりを提供します。たとえば、各コラムにはミントまたはカーネーションピンクのディテールがあり、ユーザーが自分のスポーンゾーンまたは敵のスポーンゾーンに最も近いかを知らせます。
ブロックおよびウェッジパーツを使用して、建物の屋根を支えるコラムを作成します。

ゲームのアートスタイルに応じて、異なるパーツにユニークな色と素材を適用します。

このコラムを複製し、マップ上の対称的な位置に配置します。

- オプション各コラムの1つのパーツの色を、各チームのそれぞれのカラーテーマに合わせて変更します。
これらのパーツをすべてアンカーします。
プランター
屋外スペースに変換できる最後の外部アセットは、外部の主要なレーン全体に延びる8つのプランターです。ソリッドモデリング操作を使用して、各プランターのベースを形成するためにパーツを否定して結合し、その後、異なる素材、植物、またはトリムアセットの構成を使用してアセットライブラリを適用し、各プランターが3D空間でユニークに感じられるようにします。
最も左側のプランターにアセットライブラリを適用するには:
最も左側のプランターに以下のブロックパーツを追加して設定します:
パート サイズ CFrame.Position プランター外部 20, 11, 5 -15, 4.5, 257.5 ディボット 18.5, 1, 4 -15, 9.75, 257.5 
ディボットパーツを選択します。
スタジオのモデルタブツールバーに移動し、否定ボタンをクリックします。パーツが半透明になります。

否定されたパーツとプランター外部パーツの両方を選択します。
スタジオのモデルタブツールバーでユニオンボタンをクリックします。否定されたパーツが重なったプランター外部パーツから切り取られます。

ユニオンを選択し、プロパティウィンドウで、
- 色を181, 173, 156に設定します。
- 素材をコンクリートに設定します。
- 素材バリアントをConcrete_Board_Formed_Aに設定します。
- UsePartColorを有効にします。

プランターの土とエッジングのために以下のブロックパーツを追加して設定します:
パート サイズ CFrame.Position CFrame.Orientation 色 素材 素材バリアント 土 19, 0.5, 4 -15, 9.25, 257.5 0, 0, 0 248, 248, 248 LeafyGrass Moss_Lumpy_Stones_A 上部プランターエッジング 1.652, 1, 6.483 -24.838, 5.298, 257.741 0, 0, 0 181, 173, 156 コンクリート Concrete_Tie_Holes_A 下部プランターエッジング 6.483, 1.5, 19.652 -15.154, 1.479, 257.758 0, 0, -21.62 181, 173, 156 コンクリート Concrete_Tie_Holes_A 
プランターの上部に植物アセットを追加して、屋外スペースにより有機的な生命を加えます。

これらのパーツと植物アセットをすべてアンカーします。
ソリッドモデリングツールの使い方を学んだので、異なる外観、素材、植物の種類、トリムパーツを持つプランターのタイプを作成する実験を行うことができます。たとえば、最終的なサンプルのレーザータグ環境内の他のプランターのバリエーションは、'L'字型を作成したり、ブロックパーツと白いトリムを重ねて、マップの中央に高いカバーを提供したりします。



屋根
元のグレーボックスデザインには、建物の屋根が含まれていませんでした。なぜなら、それが進捗を見えなくしてしまうからです。しかし、建物の内部が完成し、光源の設定を除いて、アセットライブラリを新しいジオメトリに適用して建物を完成させ、ユーザーに屋外スペースからの避難所を提供できます。
建物の屋根は、最終的なサンプルのレーザータグ環境で最も複雑なアセットの1つです。なぜなら、複数の層が互いに、そして内部のジオメトリと適合する必要があるからです。以下の指示では、最上層のジオメトリから屋根の周囲を囲む最終的なトリム層まで、各層を構築する方法を説明します。

スカイライト
屋根の最上層はスカイライトのジオメトリです。この層の目的は、屋外の光を内部の戦闘エリアに提供することです。
自分のアセットライブラリを天窓に適用するには:
建物の天井に任意のスカイライトモジュラーアセットを追加して設定します。これにより、戦闘エリアにグローバルな照明が入り、プレイヤーにより豊かな没入感を提供します。

ブロックパーツを使用して、いくつかの天窓用のガラスを作成します。
天窓にブロックパーツを追加して配置します。

パーツを選択し、プロパティウィンドウで、
- 色を 105, 162, 172 に設定します。
- 素材をネオンに設定します。
- 透明度を 0.6 に設定します。

これらの天窓アセットをすべて固定します。
天井
屋根の第2層は、ユーザーが建物の内部を移動する際に視界の上部に見える天井のジオメトリです。この層の目的は、各壁アセットの上部トリムの間のオープンスペースを埋めることです。
屋根の天井に自分のアセットライブラリを適用するには:
ブロックおよびウェッジパーツを使用して、天窓の周りのオープンスペースを埋めます。

これらのパーツを選択し、プロパティウィンドウで、色、素材、および/または素材バリアントを、環境内の他の表面とは異なる視覚的処理を適用する値に設定します。これにより、プレイヤーはカメラを素早く動かすときに自分の位置を把握しやすくなります。
これらの天井アセットをすべて固定します。
上部屋根
屋根の第3層は、上部屋根のジオメトリです。この層の目的は、ユーザーが屋外スペースから建物を見たときに見える最外層の屋根エリアにボリュームを提供することです。また、天窓に深みを加え、建物が内部と外部からより完成されたように見えるようにします。
自分のアセットライブラリを屋根の上部に適用するには:
ブロックおよびウェッジパーツを使用して、天窓を隠さずに天井を覆う厚い層を追加します。この表面は、プレイヤーが屋外スペースから建物を見たときに見ることができるものです。

これらのパーツを選択し、プロパティウィンドウで、色、素材、および/または素材バリアントを、ゲームのアートスタイルに応じた視覚的処理を適用する値に設定します。

これらの上部屋根アセットをすべて固定します。
オーバーハング
屋根の第4層は、建物が構造的に健全であるために柱アセットが支えるオーバーハングのジオメトリです。この層の目的は、ユーザーが外部の主要な通路を移動する際に、視覚的に心地よい庇のスペースを提供することです。
屋根のオーバーハングに自分のアセットライブラリを適用するには:
ブロックおよびウェッジパーツを使用して、柱が支える厚いオーバーハングを追加します。この表面は、プレイヤーが外部の主要な通路を移動する際に、部分的に日差しからのカバーを提供します。

これらのパーツを選択し、プロパティウィンドウで、色、素材、および/または素材バリアントを、ゲームのアートスタイルに応じた視覚的処理を適用する値に設定します。
これらのオーバーハングパーツをすべて固定します。
トリム
屋根の最終層は、屋根の周囲を囲むトリムのジオメトリです。この層の目的は、ユーザーが屋外スペースから部屋を見たときに、各前の層の視覚的な一貫性を提供することです。
自分のアセットライブラリを屋根のトリムに適用するには:
屋根のオーバーハングに沿ってトリムモジュラーアセットを追加して設定します。

これらのパーツを選択し、プロパティウィンドウで色、素材、および/またはMaterialVariantをゲームのアートスタイルに応じた視覚的処理を適用する値に設定します。
これらのオーバーハングパーツをすべて固定します。
余分なジオメトリを削除
建物が完成したので、基盤のグレーボックスジオメトリとベースプレートを削除する時が来ました。このプロセスは、ユーザーが決して見ることも対話することもない余分なポリゴンを削除し、メモリとパフォーマンスを迅速に改善します。特にメモリとグラフィックス処理ユニット(GPU)の制限があるデバイスにとって重要です。さらに、ベースプレートを削除することで、建物が空中に浮くことができ、次のセクションで屋外スペースの地形を彫刻する準備が整います。
余分なジオメトリを削除するには:
エクスプローラーウィンドウで、このチュートリアルの最初のセクションからすべてのグレーボックスジオメトリを削除します。

ベースプレートオブジェクトを削除します。

地形を彫刻する
現在、あなたの環境はプランターの葉を除いてほとんど建築的です。しかし、洗練されたアセットを開発するのサンプルアートスタイルに従うと、3D空間には未来的な技術と豊かな緑の健康的な混合が含まれているべきです。これは、世界が技術の進歩を重視しているが、地球を犠牲にしてはいないことをユーザーに伝えます。
地形エディタを使用すると、迅速に詳細でリアルな地形を生成し、屋外スペースに有機的な生命をもたらすことができます。カスタム素材を作成する際に素材のオーバーライドを設定したため、地形エディタブラシを通じてタイル可能なテクスチャを利用して、苔、花、石の道を追加し、環境の他の部分と調和させることができます。
屋外エリアに自分の地形を適用するには:
ツールバーのホームタブから地形をクリックします。 地形エディタウィンドウが開きます。
編集タブに移動し、描画ボタンをクリックします。
ブラシ設定セクションで、マップに追加したい素材に応じてブラシをカスタマイズします。たとえば、サンプルは次の画像の設定でこのプロセスを開始します。

素材設定セクションで、プレイできないエリアの素材を選択します。たとえば、水やひび割れた溶岩などです。次に、ビューポートでプレイ可能エリアの終わりを描画します。この素材は、屋外スペースのマップの終わりを示します。
素材設定セクションに戻り、プレイ可能エリアの素材を選択します。たとえば、草、舗装、または木の板などです。次に、ビューポートでプレイ可能エリアの開始位置を描画します。この素材は、屋外スペースのマップの開始位置を示します。
地形エディタに戻り、ペイントツールを選択します。
ブラシ設定セクションで、マップに追加したい素材に応じてブラシをカスタマイズし、新しい素材を選択します。
ビューポートで外側のレーンに沿って描画します。この素材は、プレイヤーが屋外スペースを移動する際の主要な道を示します。
**(オプション)**視覚的なバリエーションのために、屋外スペースに適用可能なプロップを追加して設定します。

プレイ可能エリアを囲む
ゲームをプレイテストし、島から離れると、キャラクターはプロジェクトのWorkspace.FallenPartsDestroyHeightに達するまで落下し、チームのスポーンゾーンに再出現します。ユーザーが島から落ちたり、チームに分かれる前に浮遊エリアのスポーンゾーンに早く参加したりできないようにするために、目に見えないバリアでプレイ可能エリアを囲む必要があります。
このセクションの値は、最終的なサンプルレーザータグ環境内の地形に大きく依存します。カスタム地形に応じてバリアに隙間がないことを確認するために、プレイテストを行うことをお勧めします。
ゲーム内のプレイ可能エリアを囲むには:
ブロックパーツを使用して、屋外エリアのプレイ可能エリアを囲みます。これらのパーツがプレイヤーがバリアを飛び越えられないように十分に高く、マップの端から落ちることができる隙間がないことを確認することが重要です。

これらのパーツを選択し、プロパティウィンドウで、
- 透明度を1に設定します。
- 衝突を無効にします。
- 固定を有効にします。
特殊効果を設定する
建物のアーキテクチャと屋外スペースは、アセットライブラリからのアセットでほぼ完成していますが、全体の環境が静的に感じられることに気づいたかもしれません。これは、リアルな環境には、空を横切る雲、緑の中を吹き抜ける風、または空間を移動する生命体など、さまざまなソースからの動きが含まれているためです。
特殊効果を設定することで、環境に動的な動きを追加し、ユーザーに感情を引き起こすことができます。このプロセスは、世界をより生き生きと感じさせ、ユーザーがゲームにアクセスする際の没入感を深めるのに役立ちます。
背景の雲
最終的なサンプルレーザータグ環境が3D空間に動きを追加するために使用する最初の特殊効果は、動的雲と呼ばれる効果です。動的雲は、空をゆっくりと漂うリアルな雲であり、ユーザーから遠く感じられる動きを作成するのに役立ちますが、環境内には存在します。Cloudsオブジェクトを通じてその外観を調整し、独自の雰囲気を作成し、グローバルな風を通じてその方向と速度をカスタマイズできます。


自分の動的雲を背景に追加して設定するには:
エクスプローラーウィンドウで、TerrainオブジェクトにCloudsオブジェクトを追加します。
Terrainオブジェクトにカーソルを合わせ、**⊕**ボタンをクリックします。コンテキストメニューが表示されます。
コンテキストメニューから、Cloudsオブジェクトを挿入します。

Cloudsオブジェクトを選択し、プロパティウィンドウで、
- カバーを0(雲なし)から1(完全な雲のカバー)までの値に設定します。
- 密度を0(軽い、半透明の雲)から1(重い、暗い雲)までの値に設定します。
- 色をゲームのアートスタイルに応じた雲粒子の素材色に設定します。

前景の雲
最終的なサンプルレーザータグ環境が3D空間に動きを追加するために使用する2番目の特殊効果は、パーティクルエミッターと呼ばれる効果です。パーティクルエミッターは、2D画像またはパーティクルを放出し、それらの寿命の間に設定されたプロパティに応じて見え方や動作をします。これは、ユーザーに近い動きを作成するのに役立ちます。
パーティクルエミッターには、微妙な効果と大胆な効果の両方を達成するために調整できる多くのプロパティがあります。以下の手順では、サンプルの環境アート - 構築プレースファイル内で前景の雲を正確に再現する方法を示しますが、ゲームのニーズに応じて任意のプロパティを変更できます。これらの雲は大きく、ゲームプレイスペースと静的な背景の間で穏やかな動きを持たせることをお勧めします。
前景の雲を追加して設定するには:
ユーザーが浮かぶ雲を見る位置にブロックパーツを追加します。
このブロックパーツを選択し、プロパティウィンドウで、
- 透明度を1に設定します。
- 衝突を無効にします。
- 固定を有効にします。
このパーツ内にパーティクルエミッターを作成します。
- エクスプローラーウィンドウで、ブロックパーツにカーソルを合わせ、**⊕**ボタンをクリックします。コンテキストメニューが表示されます。
- コンテキストメニューから、ParticleEmitterを挿入します。パーティクルエミッターは、パーツの領域内で即座にパーティクルを放出します。
このパーティクルエミッターを選択し、プロパティウィンドウで、
色を次の画像のようなカラ―シーケンスに設定します。

光の発生を0.3に設定して、テクスチャの色とその環境をブレンドします。
光の影響を0.2に設定して、環境光がパーティクルの色に微妙な影響を与えるようにします。
向きをFacingCameraWorldUpに設定して、パーティクルが常に空に向かって放出されるようにします。
サイズを100に設定して、大きな雲を作成します。
圧縮を-0.25に設定して、パーティクルを水平方向に縮小します。
テクスチャを雲の画像に設定します。サンプルではrbxassetid://10714362544を使用します。
透明度を次の画像のような数値シーケンスに設定します。

寿命を30に設定して、30秒でパーティクルがフェードアウトします。
レートを0.25に設定して、パーティクルをゆっくり放出します。
加速度を0, -0.8, 0に設定して、パーティクルの速度に影響を与えます。
ドラッグを0.1に設定して、パーティクルの速度が時間とともに見えるようにします。
LockedToPartを有効にして、パーティクルをパーティクルエミッターの近くに保ちます。
このプロセスを繰り返し、環境全体に雲のパーティクルエミッターを移動させます。
さらに、複数のパーティクルエミッターを重ねて、雲に深みを与えることができます。たとえば、最終的なサンプルレーザータグ環境では、前景の雲に色プロパティが248, 248, 248、テクスチャプロパティがrbxassetid://10714433747、レートプロパティが0.1の追加のパーティクルエミッターを重ねています。これらのパーティクルエミッターは、サンプルの環境アートアセットライブラリで見つけることができます。

埃の粒子
パーティクルエミッターは、興味深い視覚効果を作成するためにカスタマイズできる多くのプロパティを提供するため、非常に多用途な特殊効果のタイプです。たとえば、光るポータル、緑の煙、または鮮やかな爆発などです。最終的なサンプルレーザータグ環境では、ユーザーが屋外スペースを移動する際に周囲を囲む浮遊する埃の粒子を作成するために、再びパーティクルエミッターを使用しています。
前景の雲の手順と同様に、以下の手順では、サンプルの環境アート - 構築プレースファイル内で埃の粒子を正確に再現する方法を示しますが、ゲームのニーズに応じて任意のプロパティを変更できます。パーティクルの速度を遅く保ち、環境内で微小な動きを提供することをお勧めします。
屋外スペースのために埃の粒子を追加して設定するには:
島全体を覆うブロックパーツを環境に追加します。
このブロックパーツを選択し、プロパティウィンドウで、
- 透明度を1に設定します。
- 衝突を無効にします。
- 固定を有効にします。
このパーツ内にパーティクルエミッターを作成します。
- エクスプローラーウィンドウで、ブロックパーツにカーソルを合わせ、**⊕**ボタンをクリックします。コンテキストメニューが表示されます。
- コンテキストメニューから、ParticleEmitterを挿入します。パーティクルエミッターは、パーツの領域内で即座にパーティクルを放出します。
このパーティクルエミッターを選択し、プロパティウィンドウで、
色を192, 241, 255に設定して、パーティクルに淡い青色の色合いを与えます。
サイズを次の画像のような数値シーケンスに設定します。

テクスチャを埃の粒子の画像に設定します。サンプルではrbxassetid://14302399641を使用します。
透明度を次の画像のような数値シーケンスに設定します。

ZOffsetを-5に設定して、パーティクルをカメラから遠ざけます。
寿命を1, 10に設定して、パーティクルの最小および最大の年齢をそれぞれ1秒と10秒に設定します。
レートを50000に設定して、環境に多くのパーティクルを作成します。
回転速度を-60に設定して、新しく放出されるパーティクルの速度の範囲を作成します。
速度を1, 5に設定して、パーティクルの最小および最大速度をそれぞれ1および5スタッド毎秒に設定します。
加速度を1, -1, 1に設定して、パーティクルの速度に影響を与えます。
LockedToPartを有効にして、パーティクルをパーティクルエミッターの近くに保ちます。
照明ソースを設定する
環境に動きが加わったので、環境を構築する最終ステップは照明ソースを設定することです。スタジオは、2つの高レベルの照明ソースタイプを提供します:
- グローバル照明 - 屋外環境全体の照明を生成します。
- ローカル照明 - ゲーム内で配置した場所の周囲の照明を生成します。
両方の照明ソースは重要であり、ゲームには屋内と屋外の環境があり、ユーザーが戦闘中に周囲で何が起こっているかを見る能力に影響を与えます。
グローバル照明
グローバル照明は、ゲーム内の太陽または月からの光です。Lightingサービスのいくつかの主要なデフォルトプロパティを調整することで、その光がユーザーにどのように見えるか、またゲーム内に配置した他のオブジェクトとどのように相互作用するかを劇的に変えることができます。
スタジオは、Soft照明でゲームを開始し、柔らかい光と影でフラットな外観をレンダリングします。しかし、環境を強化し、ローカル光源が正確な影と照明を生成できるようにするためには、Realistic照明を有効にする必要があります。これにより、グローバル照明とローカル照明が連携して、よりリアルで没入感のあるビジュアルを提供します。
たとえば、Realistic照明スタイルは、ユーザーが内部または外部の空間にいると自動的に検出し、適切な照明モデルを有効にします。これにより、反射が建物内の床や天井に反射し、ユーザーが戦闘ポケットを移動する際により豊かな視覚的ゲームを提供します。
自分のグローバル照明を設定するには:
エクスプローラーウィンドウで、Lightingサービスを選択し、プロパティウィンドウでそのプロパティをゲームのアートスタイルを反映する値に設定します。これらのプロパティの詳細については、グローバル照明を参照してください。

エクスプローラーウィンドウで、Lightingサービスの子Atmosphereオブジェクトを選択し、プロパティウィンドウでそのプロパティをゲームのアートスタイルを反映する値に設定します。これらのプロパティの詳細については、大気効果を参照してください。

ローカル照明
ローカル照明は、ゲーム内のローカル光源からの光です。たとえば、SpotLight、SurfaceLight、およびPointLightオブジェクトなどです。ゲームのニーズを分析して、どのタイプのローカル光源を使用するかを知ることが重要です。たとえば、最終的なサンプルレーザータグ環境では、ユーザーが戦闘中に建物内のさまざまなエリアを見るのを助けるための照明が必要です。また、異なるスポーンゾーンエリアを区別するための照明も必要です。
ローカル光源は、ユーザーにとっての参照点と方向性を作成します。たとえば、サンプルでは、ユーザーが周囲を移動しているか、青緑またはピンクのスポーンゾーンの近くにいるかを知らせるためにサーフェスライトを使用し、ドアを強調するためにスポットライトを使用しています。

自分のローカルライティングを設定するには:
建物内を移動するユーザーに方向を示すために、周囲の廊下の周りに光るライトを追加して設定します。
- 周囲の廊下の上部近くにブロックパーツを追加して配置し、次にプロパティウィンドウで、
- 色を明るい色に設定します。
- 素材をネオンに設定します。
- 固定を有効にします。
- エクスプローラーウィンドウで、そのパーツにSurfaceLightオブジェクトを追加します。
- パーツの上にカーソルを置き、**⊕**ボタンをクリックします。コンテキストメニューが表示されます。
- コンテキストメニューからSurfaceLightオブジェクトを挿入します。
- SurfaceLightオブジェクトを選択し、次にプロパティウィンドウで、
- 色を明るい色に設定します。
- 面を光を照らしたい方向に設定します。
- 範囲を光が届く距離を反映する値に設定します。
- このプロセスを繰り返し、光る周囲のライトを完成させるためにパーツを配置して向きを調整します。

クロスレーンを照らす小さな廊下の内部ライトを追加して設定します。
- クロスレーンの廊下の上部近くにブロックパーツを追加して配置し、次にプロパティウィンドウで、
- 色を明るい色に設定します。
- 素材をネオンに設定します。
- 固定を有効にします。
- エクスプローラーウィンドウで、そのパーツにSpotLightオブジェクトを追加します。
- パーツの上にカーソルを置き、**⊕**ボタンをクリックします。コンテキストメニューが表示されます。
- コンテキストメニューからSpotLightオブジェクトを挿入します。
- SpotLightオブジェクトを選択し、次にプロパティウィンドウで、
- 角度を光を照らしたい角度を反映する値に設定します。
- 面を光を照らしたい方向に設定します。
- 範囲を光が届く距離を反映する値に設定します。
- このプロセスを繰り返し、ドアや廊下の上にパーツを配置して向きを調整し、内部の照明に満足するまで続けます。

スポーンゾーンのライトを追加して設定します。
- 左側のスポーンゾーンのサイズのブロックパーツを追加し、スポーンゾーンの天井の上に配置します。
- プロパティウィンドウで、
- 色をマップの左側のチームのカラーテーマに設定します。
- 素材をネオンに設定します。
- 固定を有効にします。

- 右側のスポーンゾーンについてもこのプロセスを繰り返します。

- オプション自分のアセットライブラリから建物の内部と外部にライトフィクスチャを追加して固定します。

環境の見た目と雰囲気に満足したら、アセットとスタジオの設定を構成して、低スペックデバイスでもフレームレートとパフォーマンスレベルを高く保つことができます。このプロセスにより、ほぼすべてのユーザーが環境を表示しているときに同じゲームプレイと視覚体験を得ることができます。
