Author Topic: HUD Overhaul Test Build  (Read 44413 times)

0 Members and 1 Guest are viewing this topic.

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Skype
    • Steam
    • Twitter
No, unfortunately
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 
Well, playing around with this build got me thinking on a couple different angles.

1. Creating native huds for larger resolutions makes all of the elements tiny. It's probably best to create a table entry at a lower resolution than native so that it scales up the elements in size somewhat. For example, instead of making the default resolution for my 16:10 eyefinity hud 5760x1200, I perhaps should have used 4320x900, or 5040x1050. On the other hand, someone at 7680x1600 might want to use my 5760x1200 hud (so that the elements aren't too far blown up)

2. A much more elegant solution would be to have all of the basic positioning and and scaling in the source code rather than in a table file. Instead of an absolute postional value, the hud elements should be based on a reference to either the center of the screen or one of it's sides. Common eyefinity/surround resolutions can be detected and compensated in the source code. It also shouldn't take too much extra too detect and compensate for bezel correction (which most surround users will be using) by looking for 'near' eyefinity-type resolutions with slightly extnded horizontal resolution (say, within 512px). For example, the program would see 6016x1200 as 5760x1200 with a bezel correction of 128px per side and move the side elements closer to the center.

The table method is certainly welcome, and aside from bezel correction it should be easy enough to load the table with all of the common resolutions people use. The issue I see is that any mod that decides to rearrange the hud elements will have to create a large amount of table entries. And if that mod wants to create custom huds on a per-ship basis then that's going to be a lot of table editing to cover all of the different aspects/resolutions. An automated system where they only need to create one template and the engine intuitively scales the template to any resolution would be better.
« Last Edit: September 28, 2010, 08:43:29 pm by hurleybird »

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Skype
    • Steam
    • Twitter
Actually, realistically speaking, they should only have to create two entries, one for 4:3 and one for widescreen resolutions. Triplehead configs like yours are the exception, believe it or not.
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 

Offline Kolgena

  • 211
Actually, realistically speaking, they should only have to create two entries, one for 4:3 and one for widescreen resolutions. Triplehead configs like yours are the exception, believe it or not.

Widescreen as in 16:9 or 16:10?

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Skype
    • Steam
    • Twitter
Yes.
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 
Triplehead configs like yours are the exception, believe it or not.

 :D

Yeah, there *is* that. With the lowering costs of monitors and the march towards graphics cards with three display outputs, there will be more and more of us, but we'll always be in the minority. I can see more FS2 players using triple head than average, just as more FS2 players use TrackIR than average. 5:4 is still going to stretched 4:3 (albiet not extremely noticable like 4:3 vs. 16:9), as is 16:9 vs. 16:10.

Now, obviously the new system for HUDs is a million times better than what we had before, but it would still be nice to have a more intuitive approach to how things are handled. Another thing to keep in mind is that people with triple head setups tend to actively seek out games that handle ultra-wide resolutions well. Again, I'm perfectly happy (and thankful!) with the new system, but a relative hud would just be that much better.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️À➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Well, I don't see a reason not to include configs for these additional setups, whether it be 3x 16:10 or 3x 10:16, or 3 wide with another one on top of the middle one, etc.  But someone has to create the tables is all.  Once that's done just about any mod that uses the MediaVPs could probably have them available.  I'm not sure how to make it much more intuitive the way the engine is set up right now.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
me personally im happy with a single 1080p screen and my trackir. 3 or more screens would be awesome, but nowhere within my budget. also, while it may give you a huge natural field of view in the horizontal, you still have a very narrow vertical view angle. you could pair it with the trackir but i think it would be too disorientating. i kinda wish instead that each monitor would have its own camera space, so that you can put the monitors in any position in real space and have them correspond to similar positions in simulated space. this would make it better for example if you had screens of various native resolutions. you could arrange them any way you see fit and you would just have to model the configuration in the table. would also solve the bezel management issues. doesnt sound very likely (any time in the near future) though.

it also seems to me that while game graphics have kind of stagnated in the past few years in terms of the speed at which they improve. monitor resolutions are going up. maybe we should consider the possibility that we need additional art sets for the hud (and interface) to accommodate less archaic resolutions. when you start picking up 1024x768 screens at garage sales for 5 bucks, its a sign that any screens at that native resolution is obsolete junk. :D

you could stretch the hud graphics, but you can only make them so big before you get ugly scaling artifacts. since the scaling difference between 640x480 (is that resolution even supported on modern operating systems?) and 1024x768 is 1.6x in the horizontal, which means we need something in the 1600 wide ballpark, and since many monitors above 1024 (aside from the 1280x1024 era that seemed to last forever) seem to be widescreen resolutions, i think a set in the 1680 x 1050 resolution would be a good point to create an image set for. it would scale up to other 16:9/10 resolutions pretty well. i wouldnt mind having a set in the 1080p standard, but that might be asking too much. pretty soon you would end up with art sets for every resolution.

