AlisterT / openjazz

OpenJazz
GNU General Public License v2.0
273 stars 49 forks source link

The in-game graphics is rendered at the same height- and not above the HUD, issues regarding that (+ feature request) #79

Open Gagert opened 3 years ago

Gagert commented 3 years ago

There seems to be an issue regarding the HUD in OpenJazz mainly because the gameplay is rendered where the HUD is placed. As the ingame-graphics and HUD shares the same play-area, the gameplay is not rendered above the HUD itself as it is in the MS-DOS release of Jazz 1.

Here's the HUD in Jazz 1 on one stage using OpenJazz:

As you can see I can't see the floor at the beginning of the stage, it looks like the HUD is the floor itself. This is not how the HUD originally behaves when running the very same stage in Jazz Jackrabbit 1 in DOSBox, because as you can see in the image below the gameplay is rendered above the HUD itself there:

This could be solved by rendering the in-game graphics above the HUD itself in OpenJazz, maybe placing the HUD in the center and adding some fancy repeating patterns on each side of it (just like running Quake 1 in widescreen in different sourceports).

If you compare that HUD with the one in Jazz Jackrabbit 2, the HUD in Jazz 2 looks way more appealing in my opinion.

By comparison the HUD in Jazz 1 looks like something from an FPS game like Doom or Quake 1, and speaking of Quake 1 which just got an enhanced multiconsole port, that new version shipped with an optional new HUD which looks way better than the old one in my opinion (the new HUD is the default one in that version).

Below is the old HUD by comparison, which shares design philosophy with Jazz Jackrabbit 1 in my opinion.

To show a more relevant example to how a new HUD fits a higher resolution on a retro game from the 90s, the recently released Zool Redimensioned can be a good example of how that's done right. The image below is Zool on the Sega Mega Drive / Genesis.

Here's the HUD occupying the bottom of the screen, much like the HUD in Jazz 1. Then compare that to Zool Redimensioned below.

Having an optional modern approach to the HUD in OpenJazz that maybe resembles more the one in Jazz Jackrabbit 2 could in my opinion make OpenJazz more appealing to the eyes when playing in higher resolutions, but most important maybe having an option to render the gameplay above the vertical height of the HUD itself, like how Jazz 1 originally ran under MS-DOS would be great.

carstene1ns commented 3 years ago

About the issue: This looks actually like the viewport is not scrolling further than the level border, which is no problem in the original version, since the HUD occupies the whole screen width there, so the vievport ends above it. I believe this was a design decision in OJ, so you can see more of the level in higher resolutions. However, in this case it actually hides a part this way. IMO we could add the static background only at the bottom of the level area, so most of the time it would be hidden.

About the improved HUD: I really like the idea! However this would need a non-trivial rewrite of some parts of the engine.