Not logged inGosu Forums
Forum back to libgosu.org Help Search Register Login
Up Topic Gosu / Gosu Exchange / Window handling
- - By SPK Date 2013-08-15 16:39
I was browsing some other libraries wikis and found this: http://www.sfml-dev.org/tutorials/2.1/window-window.php
This got me interested in why gosu doesn't support more complex window operations like resizing or hiding the titlebar.

It would be cool to have a more complex functionality in gosu.
Parent - - By EdwinOdesseiron Date 2013-08-15 17:23
Resizable window would probably provide a lot of trouble when making game, as you would have to automate hell a lot of stuff to look correct on different sizes. Especially if you'd want it to look nice. I myself have 2 resolutions in my game, 1024x768 and 1366x768, and I sometimes find it challenging to make things look good in both resolutions (especially things like menus, where I generally do them for non-wide screen, so it fits nicely, but on widescreen they look a bit too spaced out). Now imagine trying to make everything look nice, or at least not overlap with resolutions ranging from 640x480 to 1920x1200.

Although I would like an option like sf::Style::None in the link you posted (or like java's JFrame.setUndecorated(true);), could be useful for start splash screens, like in Skyrim perhaps.
Parent - By Spooner Date 2013-08-16 10:45
I usually just force multiples of the underlying pixel size (since I make games with large pixels), so I can scale everything happily.

Also, for games with large maps (like my Smash and Grab), you can easily just show more of it if you want to use a larger resolution; admittedly much harder for single-screen games or games where you don't want the player to see more of the map at once.

Both of my non-Gosu games (Ruby/Ray and Python/SDL2) have used in-game window-resizing effectively and borderless windows to support full-screen. Shame Gosu doesn't support either of these...
Parent - - By jlnr (dev) Date 2013-08-17 01:22
The short answer is - lack of time, as usual :)

The longer answer is that I wanted to see if I could move Gosu onto GLFW and then rewrite the windowing code without having to touch X11 myself. And then GLFW 3 was "around the corner", so it didn't seem to make sense to use GLFW 2 anymore (even though a GLFW 2 fork of Gosu exists on github). And GLFW 3 was only released in June, after which I haven't had time to look at it again.
Parent - - By SPK Date 2013-08-17 11:43
Nevermind. :P
I would be interested in helping. Let me know when you have more concrete plans and time.
Parent - - By jlnr (dev) Date 2013-08-18 15:52
Hmm, the first thing would be to find out if GLFW can do the things you have asked about. If it can do them - then Gosu should be ported to GLFW on Linux (again) as a start :)

If you feel like playing around with the library, let me know if you can find these features! Another important one would be "same-resolution fullscreen", like video players implement it - just one desktop-sized window.

Only if GLFW really cannot do these things for Gosu, I'll go back to hacking the dreaded WindowX11.cpp… :)
Parent - - By SPK Date 2013-08-19 20:03
I already tried to play around with the gosu source code, but failed hard trying with cmake to link gosu.
Would be cool if you could elaborate on that part in the wiki or show me a working example.

Thanks!
Parent - - By jlnr (dev) Date 2013-08-21 13:20
What was the exact error? fowl on IRC has also ran into issues with CMake on Linux, and I have yet to reproduce these problems. Do you also see wrong results from pkg-config?
Parent - By SPK Date 2013-08-24 21:45
Nah. I'm stuck after make install. CMake won't find gosu with the snippet provided in the wiki (gosu is located at /usr/local/lib). That's where I lost all hope and interest in C++ again.
Up Topic Gosu / Gosu Exchange / Window handling

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill