Unity の回転と向き
ライト

トラブルシューティング

本項では Unity を使用する際に良くある問題を解決する方法を説明します。以下で各プラットフォームごとに取りあげていきます。

プラットフォーム別トラブルシューティング

OSX 10.6.4 の Geforce 7300GT

  • OSX 10.6.4 の Geforce 7300GT でマテリアルが正しく表示されないため Deferred Rendering が無効化されています。原因はビデオドライバーにバグがあるためです。

Windows x64 のスクリプトで NullReferenceException のときに Unity がクラッシュする

スクリプト

MonoDevelop の Welcome ページを除く方法は?

  • MonoDevelop の Preferences で Visual Style セクションへと移動して “Show welcome page on startup” のチェックを外します。

スクリプトエディターに Visual Studio を選択したのにスクリプトが MonoDevelop で開かれるのはなぜ?

  • VSでスクリプトを開けなかった場合に起こります。原因として最もよくあるのは、外部プラグイン( Resharper など)がスタートアップ時にダイアログをポップアップさせてユーザーに情報の入力をリクエストしているケースです。このような場合、開けなかったという報告が VS からなされます。

グラフィックス

フレームレートが遅かったり画像の乱れがある

  • ビデオカードドライバが最新でない場合に発生することがあります。ビデオカード製造元の最新の公式ドライバを入手してください。

シャドウ

  • シャドウは特定のグラフィックスハードウェアでのみサポートされています。詳細については Light のトラブルシューティングとパフォーマンス を参照してください。
  • シャドウが完全に無効化されていないか 画質設定 を確認してください。
  • Android 、 iOS 上では、シャドウについて次のような制限があります。ソフトシャドウは使用不可能です。またフォワードレンダリングパス( forward rendering path )では、単一方向の光だけがシャドウを投影できます。遅延レンダリングパス( Deferred rendering path )ではシャドウを投影する光の数に制限はありません。

オブジェクトの一部でシャドウ投影しない/されない

シャドウをレンダリングするためには、オブジェクトの メッシュレンダラーReceive Shadows と、他のオブジェクトの Cast Shadows を有効にする必要があります(両方ともデフォルトでは有効)。

不透明なオブジェクトのみシャドウを投影します。つまり内蔵している 透明 シェーダーやパーティクルシェーダーを使用しているオブジェクトはシャドウを投影しません。透明カットアウト シェーダーによりフェンス、植生、その他に利用することがほとんどの場合に可能です。カスタムで記述した シェーダー を使用する場合、ピクセルライティングを使用して サブシェーダータグ を使用する必要があります。頂点ライティング を使用したシェーダーは他のオブジェクトのシャドウは投影されませんが、自身のシャドウは投影することができます。

ピクセルライト のみがシャドウを投影します。もしシーンに他のいくつかライトがあるにも関わらず、ライトがつねにシャドウを投影するようにしたい場合、 フォースピクセル レンダリングモードを設定してください。(詳細は ライト を参照してください)。

Unity の回転と向き
ライト