Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
RandomNewbie

Source port with Zdoom's scripting, but 320x240 resolution

Recommended Posts

I love Chocolate doom because its just like the original, but really want some mods that require something Boom or Zdoom compatible.

Stuff I want

- pillar-boxed 4:3 aspect ratio in my 16x9 (2048x1152) screen, with a multiple of 320x240 screen resolution inside it (like chocolate doom)

- Zdoom and Boom mod support

- retro-sounding music (probably an OPL synth)

Is there a port like this? if it only has Boom support that's ok too.

Thanks!

Share this post


Link to post

Funny, I've wanted a port similar to this concept for a while (just without ZDoom support, would require far too many changes to core behavior). Also, I believe you mean 320x200, Doom used 5:6 pixels.

 

If ZDoom support is a must, perhaps a "Retro GZDoom" fork would be a nice idea. Still GZDoom at its core, but with the surface feel of Chocolate Doom.

Edited by Blastfrog

Share this post


Link to post

Why not load up PrBoom+ in software mode, change Aspect Ratio to 4:3 and set the midi device to OPL2? No ZDoom support though.

 

Or Load up GZDoom in software mode, set aspect ratio to 4:3 and use GUS as the midi device (I'm not sure if it supports OPL by default)? There's your ZDoom support.

Share this post


Link to post

Voros, neither of those are what he wants, he wants ZDoom editing features and 320x200 with rectangular pixels (which he seems to think is 320x240, but it's not). ZDoom and its forks do not support this, period, and neither does PrBoom+. Even for Boom compatible mapsets, your only choices for 320x200 are Boom 2.02, MBF, and SMMU, all of which require DOS or DOSBox, none of which support modern "Boom compatible" (they should really be called PrBoom+/ZDoom compatible) sets like Sunlust, and all of which have inaccurate OPL music due to the Allegro driver.

 

Personally, I support this idea, but I think any such render option should also support 16:9 and 16:10 aspect ratios using the same rectangular pixels and vertical resolution.

 

You can try to fake it in GZDoom by making sure the blitter is set to Direct3D and not OpenGL, running the game with the -4 command line parameter, and selecting the lowest resolution available, but be warned that the HUD will look 57 varieties of awful and it's nowhere even close to being an authentic experience.

Edited by Woolie Wool

Share this post


Link to post

... Buh? GZDoom supports non-square pixels, and defaults to 1:1.2. In fact, you can set what pixel ratio it uses as part of a mod's personal settings.

 

In fact, I'm pretty sure almost all ports keep the 1:1.2 pixels. Sure, they may not support 320x200 -> 320x240, but 640x480 isn't actually true 640x480 under normal circumstances, it's 640x400 -> 640x480.

Share this post


Link to post

I've actually wanted the complete opposite port.  Chocolate vanilla-perfect gameplay and gamesim featureset, but with a ZDoom interface/menu system/console/cosmetic features/etc.

Share this post


Link to post
33 minutes ago, Arctangent said:

... Buh? GZDoom supports non-square pixels, and defaults to 1:1.2. In fact, you can set what pixel ratio it uses as part of a mod's personal settings.

 

In fact, I'm pretty sure almost all ports keep the 1:1.2 pixels. Sure, they may not support 320x200 -> 320x240, but 640x480 isn't actually true 640x480 under normal circumstances, it's 640x400 -> 640x480.

That's not the same thing. GZDoom uses square pixels as it only supports standard modern-day video modes. It vertically stretches the sprites and game world, but this is not the same as having rectangular pixels.

Share this post


Link to post

If your video card supports custom resolutions, you can set up a 320x200 mode. I've had more luck getting it to work in the software renderer than the GL one, however.

 

You can approximate vanilla's look and feel in GZDoom, but not that well.

Share this post


Link to post
46 minutes ago, Woolie Wool said:

That's not the same thing. GZDoom uses square pixels as it only supports standard modern-day video modes. It vertically stretches the sprites and game world, but this is not the same as having rectangular pixels.

... You do realize that Doom's rectangular pixels are caused by running a 320x200 full screen program on a 320x240 display, causing the display to stretch the sprites and game world so that there aren't black bars ( or worse, undefined junk pixels ) at the top and bottom of the screen, right?

Share this post


Link to post
14 minutes ago, Arctangent said:

running a 320x200 full screen program on a 320x240 display

Technically, no.

 

Running 320x200 on a 4:3 CRT (no native res unlike LCD) with signal timing causing the pixels to be 5:6, yes. Actually scaling 320x200 to 320x240, no.

 

I know what you meant, I just want to make sure that no one misinterprets you to think that it literally scaled it to another resolution.

Share this post


Link to post

ZDaemon supports everything PrBoom does and a good deal of ZDoom stuff as well while retaining an option for 320x200 resolution. I believe Odamex does as well, though ZDoom support is more limited there.

 

Software mode GZDoom fork with original resolution is an idea I fully support.

Share this post


Link to post
3 minutes ago, Doomkid said:

ZDaemon supports...a good deal of ZDoom stuff

Unless something major happened that I haven't heard about, that's ZDoom circa early last decade. In other words, not remotely ZDoom as we know it, today.

 

3 minutes ago, Doomkid said:

Software mode GZDoom fork with original resolution is an idea I fully support.

GZDoom does have a software renderer, though.

 

Some kind of a retro version would need to have Chocolate Doom's scalar or something like it to reasonably support low res on modern computers. I do occasionally run it in 320x200, but it sucks and I'd rather just have a scalar.

Share this post


Link to post
2 hours ago, Blastfrog said:

Unless something major happened that I haven't heard about, that's ZDoom circa early last decade. In other words, not remotely ZDoom as we know it, today.

Oh well I mean, most of those old as dirt ZDoom features are still the main ones used in mapping, right? It would be wrong to say ZDaemon "does not support ZDoom wads/mods" since it supports a great deal of them, but I call it limited since a lot of the modern stuff isn't there. He also mentioned Boom compatibility which ZDaemon of course fully supports.

 

I had no clue GZDoom could be run in software, that's great news.

Share this post


Link to post
1 minute ago, Doomkid said:

Oh well I mean, most of those old as dirt ZDoom features are still the main ones used in mapping, right?

I dunno about that. Hexen format for mapping is dead, modern ZDoom mods use UDMF.

 

1 minute ago, Doomkid said:

It would be wrong to say ZDaemon "does not support ZDoom wads/mods" since it supports a great deal of them, but I call it limited since a lot of the modern stuff isn't there.

The modern stuff is exactly what makes ZDoom what it is, today. Oldschool ZDoom is practically a whole different port.

 

So sure, it'll probably run ancient stuff, but anything new not specifically tailored for ZDaemon compatibility is assured to not work at all.

 

1 minute ago, Doomkid said:

I had no clue GZDoom could be run in software, that's great news.

It's actually been that way since the beginning.

 

Not to mention that the entirety of QZDoom's improvements were merged into GZDoom. This includes the polygon software renderer, too. So, yes, GZDoom has two software renderers and a GL renderer.

Share this post


Link to post

@MaxED: switching to 320x200 fullscreen is also supported by GZDoom, but I think the original poster meant simulating 320x200 at a modern resolution, like 1920x1080.

 

For what it is worth, you can do this with GZDoom 3 if you do the following:

 

1) Use the software renderer: vid_renderer 0

2) Use the OpenGL frame buffer: vid_glswfb 1

