Table of Contents

レンダーテクスチャー

中級 デザイナー プログラマー

レンダーテクスチャーを使うと、カメラのビューをテクスチャーに送り、そのテクスチャーをシーン内のオブジェクトに適用することができます。例えば、防犯カメラの映像のように、同じシーン内のテレビ画面にシーンの一部を映すことができます。

API の詳細については、テクスチャーとレンダーテクスチャーを参照してください。

1. 追加のカメラスロットを作成する

カメラスロットは、グラフィックスコンポジターをシーン内のカメラに結びつけるために使われます。新しいカメラを使うには、まずカメラスロットを追加する必要があります。カメラスロットの詳細については、カメラ スロットを参照してください。

  1. アセットビューで、グラフィックスコンポジターアセットをダブルクリックします。

    Graphics Compositor asset

    すると、グラフィックスコンポジターエディターが開きます。

    Graphics Compositor editor

  2. 左ペインの Camera slots の横にある 緑のプラスボタン追加)をクリックします。

    Camera slots

    Game Studio は、新しいカメラスロットを追加します。

    Tip

    カメラスロットの名前を変更するには、Camera slots 内のカメラスロットをダブルクリックして、新しい名前を入力します。

    Name a camera slot

2. カメラを作成しスロットにバインドする

  1. シーンで、カメラにするエンティティにカメラコンポーネントを追加します。

    Add camera component

  2. テクスチャーにレンダリングしたい範囲がカメラに映るように、エンティティを配置します。

  3. プロパティグリッドで、カメラコンポーネントにチェックを入れて有効化します。

    Enable camera component

  4. カメラコンポーネントSlot プロパティで、前の手順で追加したカメラスロットを選択します。

    Select camera slot

3. レンダーターゲットテクスチャーを作成する

アセットビューで、[Add asset] をクリックし、Texture > Render target を選択します。

Add render target

Game Studio は、プロジェクトのアセットにレンダーターゲットテクスチャーを追加します。

Render texture

4. レンダーターゲットテクスチャーをシーンに配置する

レンダーターゲットテクスチャーには、いろいろな使い方があります。

例 1:レンダーターゲットテクスチャーをマテリアルで使用する

  1. マテリアルを選択し、プロパティグリッドShading > Diffuse map の横にある Blue arrow button置換)をクリックし、Texture を選択します。

    Select texture

  2. Hand iconアセットの選択)をクリックします。

  3. レンダーテクスチャーアセットを選択して [OK] をクリックします。

    Select render frame

例 2:レンダーターゲットテクスチャーをスプライトコンポーネントで使用する

  1. エンティティを作成し、テクスチャーを表示したい場所に配置します。

  2. エンティティを選択した状態で、プロパティグリッドで [Add component] をクリックし、スプライトコンポーネントを追加します。

    Add sprite component

  3. スプライトコンポーネントのプロパティで、Source の横にある Blue arrow button置換)をクリックし、Texture を選択します。

    Select sprite source

  4. Hand iconアセットの選択)をクリックします。

    すると、Select an asset ウィンドウが開きます。

  5. レンダーテクスチャーアセットを選択して、[OK] をクリックします。

    Select render frame

  6. テクスチャーを半透明にしたくない場合は、Source > Is transparent のチェックボックスをオフにします。

    Clear-is-transparent

5. グラフィックスコンポジターをセットアップする

レンダーテクスチャーをシーンに表示するには、少なくとも2つのレンダラーが必要です。

  • メインカメラをレンダリングするレンダラー
  • レンダーテクスチャーへ2番目めのカメラをレンダリングするレンダラー

このセクションでは、2台のカメラと2台のレンダラーを使って、これを最初から行う最も簡単な方法を説明します。お使いのパイプラインによっては、別のセットアップが必要になるかもしれません。

Warning

以降の手順では、Game エントリポイントの既存のレンダラーを削除します。後でパイプラインを復元したいときのために、プロジェクトのバックアップを取っておくとよいでしょう。

  1. グラフィックスコンポジターエディターで、Entry points ノードを選択します。

    Entry points node

  2. プロパティグリッドで、Game renderer の横にある Blue arrow button置換)をクリックし、既存のレンダラーを削除するために None を選択します。

    Cleared game renderers

  3. Blue arrow button置換)をクリックし、SceneRendererCollection を選択します。

    Select scene renderer collection

    これで、エントリポイントに複数のレンダラーを設定することができるようになりました。

1. メインカメラをレンダリングする

  1. Game rendererChildren の横にある Green plus button追加)をクリックし、Camera Renderer を選択します。

    Select camera renderer

  2. Camera の横にある Blue arrow button置換)をクリックし、ゲームのメインカメラを選択します。

    Select main camera

  3. Child で、ゲームのメインカメラ用のレンダラーを選択します(例:Forward renderer)。

    Select forward render

2. テクスチャーをレンダリングする

  1. Game rendererで、Add to Children の横にある Green plus button追加)をクリックし、Camera Renderer を選択します。

    Select camera renderer

    Game Studio は、Children のリストにカメラレンダラーを追加します。

    Second camera renderer

  2. 2番目のカメラレンダラーを展開します。

    Expand second renderer

  3. Camera の横にある Blue arrow button置換)をクリックし、テクスチャーにレンダリングしたいカメラを選択します。

    Select texture camera

  4. Child の横にある Blue arrow button置換)をクリックし、RenderTextureSceneRenderer を選択します。

    Select render texture scene renderer

  5. RenderTextureSceneRenderer で、Child の横にある Blue arrow button置換)をクリックし、ゲームのメインカメラ用のレンダラーを選択します(例:Forward renderer)。

    Select forward renderer

  6. Render texture の横にある Hand iconアセットの選択)をクリックします。

    すると、Select an asset ウィンドウが開きます。

  7. レンダーテクスチャーアセットを選択し、[OK] をクリックします。

    Select render texture

    Game Studio は、レンダラーにレンダーテクスチャーを追加します。

    Render texture added

これで、テクスチャーにカメラをレンダリングできるようになりました。

レンダーマスクを設定する

レンダーマスクを使って、レンダーテクスチャーにレンダリングされるグループ(レンダーグループ)をフィルタリングすることができます。

Render Mask の横にある [Change values...] をクリックして、カメラに映したいレンダーグループを選択します。

Render mask

詳細については、レンダーグループとレンダーマスクを参照してください。

サンプル

テクスチャーにレンダリングするプロジェクトの例として、Stride に同梱されている Animation サンプルを参照してください。

関連項目