(Linux) Wine で Sims2 をプレイする

Wine で Sims2 をプレイするために
Linux 上で 「The Sims2 (ザ・シムズ2)」 をプレイするには、
VirtualBox や VMWare を使って Windows ゲストを作成してその中で動作させるか、Wine を使って実行するかの2通りがあります。

Linux 上でプレイするなら Wine を使うのが一番楽ですが、公式の Wine では、インストールまでは出来ても、実際にプレイしようとすると、D3DERR_INVALIDCALL エラーが出て動作しません。

原因は、Sims2 では頂点シェーダ数を 1024 要求するのに対し、Wine 上の Direct3D では 256 に制限されているため、動作できないと判断されてしまうためです。
なお、実際の Windows 上の DirectX 9.0 では、8192 まで提供されています。

この問題を解決するため、Wine のソースコードにパッチを当ててビルドし、それを使って実行すると、問題なく Sims2 をプレイできます。

[参考 URL]
WineHQ - The Sims 2 Ultimate Edition
WineHQ Bugzilla - Bug 8051
テスト環境
OSArch Linux 64bit
CPUIntel Celeron G3900 2.8GHz
GPU(CPU 内蔵) Intel HD Graphics 510
OpenGL 4.4
手順
Arch Linux 64bit 環境でのビルド方法をメインに紹介していますが、必要なパッケージをインストールしていれば、他のディストリビューションでもほぼ同じ手順だと思います。
32bit 環境だと少し手順が異なります。
なお、2017年4月時点でのビルド方法なので、ライブラリやツールなどのバージョンが変わると、変更箇所が増える可能性があります。

1. Wine のビルド
2. Wine の実行準備
3. Sims2 の起動