i wouldnt mind the game being completely agnostic to the size of the images it would use on the hud. it would find the one that closest matches the required size and then scale it automatically. then make it so aspect ratio, not screen resolution, determines the layout data to use. images can always be scaled to whatever multiple of the aspect ratio is in use.

another thing i think we should consider is to not invalidate someone's hud tables if they are trying to make the game work with their video hardware. you can do this either by considering every possible screen resolution known to man, and include it in the tables (youd still get issues with people running multiple screens). something where hud layout by aspect ratio would come in handy. the other way to make an edit-friendly hud table for setting resolutions that the table distributed with the freespace upgrade doesnt include.
« Last Edit: September 29, 2010, 01:08:09 pm by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Skype
    • Steam
    • Twitter
maybe we should consider the possibility that we need additional art sets for the hud (and interface) to accommodate less archaic resolutions.

This. A thousand times this.
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
another thing i forgot to mention that i didnt want to stick in another post edit. something that may have been addressed before. the possibility to use non-ani graphics for the hud and shield icons. i noticed that most hud graphics have been limited to 16 color ani files. i wouldnt mind seeing those replaced by eff/dds graphics. that is of course if it hasnt been done yet. i havent really been keeping up with that stuff, but it would greatly improve the quality of the hud graphics if it were possible. ani is not manditory in most of the game and i would like you guys to take the format out back and shoot it. indexed color is so 90s.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
another thing i forgot to mention that i didnt want to stick in another post edit. something that may have been addressed before. the possibility to use non-ani graphics for the hud and shield icons. i noticed that most hud graphics have been limited to 16 color ani files. i wouldnt mind seeing those replaced by eff/dds graphics. that is of course if it hasnt been done yet. i havent really been keeping up with that stuff, but it would greatly improve the quality of the hud graphics if it were possible. ani is not manditory in most of the game and i would like you guys to take the format out back and shoot it. indexed color is so 90s.
I've done some testing with this actually. The engine is perfectly suited to use EFF/DDS in place of ANI. You have to make sure that the color palette is in grayscale if you want to make it look right with the color blending.

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
another thing i forgot to mention that i didnt want to stick in another post edit. something that may have been addressed before. the possibility to use non-ani graphics for the hud and shield icons. i noticed that most hud graphics have been limited to 16 color ani files. i wouldnt mind seeing those replaced by eff/dds graphics. that is of course if it hasnt been done yet. i havent really been keeping up with that stuff, but it would greatly improve the quality of the hud graphics if it were possible. ani is not manditory in most of the game and i would like you guys to take the format out back and shoot it. indexed color is so 90s.
I've done some testing with this actually. The engine is perfectly suited to use EFF/DDS in place of ANI. You have to make sure that the color palette is in grayscale if you want to make it look right with the color blending.

would that be along the lines of the dds formats like 8l or 88al or palletized (a)rgb at 4/8 bpp? those formats would certainly match the need for a single channel image. though i think it would be better to use the full range of values. some images (shield icons for example) only allow the use of the first 16 colors in an indexed color table, using anything else never worked any of the times i tested it (it also had me swearing over the creation of many a shield icon back in the day). i certainly wouldnt mind being able to have alpha information in the hud graphics, or use full color hud graphics. i just think that graphics that are always visible should have a little bit more emphasis on quality, which depends mostly on the artist (who wouldnt mind being able to use an argb8888 format). multiplicative blending seems to look ok when used with color graphics.
« Last Edit: September 29, 2010, 02:06:01 pm by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
Err, I guess I worded that wrong. No, just use your typical 32-bit full color DDS format but just make sure it's a grayish looking color. :P

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️À➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Wouldn't you just convert to grayscale and back to color then?
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
Pretty much. :P

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
and back to the issue with shield icons, could you use effs for those, but expand the color range to the full 0-255 instead of 0-15?
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
and back to the issue with shield icons, could you use effs for those, but expand the color range to the full 0-255 instead of 0-15?
I don't see anything with the HUD shield code stopping you from doing that, so try it out.

 

Offline FUBAR-BDHR

  • Self-Propelled Trouble Magnet
  • 212
  • Master Drunk
    • 165th Beer Drinking Hell Raisers
Isn't there an issue with using non power of 2 dds files? If I recall most of the hud stuff are not power of 2.
No-one ever listens to Zathras. Quite mad, they say. It is good that Zathras does not mind. He's even grown to like it. Oh yes. -Zathras

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
Yes, that's also an issue. It depends on if your video card supports GL_ARB_texture_non_power_of_two which has been in OpenGL since 1.4.

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
even though dxt1/5's only real requirement is that they be multiples of four. of course if the engine still wants powers of two, then it is ample reason to have good scaling code, since a power of two image is all you can guarantee.

and back to the issue with shield icons, could you use effs for those, but expand the color range to the full 0-255 instead of 0-15?
I don't see anything with the HUD shield code stopping you from doing that, so try it out.

i went ahead and make a rather rushed sheild icon, i went with a full color dxt1 eff and set its scale to 128^2 (hopefully the engine dont care much about the resolution not being typical of a hud icon). ingame the icon is not visible.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN