ビルドのパブリッシング
エディター機能

トラブルシューティング

本項では Unity を使用する際に良くある問題を解決する方法を説明します。以下では、各プラットフォームは別々に取り扱われます。

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

OSX 10.6.4 の Geforce 7300GT

OSX 10.6.4 の Geforce 7300GT ではマテリアルが正しく表示されないため、デファードレンダリングができません。この問題は、ビデオドライバーの不具合に起因します。

Windows x64 で、スクリプトが NullReferenceException をスローすると Unity がクラッシュします。

Windows hotfix #976038 を適用してください。

スクリプティング

Script opens in default system text editor, even when Visual Studio is set as the script editor

これは、Visual Studio がスクリプトを開くのに失敗したと報告すると発生します。この最も一般的な原因は、起動時にダイアログを表示してユーザーからの入力を要求する外部プラグイン (Resharper など) です。 これが Visual Studio がスクリプトを開くのに失敗したと報告する原因になります。

グラフィックス

低フレームレートと視覚的なアーティファクト

ビデオカードドライバーが最新のものでない場合、発生することがあります。カード販売会社から配布されている正式な最新のドライバーを使用してください。

シャドウ

  • 影には特定のグラフィックスハードウェアのサポートが必要です。詳細は、ライトのパフォーマンスページ を参照してください。
  • Make sure shadows are enabled in the Quality window.
  • Android と iOS の影には制限があります。ソフトシャドウは使用できません。フォワードレンダリングパスでは、 1 つのディレクショナルライトのみが影を作ります。デファードレンダリングパスでは、投影するライトの数に制限はありません。

投影しない、または影を受けないゲームオブジェクト

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

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

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

ビルドのパブリッシング
エディター機能