I tried doing the same sort of thing here, where I exchanged the Graphics for the bglCreateContext and got a blank screen.
The Graphics command sets up a number of things - does several other OpenGL calls to initialize some things and get things into the right mode, setting up a viewport and so on.
bglCreateContext doesn't do that, it just creates a graphics context but doesn't set up any of the OpenGL machine. You have to explicitly define your own viewport, Ortho2D orthagonal projection matrix, and any other settings you need, etc.
I found that in general, trying to use Max2D at the same time as interspersing your own OpenGL calls isn't very reliable. Max2D is trying to keep track of a number of states and conditions and any extra calls you add in are likely to interfere with that. With OpenGl direct, you're stepping in through the back door and fiddling under the hood of Max2D. If you don't know exactly what states Max2D has set up and how to preserve them, you will mess things up and get unexpected results.
What I decided to do was to just ditch most of Max2D and do everything with custom OpenGL calls. About the only part of Max2D I use is to load pixmaps and get the location of the pixmap data, along with the pitch etc. I do all my texture uploading and world setting-up myself. You have more control that way too.
I don't think you can just exchange Graphics for bglCreateContext and expect them to be the same, Graphics does a number of other things that the create context doesn't do.
The Graphics command sets up a number of things - does several other OpenGL calls to initialize some things and get things into the right mode, setting up a viewport and so on.
bglCreateContext doesn't do that, it just creates a graphics context but doesn't set up any of the OpenGL machine. You have to explicitly define your own viewport, Ortho2D orthagonal projection matrix, and any other settings you need, etc.
I found that in general, trying to use Max2D at the same time as interspersing your own OpenGL calls isn't very reliable. Max2D is trying to keep track of a number of states and conditions and any extra calls you add in are likely to interfere with that. With OpenGl direct, you're stepping in through the back door and fiddling under the hood of Max2D. If you don't know exactly what states Max2D has set up and how to preserve them, you will mess things up and get unexpected results.
What I decided to do was to just ditch most of Max2D and do everything with custom OpenGL calls. About the only part of Max2D I use is to load pixmaps and get the location of the pixmap data, along with the pitch etc. I do all my texture uploading and world setting-up myself. You have more control that way too.
I don't think you can just exchange Graphics for bglCreateContext and expect them to be the same, Graphics does a number of other things that the create context doesn't do.