Jump to content

Better spotting (resolution and anti-aliasing independent)


Inf

Recommended Posts

Probably discussed to death already but, the current solution to rendering distant aircraft as a single black pixel doesn't scale for different resolutions (eg. high-res display pixels are significantly smaller than low res). It also pushes players away from using anti-aliasing (as those distant contacts get smoothed out of existence).

I'd really like to see (hur hur) aircraft visibility improved, maybe using a combination of smart-scaling, resolution-independent standins (like use a small sprite instead of a pixel), and visual effects (eg sun glints) to catch the eye.  Or whatever else the talented folks at ED can think up!

Totally appreciate that maintaining visual contact is a real challenge that's hard to do in real life, but feel like we're fighting the graphics most of the time. I don't think anyone really wants to fly with labels on. 

I'd even take a highlight aid that you can toggle on with a keypress to subtly highlight contacts when they get lost in the pixel soup.


Edited by Inf
  • Like 15
Link to comment
Share on other sites

The sprite method was tried a few years ago. It didn’t work well since a sprite of even a few pixels results in distant objects being vastly oversized. Targets could be seen from crazy distances like across the entire map.

  • Like 1

i9-13900K @ 6.2GHz oc | ASUS ROG MAXIMUS Z790 HERO | 64GB DDR5 5600MHz | iCUE H150i Liquid CPU Cooler | 24GB GeForce RTX 4090 | Windows 11 Home | 2TB Samsung 980 PRO NVMe | Corsair RM1000x | LG 48GQ900-B 4K OLED Monitor | CH Fighterstick | Ch Pro Throttle | CH Pro Pedals | TrackIR 5

Link to comment
Share on other sites

6 hours ago, Inf said:

I don't think anyone really wants to fly with labels on.

You can consider using dot labels. Is your fov even close to showing you RL angular sizes?

Additional effects for distant contacts are planned but sprites or scaling is not - it's unrealistic.

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

I'd like to see the return of the enlarged visual model as well (it existed briefly during the 2.0 Alpha days). It had some issues with the implementation that ultimately got it removed, but I feel like this was more about not wanting to go through the effort of optimizing the engine rather than being an insurmountable technical problem (correct me if I'm wrong).

