20200814のUnityに関する記事は2件です。

UnityでのLiDARセンサー対応端末判定について

何がしたいのか

現状iPadPro2020モデル、iPhone12ProMax(予定)のみ搭載のLiDARセンサーの搭載有無判定をUnityで判定したい
備忘録となります。

実装方法

ARFoundation3.5以降から実装されているARMeshManagerではLiDARセンサーを使用して環境スキャンを行うことで現実空間のメッシュを生成しています。
よって、ARMeshManagerが使用できるかどうかでLiDARセンサー有無が判定できます。

CheckSupport.cs
using UnityEngine;
using UnityEngine.XR;
using UnityEngine.XR.ARFoundation;

public class CheckSupport : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        var activeLoader = LoaderUtility.GetActiveLoader();
        if (!(activeLoader && activeLoader.GetLoadedSubsystem<XRMeshSubsystem>() != null))
        {
            //LiDAR端末でない時の処理
        }
    }
}

まとめ

LiDARセンサー有無も問題なく取れます

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

UnityでLightingがうまくいかないときのトラブルシューティング

はじめに

こんにちは、ZeniZeniです。
最近はVRChatなりClusterなりが有名になり、Unityを使ってワールドを作る人が増えていると思います。
そんなワールドづくりには必須の工程、LightのBakeがあります。
ただこの工程割と躓くポイントが多いと思います。(影がBakeされなかったり特定のオブジェクトだけLightがBakeされなかったり…)
この記事ではその躓きポイントというか気をつけるポイントをまとめてみました。

またこの記事ではLightingの最適化に関わる話はしません。
影の描画方法(ShadowMaskとかSubtractiveとかの)や反射光については別記事を参照してください。

確認場所

今回はUnity2019.4を用いて説明します。
異なるバージョンだと設定項目の名前や場所が変わっていると思いますので気をつけてください。

Lightingウィンドウ

Unity EditorのWindow->Rendering->Lighting Settingsから開くことができます。
環境光の調整や、LightのBakeをどれくらいの精度で行うかの設定をします。

ここのMixedLightingの設定がオフになっているとBakeができません。すぐにオンにしましょう。
ここがオフになっていると、LightコンポーネントのModeでBakedやMixedが下図のように選択できない状態になっています。
image.png

Qualityウィンドウ

Unity EditorのEdit->Project Settings->Qualityから開くことができます。
リアルタイムに描画するライトの数や影の描画方法、精度を設定します。

Lightコンポーネント

光源です。

ここのmodeがMixedかBakedになっているか確認してください。なっていないとBakeができません。
またShadow TypeをHard ShadowsかSoft Shadowsにしてください。No Shadowsになっていると影がBakeされません。
(光だけならNo ShadowsでもBakeされます。)

MeshRendererコンポーネント

光や影を受ける物体です。

ここのLighting項目で、Cast ShadowsをOffにしているとこの物体の影が生成されません。Onにしましょう。
またReceive Shadowsをオンにしないと影がこの物体にBakeされません。オンにしましょう。

fbx Import Settings

Projectウィンドウのfbxファイルを選択するとInspectorに表示されます。

これ一番気づきにくいと思うんですが、ここのGenerate Lightmap UVsをオンにしないとこのfbxを使っている物体に光も影もBakeできません。Realtimeのライトの影響は受けるのがほんと紛らわしいんですよね。

Lightトグル


これはSceneビューだけの影響ですが、ここのトグルがオフになっているとSceneビューではLightの影響を受けない画面になります。
まだLightのBakeを一度もしてない場合は光に当たっていないところは真っ暗で作業しにくいので、オフにしておくと便利です。

おわりに

とりあえず僕が思いつく限りのことを書いてみました。
もしかしたら他にも原因はあるかもしれません。
もしありましたら編集リクエストかコメントを飛ばしてくださると嬉しいです。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む