DusteDdk / Wizznic

Most awesome puzzle game
http://sourceforge.net/projects/wizznic/
39 stars 21 forks source link

OpenGL fullscreen mode is buggy. #16

Closed Achaean closed 4 years ago

Achaean commented 4 years ago

OpenGL fullscreen mode is buggy. Non-opengl mode, draws ok, but the playfield is a lot smaller.

On Debian oldstable, x64.

DusteDdk commented 4 years ago

Hi, thanks for letting me know :) Which version are you using? The one in Ubuntu is very old and does not have opengl zoom. I just pulled down release B380, it seems to work on my machine. Can you provide the command line you start it with? Any terminal output would be nice as well, and finally, a screenshot, then I'll have something to work with :)

Achaean commented 4 years ago

Hi, thanks for letting me know :)

The pleasure is mine! :-)

Which version are you using?

B380 (the x64 precompiled binary).

The one in Ubuntu is very old and does not have opengl zoom.

I'm on Devuan stable x64, which is Debian oldstable based (for the time being).

I just pulled down release B380, it seems to work on my machine. Can you provide the command line you start it with?

Yes of course! Here's the output:

>./wizznic_linux_x64_precompiled -f -gl
Wizznic 1.0-dev(B380). GPLv3 or newer Copyleft 2009-2015

Directories:
    Settings: .
    DLC: ./dlc
    Highscores: ./highscores
    Editorlevels: ./editorlevels
    Datafiles: ./

Command-line parameters:
    -gl            # Enable OpenGL.
    -sw            # Disable OpenGL.
    -glheight PX   # Window width  (-1 for auto).
    -glwidth  PY   # Window height (-1 for auto).
    -glfilter ST   # 0=Blocky, 1=Smooth.
    -rift          # Usable for Oculus Rift.
    -record [file] # on pc, use ffmpeg to encode video to file.mp4
    -d PACKNAME    # Dump screenshots of levels in pack.
    -d FILENAME    # Dump screenshot of level.
    -f             # Enable fullscreen.
    -w             # Disable fullscreen.
    -z 2           # Software scale to 640x480.
Loading settings from: ./settings.ini
Enabling platform specific accelerated scaling.
Scaling factor: 3.200000
Screen surface using 3 bytes per pixel.
statsInit(); Stats ready to be refreshed.
initPack();
initPack(); Added 12 packs.
Applying settings..
packSet(); Selecting pack 0...
packSet(); Selected pack './packs/000_wizznic' Loading stats..
packSet(); Stats loaded.
Setting Music...
>

Any terminal output would be nice as well,

The one above, among with the command-line arguments.

and finally, a screenshot, then I'll have something to work with :)

I tried a delayed PrintScreen, but it failed to capture the image. Please wait until morning, so I'll find a camera, a mobile, or something, so we'll have an image available.

I'll be back! :-) A.

DusteDdk commented 4 years ago

Thanks for the info! That's useful. I'm looking forward to the visuals :) I forgot to ask about your desktop screen resolution -_-

I see a scaling factor of 3.2 so that'd be maybe 1024x768 ? If that's the case, I will assume it's on a somewhat older machine, and, it MIGHT be that I'm allocating a "non power-of-two" texture which that machines graphics hardware/driver dislikes. However, I'd have expected that to give blank screen or crash or something.

Another thing: SDL1 (which I used for Wizznic) has very poor support for multiple monitors, so if there are multiple monitors, try running wizznic with -gl -w in a window (and use -glwidth -glheight to get a nice size)

Hmm, finally, if you can't get it working with OpenGL, maybe you'll have luck with software, and if your machine supports it, software in fullscreen. The game was originally written for a 500 mhz ARM machine running 320x240.

Sorry for the rant :) Again, looking forward to the screenshot :) I'll definitely look into the issue.

Achaean commented 4 years ago

Thanks for the info! That's useful. I'm looking forward to the visuals :) I forgot to ask about your desktop screen resolution -_-

I see a scaling factor of 3.2 so that'd be maybe 1024x768 ? If that's the case, I will assume it's on a somewhat older machine, and, it MIGHT be that I'm allocating a "non power-of-two" texture which that machines graphics hardware/driver dislikes. However, I'd have expected that to give blank screen or crash or something.

1360X768. Dunno why the reported resolution! :-(

Another thing: SDL1 (which I used for Wizznic) has very poor support for multiple monitors, so if there are multiple monitors, try running wizznic with -gl -w in a window (and use -glwidth -glheight to get a nice size)

Just a usual desktop here. A single tft monitor Nothing special.

Hmm, finally, if you can't get it working with OpenGL, maybe you'll have luck with software, and if your machine supports it, software in fullscreen. The game was originally written for a 500 mhz ARM machine running 320x240.

Indeed, I'm running it with software (-sw) and works great! The only downside is that it shrinks the actual size of the game and since it's puzzle it makes it more difficult to see the details.

Later! :-)

Achaean commented 4 years ago

And finally...the visual!!! :-)

One can see the distorted left and right borders, who actually are images of my desktop background or an open webpage (whatever is active on the background of my console (Yakuake)).

Screenshot

DusteDdk commented 4 years ago

Phew, that's a lot better than I feared :) This I can certainly fix :) To be sure I fix it right the first time, can you confirm my assumption, which is that the game area actually works fine, and that it is only the borders that are bugged?

Achaean commented 4 years ago

Phew, that's a lot better than I feared :) This I can certainly fix :)

Nice!!! :-)

To be sure I fix it right the first time, can you confirm my assumption, which is that the game area actually works fine, and that it is only the borders that are bugged?

Confirmed!

DusteDdk commented 4 years ago

I've pushed the fix and done a binary, Can you confirm that this fixes it? https://github.com/DusteDdk/Wizznic/releases/tag/FixB380 It's only the binary, so you will need to drop it into the Wizznic dir. I will get around to doing a proper release, but it'd be super cool to know early if this works ^_^ Also my cross-compilation setup has not been running for a long time, so I need to figure out how to spin it up in my new, docker-based infrastructure xD

Achaean commented 4 years ago

Success!!! :-) THANKS!!!

DusteDdk commented 4 years ago

Thanks a lot for your help! ^_^ I'll do a proper release soon :+1:

Achaean commented 4 years ago

Keep up the GREAT work!!! ;-) And have a happy holiday season!