ダレ向けか分からないけれどもTipsとして。
Solidworks2012という大分古いバージョンを欺し欺し使っているんですが、むかーしはVMWareでもHWアクセラレーション効いてたような気がするんですが、いつのまにかソフトウェアOpenGL強制になってました。
あんまり使ってなかったんですが、最近また使うようになり、さすがにソフトウェアOpenGLが辛くなってきたのでなんとかならんかと調べてみたところ、レジストリ書換で対応できる様です。
Solidworks自体が対応グラフィックカード名のリストを決め打ちで持っていて、VMwareFuisonはそのリストに無いからOpenGLが使えない…という寸法。
因みに、新しいSolidworksだとVMWareFuison対応を正式に表明してるんで、多分最初からちゃんと動くんじゃ無いかな…。
OpenGL有効化の手順
以下のキーからVendor/Rendererの文字列をコピーしておく。
Fusion11だと “SVGA3D; build: RELEASE; LLVM;” って名前でした。
[HKEY_CURRENT_USER\Software\SolidWorks\SolidWorks 2012\Performance\Graphics\Hardware\Current]
さらに、以下のキー位置で、先ほどのVendorの文字列を探す。無ければ新規に作る。”VMware, Inc.”なら既に有るはずなんだけど。
[HKEY_CURRENT_USER\Software\SolidWorks\SolidWorks 2012\Performance\Graphics\Hardware]
今度はそのキー内に、さらにRendererの文字列でキーを作成する。
Solidworks2012だとGalliumっていうlinuxのVMWare用のドライバ名しか入ってない。
さきほどのキー内に、”Workarounds”という名前でDWORD値を作成し、値を 0x4000480 と設定。
DWORD値はグラフィックチップによって違うみたいで、Mac側のチップセットにも依存するかも知れません。他のドライバの値見ながら試してみて下さい、としか言えない。
ここまで設定したら、めでたくハードウェアアクセラレーション有効に。
あと、レジストリ書換でRealViewも有効化できます。
RealViewの有効化手順
以下のキー位置に、CurrentからコピーしたRendererの文字列でキーを作成。
[HKEY_CURRENT_USER\Software\SolidWorks\SolidWorks 2012\Performance\Graphics\Hardware\Gl2Shaders\Other]
そのキー内に、”Workarounds”という名前でDWORD値を作成し、値を 0x40000 と設定。
RealViewのほうは、MBP13(2017)の内蔵グラフィックだと、表示が時々バグるしちょい遅い(でもソフトウェアOpenGLよりは大分早い)ので微妙なところ。
とりあえずOpenGLだけでも使えるようになったんで、かなり快適に。
参考Link
- Solidworksのフォーラム書込みより。https://forum.solidworks.com/thread/86333
- GEFORCEでもREALVEIWを有効にする方法 https://keiorogiken.wordpress.com/2017/12/12/【solidworksを快適に使おう】geforceでもrealveiwを有効にする方法/4/
2021/9/14追記:Solidworks2021でも同じ方法が使えました。Key名が2012から2021になってるだけ。