読者です 読者をやめる 読者になる 読者になる

VR 研究記

3D技術の経験を活かして、VRに挑戦するおっさんの奮闘記

VR美術館の試作にて光源の描画問題ではまった件

VR向けの美術館とは

現在、VR向けの美術館として照明と絵画で演出を工夫しながら考えています。
以下の写真は、開発中のスクリーンショットになります。
f:id:subrutm:20161105055540p:plain

照明としては、2タイプを使っていました。
タイプ1. 全体的に照らす天井の照明
タイプ2. 絵画を照らすための照明

問題点は、ある条件のときにタイプ2の照明が描画されない問題が発生した。
f:id:subrutm:20161105060506p:plain

※表示は、スクリプトで作成しているので、照明の条件はすべて同じです。

解決するには、優先順位を高くしろ!

Lightの設定にある【Render Mode】を【Important】にすると改善します。
f:id:subrutm:20161105061156p:plain

C#スクリプトでは、以下のようにアクセスします。

Lightの構成が、写真の通りだとする。
f:id:subrutm:20161105061817p:plain

using UnityEngine;
using System.Collections;

public class ImageLight : MonoBehaviour {

    // Unity GUIで設定を変更するLightオブジェクト(spotlight)をリンクする
    public Light imageLight;

    // Use this for initialization
    void Start () {
        // Render Modeを変更する [Important (ライトは、常にピクセル単位で描画される)]
        imageLight.renderMode = LightRenderMode.ForcePixel;
    }
}

Light周りで困ったときは、お試しください。