fabiangreffrath / crispy-doom

Crispy Doom is a limit-removing enhanced-resolution Doom source port based on Chocolate Doom.
https://fabiangreffrath.github.io/crispy-homepage
GNU General Public License v2.0
808 stars 132 forks source link

[Suggestion] Hexen: Crispy Hud #1235

Open Noseey opened 1 week ago

Noseey commented 1 week ago

Here a suggestion for a Hexen Crispy Hud, applying the same methodology as for the Heretic one.

The Split Line is between the Item- and the Weapon-Pieces-Widget, since alot of weapons (especially for the warrior) are off-center to the right: 2024-11-06 21_54_39-Hexen - Crispy Doom 7 0 0

This is how it looks like: 2024-11-06 21_53_59-Hexen - Crispy Doom 7 0 0

.. and here the item bar: 2024-11-06 21_54_23-Hexen - Crispy Doom 7 0 0

Characteristics:

Due to the spacing and size of the widgets, it is alot more cramped than the heretic one. In 4:3 the weapon-pieces widget tends to overlap alot of weapons. This effect disappears when going to a wider aspect ratio.

I was thinking about not drawing the weapon-pieces widget at all, but I think there is no other place you can get the information from in-game.

Let me know your thoughts, thanks!

fabiangreffrath commented 1 week ago

I like it. Any chance for the icon bar not to partly overdraw the underlying widgets?

fabiangreffrath commented 1 week ago

I like it. Any chance for the icon bar not to partly overdraw the underlying widgets?

This is what I mean. It looks better in Heretic:

image

fabiangreffrath commented 1 week ago

Maybe the mana and weapon pieces widgets can be disabled as long as the icon bar is active.

Noseey commented 1 week ago

I like it. Any chance for the icon bar not to partly overdraw the underlying widgets?

You are right, the widgets sticking out to the side looks a bit messy

Maybe the mana and weapon pieces widgets can be disabled as long as the icon bar is active.

Thats a good idea! I will try to implement it and provide an update.

Noseey commented 1 week ago

I got it working. Basically, when the inventory is open, only the health and armor is drawn: 2024-11-07 17_44_35-Hexen - Crispy Doom 7 0 0

However, this currently applies across all aspect ratios, even for those where no overlapping occurred in the first place (21:9, 16:9): 2024-11-07 17_45_10-Hexen - Crispy Doom 7 0 0

Should this behavior remain uniform or should I add a check to only apply it for 4:3 and 16:10, where the issue is present?

fabiangreffrath commented 1 week ago

Should this behavior remain uniform or should I add a check to only apply it for 4:3 and 16:10, where the issue is present?

Instead of hard coding aspect ratios, I'd prefer if you could check horizontal patch positions and widths instead.

Noseey commented 1 week ago

Instead of hard coding aspect ratios, I'd prefer if you could check horizontal patch positions and widths instead.

Glad you mentioned that, its the better solution. I have choosen the two widgets that would intersect first when reducing the overall screen width: ManaPatch2 and Gem1 2024-11-07 19_12_11-Hexen - Crispy Doom 7 0 0

So there has to be at least 1px spacing between them in order to draw all remaining widgets, otherwise an intersect is detected.

fabiangreffrath commented 1 week ago

That'd be the best solution.

Noseey commented 1 week ago

Here the solution at work:

16:9 Inventory Bar 2024-11-07 23_10_36-Hexen - Crispy Doom 7 0 0

16:10 Inventory Bar 2024-11-07 23_10_57-Hexen - Crispy Doom 7 0 0

fabiangreffrath commented 1 week ago

Great, thank you!