Problem in bufferization with a macbook air

BlitzMax Forums/BlitzMax Programming/Problem in bufferization with a macbook air

Pit-le-rouge(Posted 2014) [#1]
Dear all,

I just try to run an old game I made with BMax on my new macbook air (with os x 10.9).
The bufferization (with flip) seems to have BIG problems (screen with mix of image between the new screen and the previous one, which was is supposed to be cleaned with CLS)....
Do someone know this problem ? Maybe the INtel HD graphic c


Pit-le-rouge(Posted 2014) [#2]
Sorry, I continue :-)
Maybe a problem with the Intel HD graphic card ?

Cheers

Pit


Brucey(Posted 2014) [#3]
On what OS X system were you using previously that worked?


Pit-le-rouge(Posted 2014) [#4]
previously it was an old MAcbook (not air) with intel prococessor (and with mac os 10.7 and 8)


xlsior(Posted 2014) [#5]
Do you know for sure that you're doing an actual CLS in between frames?

Reason I'm asking is that the frame behaviour varies depending on videocard/driver: some will give you a blank screen by default after each flip, some will retain the previous screendraw, some will show the info from two screendraws ago, some the info from three screendraws ago..

If you forgot the CLS altogether, then it may have worked OK on your test machine, but on others it could return all kinds of unexpected visuals.


Pit-le-rouge(Posted 2014) [#6]
Hi Marc,

You are completely right !
I made some modif on my code with FLIP and CLS and this is ok now.
Well... more or less because, before these modif, I draw a maze step by step (or wall by wall :-) and now I only draw the maze once finished because of this. The new behaviour doesn't map my "old logic"...
Anyway, I think I will try to adapt it to Monkey rather than to continue to correct this in Blitz. :-)

anyway, THANKS for your help !

Pit


xlsior(Posted 2014) [#7]
Unfortunately it's a limitation of OpenGL & DirectX, both of which specify that you can't rely on the old screen content to remain after a flip.

If you want to draw something in phases, you'll have to redraw everything up to the desired point each frame.

Note that it's not a blitz problem but an OpenGL/DirectX limitation, meaning that you'd have the exact same issue in Monkey, C++, Java, etc. if you were to apply the same logic flow in your program.


Pit-le-rouge(Posted 2014) [#8]
Hi Marc,

Yes, i don't hope to avoid this problem with Monkey.
I swithc to monkey only because the platform client possible with monkey is more extended :-) And I'm interested in produce something for my Iphone. :-)

Thanks again.

PIt