Hello World / plɹoM ollǝH

Programmers Live in Vain

2020年 PhysXサンプルを動かす in VS2019

できらぁ!

1. gihubからPhysXsdkを丸ごと落とす

github.com

2. DirectX SDKインストール

次に、驚くべきことに、PhysXのサンプルでは未だにDirectX9のsdkを要求されるので、Microsoft DirectX SDK June 2010を落としてインストール

Visual Studio 2010の再頒布パッケージを先にインストールしているとエラーが出るので先にアンインストールしておく

www.microsoft.com

3. cmakeインストール

cmake.org

4. Visual Studio 2019向けの sln を作る

落としてきたサンプルのphysxフォルダにgenerate_projects.batがあるので叩く、どの環境用のプロジェクトを生成したいのか聞かれるので、該当の番号を入力してEnter

(Visual Studio2019 で 64bit Windows なら vc16win64)

出来上がったslnをvisual studioで開く

\physx\compiler\vc16win64\PhysXSDK.sln

5. ビルドエラーを直す

以下の2つの対処を SamplePlatform と SampleRenderer それぞれのプロジェクトに対しておこなう

A. DirectXSDKを参照しているプロジェクトにIncludeパスを通す

プロジェクト設定を開いて、「すべての構成」を選んだら「追加のインクルードディレクトリ」に DirectXSDK の Includeフォルダのパスを追加する

f:id:dungeonneko:20200412170856p:plain
普通にインストールしていたら「C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include」になっていると思われる

B. 「警告をエラーとして扱う」を「いいえ」に

VS2019では、デストラクタにvirtualを付けてなかったりの警告がエラーになっていたので

f:id:dungeonneko:20200412171003p:plain

これでビルドが通るはず

あとはSamplesプロジェクトを右クリックして「スタートアッププロジェクトに設定」して、実行すればよい

f:id:dungeonneko:20200412171647p:plain
操作方法やサンプルの切替方法についてはHキーで確認できる

ちなみにマルチスレッドDLLでビルドするか等の切り替えは、physx\buildtools\presets\public 以下のxmlを書き換えればよいっぽい

ので、変更の後は再度generate_projects.batを叩く必要がありそうだ

↓詳しくはここ

gameworksdocs.nvidia.com