I've been doing some testing with a 3D GUI lib I've been working on. It's a single-surface-per-window lib that uses Skid's 'pixie' thinking with fredborg's PickedUVW stuff to give easy rotation, scaling, alpha and all that other nice stuff.
I've run into an odd thing though. I update the texture when gadgets and windows change, and on most rigs all things work fine. The odd thing is that, on some rigs, using flag 256 to create the texture makes the changes to the texture invisible -- while on some rigs, NOT using flag 256 to create the texture will do the same exact thing. I expected that =using= flag 256 might cause trouble... but I certainly didn't expect that NOT using it would!
Here's the code -- it's based in part on others' work and going to be free for use anyway so if anyone can work out why, exactly, it's doing this -- or at least how to sensibly test what flag I need to use without actually asking the user -- I'd be much obliged.)
http://www.echthros.com/files/3gui.rar
(PS -- even if you can't work out why this is happening, a note on your FPS would be much appreciated)
(PPS -- if you're one of the unlucky souls that require flag 256 to see anything (or just want to change it to get faster window update times), go to the WIN3_Create() routine, go to the line under 'If masked = False' and change the flags in the call to CreateTexture() from 1 to 257.)
(PPPS -- if you just want to have a play, be sure to read the readme.txt so you can see what you can do with it.)
I've run into an odd thing though. I update the texture when gadgets and windows change, and on most rigs all things work fine. The odd thing is that, on some rigs, using flag 256 to create the texture makes the changes to the texture invisible -- while on some rigs, NOT using flag 256 to create the texture will do the same exact thing. I expected that =using= flag 256 might cause trouble... but I certainly didn't expect that NOT using it would!
Here's the code -- it's based in part on others' work and going to be free for use anyway so if anyone can work out why, exactly, it's doing this -- or at least how to sensibly test what flag I need to use without actually asking the user -- I'd be much obliged.)
http://www.echthros.com/files/3gui.rar
(PS -- even if you can't work out why this is happening, a note on your FPS would be much appreciated)
(PPS -- if you're one of the unlucky souls that require flag 256 to see anything (or just want to change it to get faster window update times), go to the WIN3_Create() routine, go to the line under 'If masked = False' and change the flags in the call to CreateTexture() from 1 to 257.)
(PPPS -- if you just want to have a play, be sure to read the readme.txt so you can see what you can do with it.)