3) Select your desired display resolution, i.e. 1920x1080

4) Force it to upscale a low resolution: vid_max_width 320 and vid_max_height 240

5) If you are full screen, toggle full screen off and back on (otherwise the vid_max_width and vid_max_height cvars won't take effect immediately)

 

The vid_max_width and vid_max_height cvars only work with the software OpenGL framebuffer backend.

Share this post


Link to post
7 hours ago, MaxED said:

ZDoom LE does all OP wants.

sccLBP3.png

It doesn't, because 320x200 is a 16:10 resolution here and not 4:3. 320x200 vanilla-style on an LCD display requires a special scaler like Chocolate Doom's.

 

6 hours ago, dpJudas said:

@MaxED: switching to 320x200 fullscreen is also supported by GZDoom, but I think the original poster meant simulating 320x200 at a modern resolution, like 1920x1080.

 

For what it is worth, you can do this with GZDoom 3 if you do the following:

 

1) Use the software renderer: vid_renderer 0

2) Use the OpenGL frame buffer: vid_glswfb 1

3) Select your desired display resolution, i.e. 1920x1080

4) Force it to upscale a low resolution: vid_max_width 320 and vid_max_height 240

5) If you are full screen, toggle full screen off and back on (otherwise the vid_max_width and vid_max_height cvars won't take effect immediately)

 

The vid_max_width and vid_max_height cvars only work with the software OpenGL framebuffer backend.


This happened:

MGwoPA1.png

Am I doing something wrong?

 

E: There is a switch in the menu for the display canvas (GL or D3D) but there is no such cvar as vid_glswfb either in 3.0.1 or dev builds.

Edited by Woolie Wool

Share this post


Link to post
2 hours ago, Woolie Wool said:

Am I doing something wrong?

 

E: There is a switch in the menu for the display canvas (GL or D3D) but there is no such cvar as vid_glswfb either in 3.0.1 or dev builds.

Hmm, seems the settings are only working in windowed mode. At least it wasn't supposed to cover only half the screen. If you are in windowed mode it shows you a 320x240 Doom upscaled to fit the window, right? If so, you might still be able to get the effect if you use one of those tools that remove the window decorations in windowed mode (can't remember the name of one of them right now).

 

