Odd menu stretching in widescreen resolutions, but NOT on Linux

General help and assistance forum.
Post Reply
User avatar
ZZYZX
Posts a lot
Posts: 742
Joined: Thu Jun 07, 2012 5:56 pm
Location: Ukraine
Clan: A3
Clan Tag: [A3]

Odd menu stretching in widescreen resolutions, but NOT on Linux

#1

Post by ZZYZX » Wed Apr 30, 2014 7:37 pm

Read the topic, also this affects some other ingame screens aside from main menu/it's submenus (pic related).
Spoiler: X vs. Y, Windows (Open)
Image
[spoiler=""FIGHT", Windows"]Image[/spoiler]
Spoiler: X vs. Y, Linux (Open)
Image
Both software (old software under Windows, but happens both with and without forcing DirectDraw);
Didn't change any renderer settings related to font scaling (in fact didn't change any renderer settings at all except gamma).

The question is:
1. How to make Windows zanzan behave like Linux one does?

Also (just curious):
2. Why does Linux version behave differently from Windows one? Aren't those built from exactly same source?
3. Why does "X vs. Y" screen stretch, but not "FIGHT!" message? :igor:

User avatar
Torr Samaho
Lead Developer
Posts: 1543
Joined: Fri May 25, 2012 6:03 pm
Location: Germany

RE: Odd menu stretching in widescreen resolutions, but NOT on Linux

#2

Post by Torr Samaho » Sat May 03, 2014 9:01 am

Circunei Z wrote: The question is:
1. How to make Windows zanzan behave like Linux one does?
Sounds like a bug, but I can't reproduce it on my end. Did you try a clean ini file? Does it occur in 1.2 and 2.0?
Circunei Z wrote: Also (just curious):
2. Why does Linux version behave differently from Windows one? Aren't those built from exactly same source?
There are differences in the low level renderer code. Linux uses SDL, Windows DirectX.
Circunei Z wrote: 3. Why does "X vs. Y" screen stretch, but not "FIGHT!" message? :igor:
They are drawn differently. The former directly uses screen->DrawText, the latter DHUDMessageFadeOut.

User avatar
ZZYZX
Posts a lot
Posts: 742
Joined: Thu Jun 07, 2012 5:56 pm
Location: Ukraine
Clan: A3
Clan Tag: [A3]

RE: Odd menu stretching in widescreen resolutions, but NOT on Linux

#3

Post by ZZYZX » Sun May 04, 2014 8:15 pm

Torr Samaho wrote: There are differences in the low level renderer code. Linux uses SDL, Windows DirectX.
Obviously, but I've always thought that both SDL and DirectX are used solely for the purpose of creating a display buffer to render into that with ZDoom's own functions (which are probably platform-independent already).

Also it happens EXACTLY in 1.2. And yes, it does happen with unchanged .ini file. I've just installed Zandronum on my friend's laptop (and he didn't ever play Doom before, so I doubt there would be any remains from previous versions), changed the resolution from default to... I don't remember actually, some odd laptop-specific 16:9 resolution which was highest on that display. And got exactly the same thing as on my own Windows installation in 1920x1080.

Update:
  • Zandronum 2.0 stretches the main menu, but doesn't stretch the join screen (for teamgames) or the submenus (i.e. options menu or resolution change screen).
  • ZDoom 2.6.x doesn't stretch anything.
Last edited by ZZYZX on Sun May 04, 2014 8:25 pm, edited 1 time in total.

User avatar
Torr Samaho
Lead Developer
Posts: 1543
Joined: Fri May 25, 2012 6:03 pm
Location: Germany

RE: Odd menu stretching in widescreen resolutions, but NOT on Linux

#4

Post by Torr Samaho » Mon May 05, 2014 6:41 pm

Circunei Z wrote: Obviously, but I've always thought that both SDL and DirectX are used solely for the purpose of creating a display buffer to render into that with ZDoom's own functions (which are probably platform-independent already).
No, AFAIK ZDoom actually uses DirectX to do part of the image composition. That's why ZDoom supports truecolor for HUD and interface graphics in the software renderer.
Circunei Z wrote: ZDoom 2.6.x doesn't stretch anything.
How does ZDoom 2.5.0 behave?

User avatar
ZZYZX
Posts a lot
Posts: 742
Joined: Thu Jun 07, 2012 5:56 pm
Location: Ukraine
Clan: A3
Clan Tag: [A3]

RE: Odd menu stretching in widescreen resolutions, but NOT on Linux

#5

Post by ZZYZX » Mon May 05, 2014 8:56 pm

I thought it just has two surfaces of different color depth and lays one over another while using DirectX in order to convert both surfaces to display format using hardware. Not quite sure if that's correct, never looked at the relevant part of the source code. But anyway you can disable that DirectX part by saying vid_forceddraw 1 in the console and thus making sure it uses the old fully-paletted software renderer, same as on Linux or Mac.

ZDoom 2.5.0 doesn't stretch anything (main menu, titlepic, or submenus). i.e. those are scaled, but evenly.

Post Reply