質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

3回答

7678閲覧

Unityでオブジェクトが通常光が当たらない場所まで光が当たってしまう場合の対処法

TsukihiHikaru

総合スコア15

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

1グッド

0クリップ

投稿2021/10/14 05:07

編集2021/10/16 04:13

Unityバージョン 2021.1.24f1
Windows 10 Home
Intel core i7 9700K 3.60GHz
NVIDIA GeForce RTX2080
RAM 16GB

新規で立ち上げた状態からです。
オブジェクトが通常光が当たらない場所まで光が当たってしまいます。
シャドウタイプはソフトシャドウです。

イメージ説明
イメージ説明

https://www.ame-name.com/archives/3513
↑の説明が対処法として一番近いと思うのですが、
バージョン違いの為かそのShadowMapのEnableが見当たりません。

対処法を知っている方はいらっしゃいますでしょうか?
よろしくお願いいたします。

【追記】
オブジェクトのRendererのライティング投影をオンの状態でも変化はありません。
イメージ説明

色々試した結果
イメージ説明
イメージ説明

光が当たるオブジェクトの厚さと影となるオブジェクトの距離によって
光が貫通してしまうことがわかりました。
また、光の位置によっても光が貫通することがわかりました。
(近すぎると光が貫通してしまう)

これは仕様として諦めるしかないのでしょうか?
または何か対策や設定があるでしょうか?
よろしくお願いいたします。

RyuHo👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TsukihiHikaru

2021/10/15 14:13

回答ありがとうございます。 全てを理解して設定を変更して試したわけではありませんが、 思うような結果にはなりませんでした。
guest

回答3

0

ベストアンサー

オブジェクトとシーンビューのグリッドの対比から想像しますに、あの棚はわりと小さいオブジェクトでしょうかね?
だとすると棚の壁面もかなり薄いだろうと予想され、光の貫通が起きやすい条件になっているんじゃないかと思います。

ゲームシーンをもっと大きい縮尺でデザインして、棚をもっと大きくすれば改善するだろうと思うのですが、そういうわけにはいかない事情があるかもしれません。ご質問者さんもお試しのようですが、バイアス設定を調整してみるのがいいかと思います。また、ニアプレーンの位置も光の貫通に影響するでしょう。

図1

他にも、シャドウマップの解像度を上げたりシャドウマップ範囲を抑えることで影の精度をいくらか高められるかもしれません。

図2

投稿2021/10/17 01:50

Bongo

総合スコア10811

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Lightの設定は問題ないかと思います。
同様の設定でオブジェクトとしてCubeを2つ重ねてLightが透過しないかを確認したところ、
オブジェクトのRendererのLightingのCast ShadowをOnにするれば影が表示されLightが透過しませんでした。

スポット光源を2つ配置してみた例です。上側のオブジェクトの影に光は漏れでていません。
イメージ説明

投稿2021/10/14 08:08

編集2021/10/15 00:46
YOshim

総合スコア1085

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TsukihiHikaru

2021/10/14 10:11

回答ありがとうございます。 質問の追記にも書きましたが 光が当たるオブジェクトの厚さと影となるオブジェクトの距離によって 光が貫通してしまうことがわかりました。 これは仕様として諦めるしかないのでしょうか? もしなにか対策や設定をご存じでしたらよろしくお願いします。
YOshim

2021/10/15 00:47 編集

Cast ShadowをOnにするのは光を遮る方のオブジェクトです。 光源のShadow TypeをSoft Shadows or Hard Shadowsとし、オブジェクトのCast ShadowをOnにすれば光が遮られることを確認できました。
TsukihiHikaru

2021/10/15 14:25

度々回答ありがとうございます。 もちろんどちらともCast shadowをOnにしてあります。 光の位置にも影響があるような感じですね。 私の環境がおかしいというわけではないと思いますが、 Windows 10 Home Intel core i7 9700K 3.60GHz NVIDIA GeForce RTX2080 RAM 16GB 現状のUnity上の仕様と今のところ諦めます。 応急処置としてLightの設定のバイアスを下げて対応したいと思います。 ありがとうございました。
guest

0

Lightコンポーネント(Directional LightやPoint Lightゲームオブジェクトについてます)のshadow typeを見てください。
私の場合、no shadows以外に設定すると光が貫通しなくなりました。

投稿2021/10/16 01:31

RyuHo

総合スコア51

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問