About the cvar - I must be misspelling it somehow, but it is the switch in the menu you're referring to that has to be set to OpenGL.

Share this post


Link to post

If I'm in windowed mode, it shows me 320x200 Doom completely unscaled. On a 1920x1200 display it is completely unplayable because I cannot see shit.

 

Are you on Linux by any chance? Googling that cvar suggests it only appears on Linux or has something to do with it.

Share this post


Link to post

Sorry, seems the cvar in Windows is called vid_used3d and needs to be false. It is supposed to create something like this in windowed mode:

 

sF2pWXZ.png

 

That's a maximized window of GZDoom 3.0.1 at 4K (3840x2160). The game canvas is 320x240, which with 1.2 pixel stretching means it should look like 320x200 Doom did.

Share this post


Link to post

Well it works when maximized, but 320x240 doesn't actually look like 320x200, especially in the HUD. You cannot stretch 320x200 into 320x240, it has to be actually rendered in 320x200 and stretched directly to your native resolution to look correct. As it is, in either 320x200 or 320x240, the HUD is seriously ugly due to scaling artifacts. This isn't good enough for a "retro" experience.

 

Remember that with this sort of thing, the little details aren't just important; they're the entire point.

Edited by Woolie Wool

Share this post


Link to post

 Last time i tried the OpenGL canvas in software mode (last QZDoom version) i got a black screen, on an ancient ati card supporting OpenGL 2 so i guess GL 3 is required.
 With ZDoom LE (and actually all ZDoom variants) have you tried to force 4:3 aspect ratio?
 On win9x 320x200 was supported natively and then was 320x240 up to XP with relatively old cards.
 On Vista and later the low res modes are actually pixel doubled and quadrupled direct3d or ddraw modes.
 With ZDoom LE you get the low detail modes as well. BTW i'm planning to release a minor update soon to include some compatibility fixes and the Heretic lava timing bugfix.

Share this post


Link to post

I see your point. I had "HUD preserves aspect ratio" to off, so I never noticed the HUD scaling issue.

 

As for the little details, I agree with you, although I'd say it fooled me into believing it was genuine. But then again, last time I launched Doom in 320x200 was somewhere around 1995. :)

Share this post


Link to post
15 hours ago, Arctangent said:

... You do realize that Doom's rectangular pixels are caused by running a 320x200 full screen program on a 320x240 display