Something else they might try is a slightly better labels system that only places labels on objects that you can see (ie the labels vanish for objects behind terrain or hidden behind your plane's cockpit).

3 hours ago, draconus said:

You can consider using dot labels. Is your fov even close to showing you RL angular sizes?

Additional effects for distant contacts are planned but sprites or scaling is not - it's unrealistic.

 

Screen resolution poses realism problems. Scaling is just a method to counter this. I'd say it's more realistic if done properly.


Edited by Exorcet
  • Like 6

Awaiting: DCS F-15C

Win 10 i5-9600KF 4.6 GHz 64 GB RAM RTX2080Ti 11GB -- Win 7 64 i5-6600K 3.6 GHz 32 GB RAM GTX970 4GB -- A-10C, F-5E, Su-27, F-15C, F-14B, F-16C missions in User Files

 

Link to comment
Share on other sites

9 minutes ago, Exorcet said:

Screen resolution poses realism problems.

It's not a problem. It's as intended. In computer gfx the aircraft's size is calculated before rendering, then it's rendered in proper LOD, when further away it eventually gets to one pixel, it's color still being calculated until it fades away. If this process is done properly it should work independently of the resolution. I don't know the current state - fake black dots might still be used in DCS. I support fully the wish to fix this rendering process and add more effects like object shine as opposed to fake scaling.

It's like you take a picture and you don't see every insect in the area in the image - that's how it works.

  • Like 1

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

2 minutes ago, draconus said:

It's not a problem. It's as intended. In computer gfx the aircraft's size is calculated before rendering, then it's rendered in proper LOD, when further away it eventually gets to one pixel, it's color still being calculated until it fades away. If this process is done properly it should work independently of the resolution. I don't know the current state - fake black dots might still be used in DCS. I support fully the wish to fix this rendering process and add more effects like object shine as opposed to fake scaling.

It's like you take a picture and you don't see every insect in the area in the image - that's how it works.

Sure, but the intent of scaling isn't to make every insect visible. The math for sizing pixels is straight forward enough, but it's not sufficient to make image quality the same as reality. Human eyes don't see in pixels, and while the size of objects relative to monitor FoV might be correct in DCS we're still probably losing visual information that we would have in reality because of the distortion caused by low resolution (compared to the eye) screens.

I do agree that more visual effects and better rendering would help though and I do want to see these added as well.

  • Like 4

Awaiting: DCS F-15C

Win 10 i5-9600KF 4.6 GHz 64 GB RAM RTX2080Ti 11GB -- Win 7 64 i5-6600K 3.6 GHz 32 GB RAM GTX970 4GB -- A-10C, F-5E, Su-27, F-15C, F-14B, F-16C missions in User Files

 

Link to comment
Share on other sites

8 minutes ago, Exorcet said:

The math for sizing pixels is straight forward enough, but it's not sufficient to make image quality the same as reality.

Sure thing but that's display technology limitation every simmer understands.

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

On 10/25/2022 at 4:16 AM, draconus said:

You can consider using dot labels. Is your fov even close to showing you RL angular sizes?

Additional effects for distant contacts are planned but sprites or scaling is not - it's unrealistic.

So is sitting in a dark room with a Track IR on your head. 

"Unrealistic" is such a silly thing to say.

IRL, you can SEE aircraft at large distances.
In game, you cannot. So the GAME is already "Unrealistic."

  • Like 7
Link to comment
Share on other sites

19 minutes ago, Orwell said:

IRL, you can SEE aircraft at large distances.

Define “large distance”… you can’t see a fighter sized aircraft at 40 miles. With the old sprite system that was tried you could see aircraft from across the map and ground targets which were effectively the size of skyscrapers. It’s a fine line between making something realistically visible and making it too visible. 

i9-13900K @ 6.2GHz oc | ASUS ROG MAXIMUS Z790 HERO | 64GB DDR5 5600MHz | iCUE H150i Liquid CPU Cooler | 24GB GeForce RTX 4090 | Windows 11 Home | 2TB Samsung 980 PRO NVMe | Corsair RM1000x | LG 48GQ900-B 4K OLED Monitor | CH Fighterstick | Ch Pro Throttle | CH Pro Pedals | TrackIR 5

Link to comment
Share on other sites

On 10/25/2022 at 12:35 PM, draconus said:

...., when further away it eventually gets to one pixel, it's color still being calculated until it fades away. If this process is done properly it should work independently of the resolution.

 

except, a single pixel in 1080p is 4 times the size of a single pixel in 4K.

As higher resolutions become more common, ED should take that into account.

Spotting is an issue in DCS. Single pixels that may even be outwashed by anti aliasing (or other gfx) are not a proper real life equivalent.


Edited by Hiob
  • Like 8
  • Thanks 1

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

1 hour ago, Hiob said:

except, a single pixel in 1080p is 4 times the size of a single pixel in 4K.

As higher resolutions become more common, ED should take that into account.

Spotting is an issue in DCS. Single pixels that may even be outwashed by anti aliasing are not a proper real life equivalent.

If you only see a spot in the sky, how is the pixel different from it?

Of course pixels have different sizes - it doesn't matter for gfx engine. Calculations of geometry decide if it's rendered and how. If some AA or other algorithm makes the pixel disappear closer than it should - that should be reported and fixed.

Take a picture of an aircraft. Put it full screen on your monitor and that's it. This is the best how it can look with current display tech. You have some freedom in DCS to zoom in or out a bit, that's all.

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

To be clear, seeing dots at a distance isn't the only visibility issue.
Objects get lost against the background far too easily imo.  Sure, this happens in real life as well ("losing tally" wouldn't be a thing otherwise), but in the game we're also fighting against aliasing, texture filtering, and res/fov differences. Plus in real life, our eyes and brains are just that much better at focusing and picking out objects at different distances.

All this means , that for me at least, I end up playing this game leaning forward squinting at the monitor trying to look for pixels (sometimes getting them confused with specks of dirt), and losing sight of my target the instant it dips in front of literally any other object. I've seen plenty of people using post-processing effects to increase sharpness and add subtle outline, to help combat this.
Feel like.. there are obvious limitations with the graphics, and we can't perfectly recreate reality. That's fine. But I also think it's inaccurate to say it's more realistic/immersive without any visual assistance, because we have to deal with problems in the simulation that just aren't an issue in real life.

I'd lean towards playability and accessibility anyday.

  • Like 8
  • Thanks 1
Link to comment
Share on other sites

The game supporting HDR would go a long way towards improving spotting. Higher contrast and deeper color would be a big help. 


Edited by SharpeXB
  • Like 1

i9-13900K @ 6.2GHz oc | ASUS ROG MAXIMUS Z790 HERO | 64GB DDR5 5600MHz | iCUE H150i Liquid CPU Cooler | 24GB GeForce RTX 4090 | Windows 11 Home | 2TB Samsung 980 PRO NVMe | Corsair RM1000x | LG 48GQ900-B 4K OLED Monitor | CH Fighterstick | Ch Pro Throttle | CH Pro Pedals | TrackIR 5

Link to comment
Share on other sites

14 hours ago, draconus said:

Of course pixels have different sizes - it doesn't matter for gfx engine.

While it indeed doesn't matter to the render engine, the results can be quite different. A standard (painter-algorithm, not RTX) render engine is not aware how much of the view angle pixels represents. The color of any pixel is a result of the reflected color of what the geo engine determines to be the closest surface (plus some transparency proccing), with some anti-aliasing and other post proccing added on top (the post-proccing is pixel-level (non-geometric) stuff to mush pixels together with the aim to avoid jaggies and add color, occlusion shadows and reflections). So if you double the resolution and thereby quadruple the number of pixels, you can easily demonstrate that the results visually can be very different; this is a peculiarity of the way that the painter's algorithm works [please see edit below]: say that you look at a far away plane in resolution A: the geo engine determines that its the closest surface for that pixel against the infinitely distant sky, and it is so far away that it only registers for that pixel. So, it fills exactly that one pixel. Now switch to resolution 2*A and look at that same plane. Again, it only fills one pixel. That same plane is visually only 1/4 of the size that it had in resolution A. It's a very, very, VERY notable effect for VR players, where due to fact that the HMD's lenses enlarge pixels this effect is exacerbated:  better (read: higher resolution) HMD often give you lesser distant visibility. This is not a question of realism, it's a limitation of the rendering hardware/software combo. It can be worked around, by some of the suggested methods that may or may not compromise realism (due to the limitations of the display hardware there is not one solution that fits all). In the end, it comes down to ED weighing playability versus rendering ability. 

 

[EDIT: I realized that I was somewhat unclear, so if you are interested, please bear with me:

Most common painter's algorithm based render engines work this way:

  • The canvas has a 'Z-buffer' that records the distance of the currently drawn pixel to the camera. The canvas pixels are initialized to 'infinite' as distance. 
  • The geo engine breaks all objects into smaller 3D triangles and then starts rendering them by rasterizing them and then interpolating the distance for each pixel that is it's projected position on the screen. If the pixel is closer to the camera than the currently recorded distance, it is painted over with the  color of that triangle, and the engine then records the new (closer) distance of the new pixel in the canvas
  • Important: Each triangle, when inside the view frustum will usually render to at least one pixel because each triangle projects to least one pixel - the minimal display size.

The important point is that if you draw an object, it will always be at least one pixel in size (unless you clip it for distance). That (usually considered an edge case for most render engines) is what makes the difference in DCS: the minimally-sized single pixel object is much smaller (1/4 size) on a 2A resolution compared to resolution A. The result is that low-resolution A screens show a much more visible one-pixel object compared to a 2A resolution screen with the same clipping distance if the object in both projections is far enough to collapse into a single pixel. This regularly happens with far away planes in DCS which aren't clipped but collapse into a single pixel.

]


Edited by cfrag
  • Like 3
Link to comment
Share on other sites

43 minutes ago, cfrag said:

...say that you look at a far away plane in resolution A: the geo engine determines that its the closest surface for that pixel against the infinitely distant sky, and it is so far away that it only registers for that pixel. So, it fills exactly that one pixel. Now switch to resolution 2*A and look at that same plane. Again, it only fills one pixel. That same plane is visually only 1/4 of the size that it had in resolution A.

The engine should not work like that, and if it is - this should be fixed. The engine knows the resolution and fov so it can calculate angular sizes. Plus it's not binary - there's 32bit for colors to choose from for not only that pixel but also the ones next to it.

My vote for perfecting the image within technical limits of display tech. If someone wants to chose more playability/accesibility - there are labels already. Most visibility problems come from people with high fov displayed on high res, small screen, set far from the user, resulting in much smaller objects than IRL wrt angular sizes.

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

1 minute ago, draconus said:

The engine should not work like that, and if it is - this should be fixed.

It's how the engines are designed. In DCS, for this particular use case (far away objects that aren't distance-clipped) we run up against the 'at least one pixel' hardware limit. Today's graphic engines don't draw objects like the eye sees them but how the object sees the canvas, and thus they will always have a minimal size of one by one pixels. I'm not saying that is wrong or right - it's the inherent way these algorithms work, and they have proven to be very effective in 99.9% of all use cases, and due to their simplicity can be easily vectored. Other, more elaborate algorithms would work less effective across the board for a maybe 0.1% gain in accuracy.

Link to comment
Share on other sites

5 minutes ago, draconus said:

The engine should not work like that, and if it is - this should be fixed. The engine knows the resolution and fov so it can calculate angular sizes. Plus it's not binary - there's 32bit for colors to choose from for not only that pixel but also the ones next to it.

My vote for perfecting the image within technical limits of display tech. If someone wants to chose more playability/accesibility - there are labels already. Most visibility problems come from people with high fov displayed on high res, small screen, set far from the user, resulting in much smaller objects than IRL wrt angular sizes.

I'm playing on an 48" Oled with a FOV between 75-95.......

I watched Airliners from my balcony yesterday evening. Thing is, they are easily spotable - even when they are just "one pixel" in size. You see a very distinct dot against a perfectly smooth background. Of course lighting conditions and weather play a role here.

I think part of the problem in DCS is lighting and color/contrast/sharpness. Depth perception and parallax (or the lack thereof) may also play a role....

  • Like 1

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

16 minutes ago, cfrag said:

It's how the engines are designed.

They don't until they are forced to - like a strict rule that the fighter is always at least 1 black pixel up to 10nm, no matter the res, which DCS was accused of using afair. This is wrong but it might have been applied just to even out the playing field. There is no other way to get the same result of 1 pixel in 4k vs FullHD. The math just don't allow it apart from some specific range.

11 minutes ago, Hiob said:

I'm playing on an 48" Oled with a FOV between 75-95.......

I watched Airliners from my balcony yesterday evening. Thing is, they are easily spotable - even when they are just "one pixel" in size. You see a very distinct dot against a perfectly smooth background. Of course lighting conditions and weather play a role here.

I think part of the problem in DCS is lighting and color/contrast/sharpness. Depth perception and parallax (or the lack thereof) may also play a role....

You can see "dots" of airliners at 20nm easily in DCS. As of your display hardware you left important variable - monitor distance, but you probably also see objects smaller than you'd see IRL - which puts you already at a disadvantage vs RL. Of course you can zoom in or use lower fov but it's always a compromise with monitors. Parallax of eyes does not play any role in far distances.

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

18 minutes ago, draconus said:

You can see "dots" of airliners at 20nm easily in DCS. As of your display hardware you left important variable - monitor distance, but you probably also see objects smaller than you'd see IRL - which puts you already at a disadvantage vs RL. Of course you can zoom in or use lower fov but it's always a compromise with monitors. Parallax of eyes does not play any role in far distances.

Arms length....

Also, that is stereoscopy, I'm talking about parallax - that's not the same.

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

10 minutes ago, Hiob said:

Also, that is stereoscopy, I'm talking about parallax - that's not the same.

Both are very much connected. Can you explain what you meant?

🖥️ Win10 i7-10700KF 32GB RTX3060   🥽 Rift S   🕹️ T16000M HOTAS   ✈️ FC3, F-14A/B, F-15E   ⚙️ CA   🚢 SC   🌐 NTTR, PG, Syria

Link to comment
Share on other sites

3 hours ago, draconus said:

Both are very much connected. Can you explain what you meant?

No, not necessarily. You don't need stereoscopic view for parallax effects. Just a switch in position or moving of an object relative to a more distant background.

Anyway - that is not the point here. And I'm not sure if that is really one of the things, that helps perception in the real world. But I think even very, very subtle effects like this are picked up by our natural sight. Our eyes (our brain) is exceptional good at keeping an object steadily in the focus/center of our view - the relative movement of the background can therefore be picked up easily.

A pixel in a pixel-soup on the other hand is constantly moving. There is no way (at least with trackir) to keep it dead centered. A 2D, pixel-rendered world simply can't represent reality 100% accurate. There is more to it than just calculating the apparent size of an object.

Not compensating for such shortcomings is an oversight in my opinion.

I know - the purists don't want anything that isn't there in reality. But there are things that are missing in a simulation, and personally I would prefer a balanced approach that leads to a realistic overall result/experience. By emphasizing some aspects (like sound e.g.) a bit "over-realistic", to compensate for some aspects of reality that simply can't be reproduced in a simulation.

Edit: typos


Edited by Hiob
  • Like 2

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

Again, a big part of the problem is that DCS renders only 16.7 million colors (SDR) instead of the 1 billion (HDR) that most all newer displays can support. That’s part of the reason you have so much trouble tracking a colored target against a colored background. 

i9-13900K @ 6.2GHz oc | ASUS ROG MAXIMUS Z790 HERO | 64GB DDR5 5600MHz | iCUE H150i Liquid CPU Cooler | 24GB GeForce RTX 4090 | Windows 11 Home | 2TB Samsung 980 PRO NVMe | Corsair RM1000x | LG 48GQ900-B 4K OLED Monitor | CH Fighterstick | Ch Pro Throttle | CH Pro Pedals | TrackIR 5

Link to comment
Share on other sites

I think we should return to sprites.

Yes, sprites used to be too big, but the fix to sprites that are too big is to make them smaller, not to scrap the whole thing.

If we want to render tiny distant targets, we have to render them after any anti-aliasing, ambient occlusion, etc. Which means, sprites are the perfect solution for that, it's what sprites are - bmp images pasted over anything else on a screen.

They used to be too big and they rendered at too far of a distance -> fix the size and maximum render distance, don't throw the baby with the bathtub. Or better, once it reaches the max distance, only render flashes of light dependent of the aspect of the target and angle of the sun and an observer. Seeing an occasional flash of reflection of the sun from a canopy glass at 50nm is pretty realistic. There's plenty of room for improvement, and whether it's done by dynamically generated sprites or 3d rendering that's separate and pasted over the AA scene or whatever other technique, I don't really care, but the way it is now is just totally game-breaking for any sort of visual combat.

At 5-ish miles, there should be a transition between the sprite and a 3d rendered model, but that transition also has to be handled well. As it is now, the transition from 1 pixel to full render just makes the airplane disappear in VR and higher res screens in certain distances and zoom levels.

I know that lot of people can see airplanes at 20-ish miles when they zoom in on 1080p. I could not the airplane at 5 miles at 1440p, same for ground targets, which is why I only fly aerobatics, I just don't own an old enough monitor to play any sort of combat, and frankly, it would feel really bloody dumb if I had to buy lower res monitor just to see other airplanes in DCS. If I do a dogfight and both of us enter the merge a bit fast, when we're the furthest away from each other, the target disappears for me - both in VR and in 1440p ultrawide. I know the target's there, I know that the target will eventually appear if I correctly predict where it's going to be, but for a while there, I can't keep visual because the visual just plain doesn't render, or at best renders as 1 pixel on a monitor that's not really meant to have individual pixels distinguishable.

Paradoxically, with all the 1 pixel rendering weirdness, the airplane is often visible when my nose is touching the monitor only when I zoom out in game. When zooming in, the black pixel disappears at certain distances, which makes even less sense.

It's a bit better in VR for me, but only if I scale down the pixel density and remove all AA.

The whole point of modern "retina" and 4k displays is that the pixels are so small that you don't see individual pixels, which makes the DCS decision to render a single pixel rather nonsensical.

Yes, sprites make the airplanes bigger than in reality, which is unrealistic, but labels are way less realistic than that, and there's currently no way to spot without labels on 1440p+ and AA on.

So, yes please, we do need this fixed - losing a visual on an airplane 5 miles away against blue sky is absolutely a game breaking bug, it literally takes the C out of DCS.

  • Like 4
Link to comment
Share on other sites

17 minutes ago, JCTherik said:

The whole point of modern "retina" and 4k displays is that the pixels are so small that you don't see individual pixels, which makes the DCS decision to render a single pixel rather nonsensical.

Agree!

18 minutes ago, JCTherik said:

Yes, sprites used to be too big, but the fix to sprites that are too big is to make them smaller, not to scrap the whole thing.

The problem with sprites is if they are even 3 pixels, which was the minimum size before, they’re too big. That size for a distant target is gigantic. 

  • Like 1

i9-13900K @ 6.2GHz oc | ASUS ROG MAXIMUS Z790 HERO | 64GB DDR5 5600MHz | iCUE H150i Liquid CPU Cooler | 24GB GeForce RTX 4090 | Windows 11 Home | 2TB Samsung 980 PRO NVMe | Corsair RM1000x | LG 48GQ900-B 4K OLED Monitor | CH Fighterstick | Ch Pro Throttle | CH Pro Pedals | TrackIR 5

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...