Edited by Shamous13, 04 April 2013 - 05:11 AM.
Thermal Vision Improvements From A Physicist
#41
Posted 04 April 2013 - 05:10 AM
#42
Posted 04 April 2013 - 05:24 AM
Despite being pixelated I'm comfortable that the mechs are fully targetable, I think I would stand a good chance of hitting the torso of the mech at 700m. Just because you can't make out a head doesn't mean you can't do it damage!
Something that will help is that when the scene is animated, ie not a static image, you will be able to infer much more information.
The benefit of the reduced resolution approach is that we retain the potential to spot long range targets, but it is now a much greater challenge to actually hit them, especially > 1000m. Sniping in the game with the old heat vision was very easy. I have a few "sniper" mechs and I would simply leave thermal mode engaged on any map. The devs have stated that they want the different vision modes to be dominant on different maps/times of day. I believe this proposal would better meet that critera than the current updated themal mode (which is extremely unrealistic and suffers some very unintuitive quirks).
Edited by CnlPepper, 04 April 2013 - 07:28 AM.
#43
Posted 04 April 2013 - 06:20 AM
Great suggestions, I love the idea of module upgrades for em too, if someone wants to be a sniper it'll give him the modules to do it, but force him not to take other useful modules.
#44
Posted 04 April 2013 - 06:28 AM
Nice work, I'd definately like this to be considered as a replacement for the current thermal situation.
#45
Posted 04 April 2013 - 07:09 AM
CnlPepper, on 02 April 2013 - 02:41 PM, said:
1) Render the thermal scene to a low resolution texture eg 192x108 pixel and then stretch it across the view window. In practice this will need to be oversampled to prevent aliasing, so say a 768x432 buffer and resample to 192x108.
Nice write up. The only suggestion I have is to have the resolution a percentage of the user's resolution to accommodate everyone in an equal manner. Not everyone plays at the same resolution. People with higher resolutions would be at a disadvantage and anyone with a lower res, an advantage.
Edit: Could range also be limited by the way a protective lense over the sensor works? Or even just the sensitivity of the sensor? More so on the latter. I'm looking at this from an "if you have 255 levels of grey to work with" angle. On an older thermal imager I have used with a fire department (Scott Eagle Imager 6, IIRC) after a few hundred feet everything washes out. This has always made me wonder because you can see very detailed images up close. Even to the point that (pardon the immaturity here) when someone farts, you can see a puff of white.
On hot maps, it would be much more difficult to see cool mechs, and hot mechs would be less distinguished.
Edited by frag85, 04 April 2013 - 07:26 AM.
#46
Posted 04 April 2013 - 07:10 AM
#47
Posted 04 April 2013 - 07:19 AM
#48
Posted 04 April 2013 - 07:38 AM
Frag85, I suspect the reason the distance was blured on your camera was due to it having a short focal length ie the limitation was in the lens system rather than a limitation of the sensor itself. It is something that could be added to the simulation but it would require extra post processing to produce which would potentially impact frame rates for lower end users.
#49
Posted 04 April 2013 - 08:21 AM
1) I suggest to use thermal (and, maybe, night) vision modes in a way close to “advanced zoom” module. A small (2/3 or 1/2 of the screen) and highly pixilated picture-in-picture image.
Pixilation of “thermal imaging” may (or may not) hamper player’s ability to navigate and maneuver his/her mech. And zone of normal, non-altered image at the edges of screen will make this problem less prominent. At the same time, narrower “thermal image” will force to use it as supplementary mode, not “always-on easy-mode”.
2) Also add some “trails” or “motion blur” to objects, to simulate lower reaction time of IR sensors. It will make extreme-range sniping in thermal mode more difficult. Thus, excessive pixilation will be unnecessary.
3) As for “advanced thermal imaging” module – it can be ability to use color-coded (old) thermal mode instead of grayscale.
In any case, current implementation of thermal vision needs to be reworked. White snow in Alpine and dark ground in Caustic not only looks unrealistic, but also goes against the concept of “different modes for different situations”.
Dakkath, on 04 April 2013 - 07:19 AM, said:
“Advaced” zoom module not only pixilated, but also have magnified “noise” overlay on it. And it is already in game.
Edited by Mordhar, 04 April 2013 - 08:24 AM.
#50
Posted 04 April 2013 - 08:25 AM
#51
Posted 04 April 2013 - 09:43 AM
#52
Posted 04 April 2013 - 01:36 PM
Edited by MangoBogadog, 04 April 2013 - 01:43 PM.
#53
Posted 04 April 2013 - 02:21 PM
CnlPepper, on 04 April 2013 - 07:38 AM, said:
Frag85, I suspect the reason the distance was blured on your camera was due to it having a short focal length ie the limitation was in the lens system rather than a limitation of the sensor itself. It is something that could be added to the simulation but it would require extra post processing to produce which would potentially impact frame rates for lower end users.
Because right now its rather clean, and usable. If you were to change it to that pixelated-form it wouldn't go over to well with the people. At least this is my opinion. I know I would rather have a clean, usable interface than a truer-to-form pixelated mess.
@Mor
Quote
I know, but they have plans to fix this, because it does indeed suck.
#54
Posted 04 April 2013 - 03:37 PM
For each shader (terrain, mech etc...) the fragment shader simply needs:
1) a temperature constant passed for each object with range [0,1] which corresponds to the temperature range [-55, 200]: TEMPERATURE
2) the diffuse texture: DIFFUSE
In pseudo code:
// constant to tweak effect alpha = 0.25 // average diffuse value v = (DIFFUSE.r + DIFFUSE.g + DIFFUSE.:rolleyes: * 0.333333333 // compress range to [0, alpha] to simulate range of "emissivities/temperature variations", with alpha being maximum value that corresponds to temperature passed to the shader v = v * alpha // shift value by passed temperature and set fragment colour OUT.rgb = saturate(TEMPERATURE + v - alpha)
Obviously this can be optimised, I laid it out for clarity.
For the terrain the temperature passed to the shader would just be the temperature of the map.
For mechs the temperature passed is:
map ambient + mech_temp_offset + mech_temp_scaling * mech_ingame_temp
where the mech_temp_offset sets the minimum temp a cool mech is above ambient and mech_ingame_scaling is obviously a scaling relating the in-game mech temperature percentage to an increase in visible mech temperature. Both constants being tuneables for balance.
For the sky the diffuse should be near zero... maybe it is just easier to set it to zero as the sky is cold.
A post processing step would then follow to either pixelate (the preferred choice) or Guassian blur the heat image by an amount determined by game balancing.
EDIT: it may also be worth adding a diffuse texture multiplier that is defined in the objects material file and passed to the shader, this could be used to brighten diffuse textures for objects with darker diffuse textures. The mech textures may need this tweak.
If you use the above approach you should be able to produce a good effect with only minimal asset tweaks.
Edited by CnlPepper, 04 April 2013 - 04:39 PM.
#55
Posted 04 April 2013 - 03:54 PM
Edited by CnlPepper, 04 April 2013 - 03:57 PM.
#56
Posted 04 April 2013 - 04:20 PM
CnlPepper, on 04 April 2013 - 03:54 PM, said:
I think either way it is "shoot the white spot" but I do think the Gaussian is more esthetically pleasing.
#57
Posted 04 April 2013 - 06:50 PM
#58
Posted 04 April 2013 - 08:05 PM
Regardless, an excellent, well thought-out post and series of responses. Kudos.
#59
Posted 04 April 2013 - 09:06 PM
Dakkath, on 04 April 2013 - 07:19 AM, said:
Dakkath, on 04 April 2013 - 02:21 PM, said:
Because right now its rather clean, and usable. If you were to change it to that pixelated-form it wouldn't go over to well with the people. At least this is my opinion. I know I would rather have a clean, usable interface than a truer-to-form pixelated mess.
@Mor
I know, but they have plans to fix this, because it does indeed suck.
As the OP points out, these are commercially fielded systems. Meaning they are highly usable. I think pixelation is the best way to make sure that you can't tell where the center of the mech is from too far away.
You could have a higher resolution than the OP suggests, and use some sort of heat halo to make it more difficult to see the heat center. Gaussian blur is actually much less usable to me. The mind naturally looks for hard edges, and when it can't find them assumes your eyes are out of focus and tries to fix it, which produces eye strain. Eye strain needs absolutely should not be a balancing factor.
You could also arbitrarily remove the ability to zoom in. IR optics (depending on what wavelength is being used) can't use the exact same focusing optics as EO (visible light), so you could argue the lack of zoom ability is because you only have EO zoom optics. Adding in a software zoom is not optimal, because even the broken extended zoom we currently have is really helpful. Being able to shoot at the center of a big pixel is still really useful.
#60
Posted 05 April 2013 - 02:52 AM
Pixelation, as with any digital viewing device, is relevant to the quality of the equipment. Arbitrarily adding pixelation to supposed military grade equipment doesn't sit well with me when, as I said, the current version is reasonably realistic.
However, I wouldn't oppose pixelation in the zoom modes. The reason for this being; the game actively renders the environment at the correct resolution when you zoom in, resulting in crystal clear focus in any vision mode at any range. Any equipment I have ever worked with isn't capable of enhancing imagery on the fly and results in a mild, but noticeable loss of resolution as you zoom in on objects.
2 user(s) are reading this topic
0 members, 2 guests, 0 anonymous users