ウーパの手習い

私的開発メモ用途なのでご容赦ください。2020年現在はSwiftとUnityでARのお勉強中。

Substance Painterインストール後の警告パネル

Windows マシンに Substance Painter をインストール後の最初の起動時に、以下の警告文(GPUトラブルシューティング)パネルが表示されることがあります。

f:id:uuupacom:20180502184942p:plain

この警告パネルへの対応は公式サポートサイトに記載されています。

GPU drivers crash with long computations - Substance Painter - Allegorithmic Documentation

Windowsレジストリ変更作業が必要になりますので、やや慎重な作業となりますが、作業自体はすぐ終わります。本記事は、上記サポート記事に沿ってWindows 10 pro環境での対応作業時のスクリーンショットを掲載しておきます。

 何を警告しているのか

警告パネルを再掲:

TDR Issue
Your current TDR (Timeout Detection Recovery) is too low.

The TDR is a Windows mechanism built to detect and recover from situations in which the computer can freeze and require a reboot.
Substance Painter's heavy use of the GPU can trigger this mechanism when computing complex operations., leading to a crash.

We strongly recomment do modyiy the TDR value, otherwise we can't ensure the stability of the application.
To help you with this process, we've put together a simple step-by-step guide.

Windowsは、レンダリングGPU処理のせいでシステムがロックしてしまわないように、GPU処理に指定秒数(デフォルトでは2秒)以上の時間がかかった場合、OS側で強制的にGPUドライバをkillするように設定されています。GPUドライバがkillされたタイミングでソフトウェア(この場合Substance Painter)も強制終了してしまうことになります。

その状態だと、Substance Painterを安定して使えないので、上で紹介した公式サポート記事では、レジストリキーを追加&編集することによって、その待ち時間をデフォルトの2秒から60秒ぐらいに増やしておいた方がいいですよ~と解説してくれています。

ということで、公式サポート記事の通りにWindowsレジストリ編集をしていきましょう。

 レジストリTDR値の編集方法

キーボードのWindowsキーとRキーを押して「ファイル名を指定して実行」ウィンドウを表示し、"regedit"と入力してOKボタンをクリックする。

f:id:uuupacom:20180502184952p:plain

レジストリエディター画面が開くので、左ペインの HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers をクリック選択する。

f:id:uuupacom:20180502185005p:plain

 左ペインでGraphicsDriversを選択した状態で、右ペインを確認する。私の場合、TdrDelayという項目が存在していなかったので、右ペイン内の空白上で右クリックし、新規>DWORD (32ビット) 値(D)を選択し、名前を"TdrDelay"に設定する。

f:id:uuupacom:20180502185021p:plain

 作成した"TdrDelay"をダブルクリックする。

f:id:uuupacom:20180502185032p:plain

 編集パネルが開くので、表記を「10進数(D)」にし、値のデータ(V)を120(秒)とする。
※公式サポート記事では値を60(秒)にすると推奨されていますが、私のマシンがハイスペックなこともあり、記事末尾にも、60(秒)でも駄目ならさらに余裕を持たせて120(秒)にしても良いと書かれているので120としています。

f:id:uuupacom:20180502185043p:plain

 次に"TdrDdiDelay"というキーを作成していきます。私の場合はこのキー存在していなかったので、同じ要領で、右ペイン上で右クリックして、新規>DWORD (32ビット) 値(D)を選択し、名前を"TdrDdiDelay"に設定し、できたTdrDdiDelayキーをダブルクリック。同様に10進数、値を120に設定します。

f:id:uuupacom:20180502185055p:plain

 下のような状態になりますので、レジストリを反映させるためにPCを再起動します。

f:id:uuupacom:20180502185105p:plain

再起動後、Substance Painterを起動してください。GPUトラブルシューティングの警告パネルはもう表示されなくなっているはずです。

以上です。

 

参考記事:

GPU drivers crash with long computations - Substance Painter - Allegorithmic Documentation