I am wondering if there is an easy way for GLB to do the following
I have a display that is currently drawn as a single screen of 1024 wide and 1526 high to display over 2 screens within windows. I now need to draw it as a screen 2048 wide and 768 high with the screen that starts at 1024,0 being what was drawn as the top screen.
Can I use my existing draw routine and then create a sprite for each of the halves of the screens and then redraw in the new positions?
its something like this I'm after
current screen layout
----------
- -
- x -
- -
----------
- -
- y -
- -
----------
new screen layout
-------------------
- -- -
- y -- x -
- -- -
-------------------
How is the original screen/image constructed - is it one big bitmap or lots of bitmaps that make up the scene or is it tiled?
You can use POLYVECTOR to redraw the part of the screen image that was at the bottom and drawit to the right of the upper part of the image easily. Or Viewport. Or tiles.
its a png background with loads of of other pngs laid on top of it
I thought something like this would do it
GRABSPRITE 301,0,0,1024,768 // grab the top half of the screen
GRABSPRITE 302,0,768,1024,768 // grab the bottom half of the screen
SETSCREEN 2048,768,FALSE // create a screen 2 screens wide and 1 screen high
DRAWSPRITE 301,1024,0 // draw the top half on the right
DRAWSPRITE 302,0,0 //draw the bottom half on the left
it kind of works but it gives the bottom half of the screen on both sides (with a bit of graphics clipping at the top of the left side half) and it is constantly flickering
im thinks SDL not supporting this correctly?
I took out the setscreen and that removed the flickering, I now set that at start up depending on a flag at build time.
I am rendering everything to a sprite set as screen 1 (sprite number 70) so that I can resize it depending on the output screen size. I have checked that the sprite is being generated properly by using savesprite and it is as per the attached image
This is only going to run on a windows based computer so I know GRABSPRITE does not work on some mobile platforms
Looks like I might have to rewrite all the draw routines if SDL is broken :(
Thanks for the advice
this is what is actually displaying now, the right side is being animated properly but the left side for some reason is staying static and also its showing the wrong artwork (reel symbols are different to the right side ones)
scrap that. its me forgetting my code from 4 years ago
incase anyone else has a similar issue then this worked for me
USESCREEN 1
DRAWSPRITE 70,0,0
GRABSPRITE 801,0,-768,1024,768
GRABSPRITE 802,0,0,1024,768
USESCREEN 2
DRAWSPRITE 801,1024,0
DRAWSPRITE 802,0,0
USESCREEN -1
DRAWSPRITE 999,0,0
with the following set up for the 2 screens
CREATESCREEN 2,999,2048,768
CREATESCREEN 1,70,1024,1536