Is a mouse pointer in fullscreen guaranteed?
BlitzMax Forums/BlitzMax Beginners Area/Is a mouse pointer in fullscreen guaranteed?
| ||
With both the GL and D3D7 drivers, I get a visible mouse pointer in fullscreen. In previous Blitz versions, you never got one. Is it guaranteed that we're getting one now or is it safer to hide it and draw our own? The docs, as usual, say nothing. |
| ||
Well, Dont know if this is of any help but I dont get a mouse pointer in fullscreen with either of the drivers. |
| ||
Yep, that's a big help. Evidently I can't count on there being one and I will need to roll my own. Thanks for the info. |
| ||
No prob. :) |
| ||
Assume it will definitely be there. As a non-previous-blitz-user I have no reason to believe it shouldn't be |
| ||
Assume it will definitely be there. As a non-previous-blitz-user I have no reason to believe it shouldn't be Erm.. the first person to reply to this thread has already said there is no mouse pointer using either driver. That's plenty of reason for me to believe it's far from definite. |
| ||
Oh, I didn't see that. Is that a bug then, shouldn't it be consistent? |
| ||
Is it guaranteed that we're getting one now or is it safer to hide it and draw our own? It is safer to hide it and draw your own (software). Is that a bug then, shouldn't it be consistent? No, it hardware dependant. Your graphics card may or may not support a hardware cursor.To be consistent, it is safer to create your own. |
| ||
Is that a bug then, shouldn't it be consistent? I'm not sure, it's probably not within the power of BlitzMax to ensure there is a pointer in fullscreen. It should definitely be in the docs though. |
| ||
I see, so the pointer is controlled by the hardware and not by BlitzMax. . .. But surely the desktop always has a pointer, so why would it disappear with a new screen? Just one of those things eh. Probably is a good idea to do your own cursor, but it then leaves you with the predicament that you have to manage the drawing/update of it, which might not be fast enough if your game only runs 25-30fps or so. |
| ||
But surely the desktop always has a pointer, so why would it disappear with a new screen? I'm not really into the fundamentals of OpenGL/DirectX/Windows/whatever. The Desktop pointer however is also a software pointer (that is one drawn manually by Windows) providing the graphics card doesn't support it in hardware.In this case, I would assume, that since Windows is no longer calling the shots, it would stand to reason that the pointer Windows renders, is no longer being drawn. It sounds pretty reasonable. If you have a rather old gfx card (Riva TNT, early GeForce, anything worse) you can test it by chosing a set of pointers with lots of colors in them. Since the gfx card in question is only likely to have one or two bitplanes, Windows will switch to a software pointer, which will most likely a) disappear when switching to an OpenGL/Direct3D screen, or b) be replaced by the old, less colorful pointer. |
| ||
Ok. Well good to know! |
| ||
It sounds more like a bug to me, Amon can you please post details of your system. |
| ||
I guess it makes sense though, I have some memory of seeing specifications for older graphics cards that had to define whether or not it provided a hardware cursor. I would think that all modern systems pretty much come with them as standard. It would be nice to assume that they'd all have one, and really BlitzMax should take efforts to make sure one is supported even if that means it needs to be implemented by the o/s. Then it'd be more reliable. I think it likely though that in many cases people will want their own pointer in fullscreen anyway. If we do have to manage our own mouse pointer, it'd be nice if it was easy to access the front buffer (there is an openGL command) in a way that allows a very small portion of the display to be updated with the mouse moving over it, at a high refresh rate. |