DFHack / stonesense

A retro isometric visualizer for Dwarf Fortress
https://github.com/DFHack/dfhack
Other
370 stars 54 forks source link

Make it work with PRINT_MODE ≠ 2D on macOS #80

Open rdbisme opened 3 years ago

rdbisme commented 3 years ago

On recent macOS the PRINT_MODE needs to be set to something different from 2D because otherwise a blank screen appears (http://www.bay12games.com/dwarves/mantisbt/view.php?id=11680).

Is there any way to make this work with this issue?

chrismdp commented 3 years ago

I've been looking into this issue over the last few days. Unfortunately setting the print mode to STANDARD causes random OpenGL crashes within both the main Stonesense thread and DF itself, usually within the first or second frame, making it unusable. This is possibly due to the fact that the Stonesense OpenGL context is running within the same process as DF's own OpenGL context, and they're clashing in some way on macOS.

The "proper" solution would be to move Stonesense out to its own process, using something like RemoteFortressReader (RFR) to read the fort. This is a major undertaking as the code relies heavily on internal DFHack structures and would need to be moved to relying on RFR structures instead.

rdbisme commented 3 years ago

Thanks for the heads up @chrismdp. No problem, I see. Thanks for the great work anyway!