Diary of an insane man - Page 2

Diary of an insane man

Discuss everything related to compiling and running Spring on Mac OS X.

Moderator: Moderators

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 06 Mar 2019, 04:58

At this point I'm more concerned about Spring running on Mac. Helping with SL will probably come later, probably when I need a break from getting nowhere. But yes, that's a possibility. I'll keep it in mind.

Also, ivand successfully convinced me to start with OpenGL instead of Vulkan.
0 x

malric
Posts: 515
Joined: 30 Dec 2005, 22:22

Re: Diary of an insane man

Post by malric » 07 Mar 2019, 00:06

Maybe share the arguments he used to convince you to go for OpenGL instead of Vulkan?
0 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 09 Mar 2019, 21:54

malric wrote:
07 Mar 2019, 00:06
Maybe share the arguments he used to convince you to go for OpenGL instead of Vulkan?
Sure
Well, it turns out that Vulkan is well-known to require a tonne of boilerplate code

i.e. when you're learning, learning Vulkan gets in the way of learning 3D gfx. Makes sense. Then it might make further sense to go to an additional abstraction layer (ivand sent me a link to a video about DilligentEngine), but that opened up too many options for me, and I can't find something pointing which way. Settling with OpenGL for now.

I have worked a little bit through the tutorial – I'm following this one: https://learnopengl.com/Getting-started/OpenGL which is said to be "the best" but all I've done so far is get a window appearing, Business appeared and I've had to postpone progress. Hoping to find some time soon.
0 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 27 Aug 2019, 07:43

I couldn't sleep last night so I decided to solve this problem for once and for all. Using lldb backtrace I discovered that all I needed to do to get Spring running was comment out a few lines of code – and it works for both Develop and Maintenance. Oh, and on Maintenance I also forced OpenGL 2.1 … but that may not be necessary. I can't remember.

I'll push the changes up to github in a bit and link to them.

@kloot: Apart from all the failing shaders (which don't really impede playability that much), LoS mode and f4 metal map appear to be broken for maintenance: LoS mode does absolutely nothing, and f4 metal map simply renders a white map. I'm going to look into these things myself, but if you could give me a pointer that would be absolutely awesome.

Regards,
~MasterBel2
0 x

User avatar
Silentwings
Moderator
Posts: 3579
Joined: 25 Oct 2008, 00:23

Re: Diary of an insane man

Post by Silentwings » 27 Aug 2019, 15:06

Iirc the metal and los views are done by shaders.
1 x

Kloot
Spring Developer
Posts: 1864
Joined: 08 Oct 2006, 16:58

Re: Diary of an insane man

Post by Kloot » 27 Aug 2019, 16:05

I also forced OpenGL 2.1 ... failing shaders
The modern info-texture (metal/los/etc) shader overlay system requires GL3, you voided your warranty.
2 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 27 Aug 2019, 23:49

Silentwings wrote:
27 Aug 2019, 15:06
Iirc the metal and los views are done by shaders.
Kloot wrote:
27 Aug 2019, 16:05
The modern info-texture (metal/los/etc) shader overlay system requires GL3, you voided your warranty.
Thanks for making it clear. :)
0 x

LAN4
Posts: 1
Joined: 01 Sep 2019, 09:34

Re: Diary of an insane man

Post by LAN4 » 01 Sep 2019, 10:09

I would be super happy to see a working MAC build for XTA and TA play. Please don't give up. I might also be able to help as I know how to code. Please send me an update where you are now.
1 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 02 Sep 2019, 02:56

LAN4 wrote:
01 Sep 2019, 10:09
I would be super happy to see a working MAC build for XTA and TA play. Please don't give up. I might also be able to help as I know how to code. Please send me an update where you are now.
Hi LAN4, thanks!

I'm rather stuck on the LoS/f4 metal map issue on the Maintenance build. The drawing for both is handled by the rts/Map/InfoTexture/Legacy/LegacyInfoTextureHandler::Update (LegacyIfoTextureHandler.cpp), and applied in SMFRenderStateFFP::Enable (rts/Map/SMF/SMFRenderState.cpp) For all InfoTextures it's drawing, it appears to have no effect on the render process. The white metalmap comes about something in SMFRenderStateFFP::Enable which is working perfectly as expected - it just creates a faulty picture because of the failure of the LegacyInfoTexture, I believe. Both these areas of legacy code have hardly been touched and are verified to work 100% as-expected on Windows (many thanks to Ivand for checking that).

My personal theory, given the evidence, is that the extensive changes to PBO/VBO have possibly broken this on Mac – I haven't had time to look into where else they're used and whether they seem to be consistently broken – if not, it's probably something else. So first step in fixing this is just going to be working out what's going wrong.

I never got to pushing my changes to achieve a working biuld up to github, so I'll do that now, and post details when that's done.

Regards,
~MasterBel2
0 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 02 Sep 2019, 03:14

Current changes + explanation (in the commit messages) published to https://github.com/MasterBel2/spring/tr ... t-creation. Let me know if you have any questions.
0 x

MasterBel
Posts: 152
Joined: 18 Mar 2018, 07:48

Re: Diary of an insane man

Post by MasterBel » 09 Sep 2019, 01:55

Kloot wrote:
27 Aug 2019, 16:05
I also forced OpenGL 2.1 ... failing shaders
The modern info-texture (metal/los/etc) shader overlay system requires GL3, you voided your warranty.
Does it change anything if I mention that Mac never used the modern info-texture system, only the legacy system? This system has not changed since 103 and works perfectly fine on 103.

Again – do you have any unhelpful ideas what might be going wrong, so I can see if I can work out a private hack around it? Or where I could look to see if I could find whatever's going wrong?

Thanks :)
~MasterBel2
0 x

Post Reply

Return to “Mac OS X”