Lifeisawful / winerosetta

Winerosetta is a library specifically designed for Apple Silicon, WINE, and the 32-bit versions of World of Warcraft (1.12.1, 2.4.3 and 3.3.5a). It works around the limitations of Rosetta 2 by providing support for certain instructions not natively supported.
28 stars 1 forks source link

Very low FPS #4

Open SEBT-ctrl opened 1 month ago

SEBT-ctrl commented 1 month ago

Good afternoon,

I'm so happy with this fix! I finally got able to run it on my Macbook M2 but I seem to be getting max 30fps on lowest settings.

When comparing to the actual classic WOTLK we had a few months back I was getting easy to 70FPS? is it because of the whole work around that it asks so much from the system?

I'm very new to all this so pardon my poor explanation!

Thanks in advance

Lifeisawful commented 1 month ago

Hi,

I am afraid the bottleneck is the graphics pipeline. Based on studying the subreddit /r/macgaming and other GitHub issues that had similar issues with 32 bit software in connection with directx 9. If I understand the underlaying problem correctly it's simply due to several translation layers on top of each other. Directx9 is translated using WineD3D to OpenGL calls. Unfortunately OpenGL has been deprecated with the release of MacOS Catalina. Whatever is in the modern Mac OS is another translation layer that turns those OpenGL calls into metal.

A solution to this would be a modern DirectX9 to Metal translation layer. But as far as I am aware there is none currently.

All the best

SEBT-ctrl commented 1 month ago

Hi,

Does this file work for you? do you have any FPS problems?

Is there no way we can make a work around? I was soooo happy to see it booting and working but 30fps is not really working out to play with. I'm really grateful that you made this so the game actually works already but I was hoping to get it working full power ;)

thanks again!

brokoler commented 1 month ago

Hi,

Apple silicon user with iMac and M1 processor here who tested getting your fix up and running with CrossOver. Thanks for your work, nobody else was able to troubleshoot the compatibility issues between Apple Silicon and older clients yet!

I was really happy to see I could start WOTLK 3.3.5a client without error 132, joining the world after character selection is possible. Sadly there is a big performance hit, the game is unplayable at a resolution of 2560x1440 even with minimal graphic settings in my setup. What works much better is starting the WOTLK 3.3.5a client via Parallels or VMware Fusion sadly. The best setup I achieved so far was using MoP 5.4.8 client, but for sure this is a 64-bit client which works natively without an error in crossover. The issue is the 32-bit architecture with clients up to 3.3.5a.

Would be nice if performance can be increased, but so far the stuttering every second makes it unplayable sadly. Also tested with OpenGL parameters, in that case my screen stayed black.

Lifeisawful commented 1 month ago

Hi once again,

As I previously mentioned this is an issue due to the enormous amount of layers stacked on top of each other. Winerosetta can't and won't fix the performance issue. Someone has to build a translation layer that directly casts directX9 to metal api.