You mean a 4:3 aspect ratio display. Vanilla Doom does not in any sense run on a "320x240 display".

 

44 minutes ago, Woolie Wool said:

Well it works when maximized, but 320x240 doesn't actually look like 320x200, especially in the HUD. You cannot stretch 320x200 into 320x240, it has to be actually rendered in 320x200 and stretched directly to your native resolution to look correct. As it is, in either 320x200 or 320x240, the HUD is seriously ugly due to scaling artifacts. This isn't good enough for a "retro" experience.

Not all graphics cards or monitors support 320x200 and even if they support it, it's very unlikely you'll see it as you would on a '90s CRT monitor. Things a modern monitor is likely to get "wrong" include:

 

  • Aspect ratio - you might get square pixels, or the 4:3 aspect ratio screen might be squashed out to fill a widescreen display
  • Linear scaling algorithm - this is supposed to "smooth out" displays when rendering at a different resolution to the monitor's native resolution, but for Doom it'll end up looking blurry or "smeared", kind of like how OpenGL source ports look with texture filtering turned on (and a large number of people dislike).

 

I don't hold any grudge against monitor manufacturers for this behavior since supporting long-obsolete resolutions like 320x200 is a rather obscure corner case nowadays. But the important thing is that you can't rely on a modern monitor to produce something similar to what a '90s CRT would look like.

 

That's why Chocolate Doom just does the scaling itself, because we can get the desired results far more reliably when it's controlled in software. In fact, Chocolate Doom v3.0 just runs at your monitor's native resolution and doesn't even provide a setup option to change resolution.

Share this post


Link to post
27 minutes ago, fraggle said:

That's why Chocolate Doom just does the scaling itself, because we can get the desired results far more reliably when it's controlled in software. In fact, Chocolate Doom v3.0 just runs at your monitor's native resolution and doesn't even provide a setup option to change resolution.

I really wish I could get away with just doing this. Unfortunately, my experience with how many uses ZDoom there will someone, somewhere, that pulls out a S3 Virge3D out of their ass and complains about not being able to drop into a lower resolution. :(

 

The Mac version of GZDoom actually does exactly what you describe here, except it does the hardware vendor mistake of not applying 1.2 scaling to 320x200. :)

Share this post


Link to post
48 minutes ago, fraggle said:

That's why Chocolate Doom just does the scaling itself, because we can get the desired results far more reliably when it's controlled in software. In fact, Chocolate Doom v3.0 just runs at your monitor's native resolution and doesn't even provide a setup option to change resolution.

Can I just say right now that I am vehemently opposed to this? It should do as you describe as default behavior, but removing such a feature? Please, no. Hell no, in fact.

 

The custom resolution stuff should be tucked away in an "advanced settings" corner, sure, because most people don't have a use for it. On the other hand, I still keep CRTs laying around, if I can't output 640x400 to it to get the proper look on it, then what's the point?

 

Sure, video cards are eventually not going to even have analog output at all, but why kill it now when it's still widely supported?

Share this post


Link to post
11 minutes ago, Blastfrog said:

Can I just say right now that I am vehemently opposed to this? It should do as you describe as default behavior, but removing such a feature? Please, no. Hell no, in fact.

 

I had a similar initial reaction when @fabian first implemented it that way, but after thinking about it a bit I realised it made sense. When scaling is done in hardware (as it is in v3.0) there's no reason to run at anything other than the monitor's native resolution. It makes no difference to performance any more (and Chocolate Doom is capped at 35fps anyway) or quality (Chocolate Doom always renders at 320x200 and you can't do better than displaying at the monitor's native resolution).

 

The setting's still available, hidden away in the configuration file if you really feel you need it for something.

Share this post


Link to post
4 minutes ago, fraggle said:

The setting's still available, hidden away in the configuration file if you really feel you need it for something.

Ohhh, okay. I misunderstood, I thought that you said that you outright removed the whole thing. I guess the wording "setup option" should've tipped me off.

 

Cool, then.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×