MARK OPENGL GL MACOS!!!!!

About Monkey 2 Forums Monkey 2 Development MARK OPENGL GL MACOS!!!!!

This topic contains 12 replies, has 7 voices, and was last updated by  Mark Sibly 1 week, 5 days ago.

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #15468

    AdamStrange
    Participant

    with apple upgrading their os and downgrading opengl Monkey2 3d and opengl has ceased (instantly) to work!

    there is a workaround for the 2d issues, but 3d is completely dead – just a black screen

    Is there anyway you can find any time to check this out.

    Even the just a working simple base code of

    Method OnRenderGL() Override
    glClearStencil( 0 )
    glEnable(GL_CULL_FACE)
    glEnable(GL_DEPTH_TEST)
    glClearColor(0, 0.1, 0.2, 1)
    end method

    would be enough 🙂

    #15477

    AdamStrange
    Participant

    Mark. Any word on this. even it it is ‘I’m looking in to it”?

    #15478

    Hezkore
    Participant

    I think he’s working (at his ‘real’ job) and probably won’t be on until the weekend.
    The issue has been reported on Github.

    #15479

    regulark
    Participant

    https://github.com/blitz-research/monkey2/issues/430

     

    I made an issue here. Please help out gathering any information that may help fixing it.

    #15480

    Mark Sibly
    Keymaster

    I’ve updated to Mojave and can reproduce some of the problems people are having, including ‘no vsync’ and ‘nothering rendering’.

    I’m gonna wait a while before doing anything too drastic about no-vsync. At the moment it looks like Apple have removed the GL swap_interval extension entirely (and I couldn’t find any alternatives) and if that’s the case you really have no choice but to use a timer. But it may also be an early release glitch that goes away with the next update etc.

    The ‘nothing rendering’ issue is fixed for me by moving the window, and I should be able to do something about this. But once rendering is happening, all appears to be well which is something at least!

    Any other issues I have missed?

    #15481

    SekaiChi
    Participant

    CoreAnimation layer forces vsync there’d no way to shut vsync off now in macos nor in ios as far as I know.

    https://github.com/gfx-rs/metal-rs/issues/12

    This also explains the bad performance introduced in High sierra / 10.0.2 (10.0.1 was the last time it worked absolutely perfectly

    You can read in the discussion why it went bad in the slow additive process towards Metal that Apple did, but i never tried those flags myself and I don’t think many did or even knew about these important changes). Anyways they are over now.

    CVDisplayLink timer events is now the same as the old vsync interval

    #15482

    AdamStrange
    Participant

    Brilliant. I’ll see what can be done… 🙂

    #15491

    regulark
    Participant

    Thank you Mark.

    There is one more issue I am experiencing, if I run the view layouts demo and then resize the window, it becomes rather odd to say the least.

    #15492

    SekaiChi
    Participant

    If the GUI relies on GetRenderOutputSize then everyone needs to be enlighted that the api now returns a zero for w and h if you haven’t called SDL_SetWindowSize before (simply use the size of the window and call it with that).

    This is just a hunch bc I never dive into m2 code (i pay to not having too) but it sounds like this is what needs to get fixed.

    #15493

    SekaiChi
    Participant

    I guess one should take a vaccation from Monkey2 a month or two because this is depressing and enerving. I eas so happy about havimg a working platform.. BAM

    let down

    #15494

    DruggedBunny
    Participant

    Huh? Mark said only two days ago that he’s looking into this.

    #15496

    Ethernaut
    Participant

    It’s working fine now, as far as I can tell.

    #15501

    Mark Sibly
    Keymaster

    Everything seems to be working fine on Mojave here now too. A non-0 SwapInterval will now cause the ‘displaylink’ timer to be used to synchronize OnRender()’s instead of the GL SwapControl extension. The displaylink timer has actually been in macos since 10.4 so I’ve just used it for ALL macos targets.

    Also, changing an internal SDL2 cocoa call from ‘updateIfNeeded’ to just plain ‘update’ seems to have solved the ‘not rendering’ issue.

    There have been reports of an issue with window  resizing but I haven’t been able to reproduce this so far.

Viewing 13 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic.