Jump to content
Sign in to follow this  
falcon_565

ARMA 3 Engine Handling of Objects at Range

Recommended Posts

Hi everyone,

This post stems from a discussion on a community forum about the nature of the OFP/ARMA engine to-date and the future of this engine in ARMA 3. I decided to re-post this here to gain a broader community response and to exposure.

Currently in the ARMA engine there is a fundamental problem that particularly infantry are too easy to spot, especially at range. This fundamental problem overpowers vehicles and greatly reduces the survivability of infantry in combat. This often leads to very unrealistic and often less fun firefights and engagements. Many of these problems lie within the heart of the engine but are not insurmountable. I think there are several things that could be done to address this problem:

1. Implement drawing of clutter and grass at range.

Early indications from screenshot are that this has been greatly improved at least in the current build of ARMA 3 but this is extremely importance. If I am prone in grass that I can't see out of then in most cases people shouldn't be able to see me unless they are close or have some other elevation advantage. Currently grass and clutter objects are only drawn a limited distance from the client; this means that observing a person at range is easier than observing a player who is very near. This is obviously the inverse of how spotting works in the real world. If drawing clutter and grass objects is too intensive than a grass layer or similar solution must be implemented. Regardless you should be able to tell easily if you are well camouflaged by your immediate surroundings and that should reflect equally on how you appear from an observer at range regardless if they are AI or human.

2. Implement drawing of shadows at range

Just as it is vital that clutter and grass objects are drawn at range it is equally important that shadows are drawn properly at range. Nothing is more frustrating than believing you are in an inky shadow lying in ambush then being killed from 200m away because you appear to be sitting next to a bush in broad moonlight. The shadows don't have to be particularly high quality as long as they serve their purpose of reducing the visibly. As before this should effect both human and AI players.

3. Implement and use variable terrain mesh to create micro terrain

It is exceptionally easy to hide as a person even in 'open' terrain, it only takes an elevation change of a few cm to effectively conceal a prone person. Given that the vast majority of the world is not flat the terrain in ArmA should attempt to replicate this; unless humans have purposely made a place flat (plowed fields, roads etc) then the terrain should not be perfectly flat. Perhaps applying a procedural bumpiness layer would work well for open areas and forests and including ditches near roads and along field edges would be a great start towards adding the types of terrain features that are critical to gameplay. ArmA currently makes open areas unrealistically open and nearly renders them untenable positions under most circumstances which in no way reflects reality. Infantry should be able to find reasonable concealment nearly anywhere.

4. Implement a system to allow for realistic fighting positions

Trenches and foxholes are a staple of modern infantry combat and provide infantry effective protection against vehicles, artillery and air attack as well as unparalleled concealment. A game as detailed and realistically minded as ARMA 3 should include a way to replicate the enormous advantages afforded by fighting positions. In addition adding these elements would add a tremendous amount of tactical depth to the game and give mission makers the tools to create even more realistic and complex tactical problems.

All of these changes would manifest themselves in a combat environmental where infantry combat, the heart and soul of the ArmA experience is more realistic and ultimately much more fun. Making infantry realistically difficult to detect allows for those infantry to survive longer, leading to longer more fulfilling firefights were units are forced to maneuver and close with the enemy in order to find and destroy them. It would also negate the overpowering effect of magnified optics and vehicles on the current ARMA battlefield. Currently engagements are short because infantry are easy to spot at highly unrealistic ranges (on occasion up to and over 1500m) and engagements even at long ranges (up to 500m) are often quickly decisive because infantry are often left with ineffectual cover and more so extremely ineffective concealment leading to short firefights where players can easily kill and be killed and long range. In short infantry that are not actively maneuvering should be afforded tremendous advantages in concealment and should be able to easily conceal themselves using terrain, grass, clutter, lighting or fighting positions.

Regards,

Falcon

Edited by Falcon_565

Share this post


Link to post
Share on other sites

What problem? I have a hard enough time spotting infantry at range as it is, you want to make it even harder?

Share this post


Link to post
Share on other sites
What problem? I have a hard enough time spotting infantry at range as it is, you want to make it even harder?

In short, yes. Although there are a few small problems when infantry are moving due to the models standing out unrealistically against the background terrain, all of which will be helped given the aforementioned changes. In general I'm speaking about infantry in static positions or once a firefight has been joined and infantry go to ground.

Share this post


Link to post
Share on other sites

It's true. Once you know the approximate position of an infantry unit they're very easy to spot in the distance. Despite being partly concealed by the grasslayer, the parts of their body that are not concealed are very easy to spot. Especially if you're equipped with a scoped rifle or binoculars.

Share this post


Link to post
Share on other sites
What problem? I have a hard enough time spotting infantry at range as it is, you want to make it even harder?

I don't know what version of ArmA2 you're playing, but ask anybody else and they'll tell you that spotting infantry a far distance away is a piece of cake. Grass doesn't conceal them, bushes do a much poorer job of hiding soldiers, and using shadows to blend in better is useless as well as long as you're enemy is a good distance away.

OP - every single point you made was excellent, and I hope BIS implements all of it.

Share this post


Link to post
Share on other sites

I don't think it's the matter that they aren't being concealed, but that they aren't blending in. The background is not detailed enough for them to safely blend into.

In real life camouflage blends in. In arma, it doesn't.

Share this post


Link to post
Share on other sites

all very good points, but it seems a little unphesable. this would boost the system reqs up like mad, making the game only available to the limited amount of people who have extreme rigs.

i do agree with every point made though, just in reality it wouldnt work.

Share this post


Link to post
Share on other sites

drawing shadows at far distance is brutal, thats why shadows are only drawn on very close objects and significantly reduced in detail after a few feet.

Share this post


Link to post
Share on other sites

I´m just throwing in some points. Feel free to ignore or not:

- Don´t we already have a grass mesh layer in the distance since ArmA I?

- Wouldn´t shadows in the distance put a huge stress on performance?

- Aren´t there far more important things than foxholes that need fixing before adding more features that only have little effect on overall gameplay - like fixing the netcode for example?

No offense, no irony, no sarcasm.. just simple questions!

Share this post


Link to post
Share on other sites
I´m just throwing in some points. Feel free to ignore or not:

Great points, very legitamite questions, I will answer them inline.

- Don´t we already have a grass mesh layer in the distance since ArmA I?

Yes, the grass layer has been implemented since ARMA I however the grass layer was significantly reduced in ARMA II leading to the problem actually being worse in ARMA II than it was in ARMA I. If a grass layer is the solution than some serious time needs to be spent making it representative of the actual amount of concealment different types of grass exhibit. Currently infantry are almost never hidden by the grass layer.

- Wouldn´t shadows in the distance put a huge stress on performance?

Yes, dynamic shadows at a distance would put stress on performance, how much stress and if its manageable is up to discussion. However to achieve the required effect I'm not sure even dynamic shadows are required, for example by getting the ambient light and terrain grid type you could enable shadowing without having to make actual shadows. I.E. at night in a forest you could shadow the ground because you know there is always going to be a shadow there instead of calculating and displaying the shadow from each tree. Similar processes could be implemented around bushes, buildings etc while your not going to get 100% perfect shadows all the time I think you'll get something representative of what a real person would see looking into a forest at night, much better than the way it is now.

- Aren´t there far more important things than foxholes that need fixing before adding more features that only have little effect on overall gameplay - like fixing the netcode for example?

I agree there are other important aspects of the game that need fixing including the netcode, animations and perhaps at least a quasi realistic wounding system. However I think that while those would make the game more easily playable and perhaps a little less frustrating (less moments where you get ARMAed) they really don't drastically change gameplay. The things I have listed here rarely get talked about in the community at large but they are the things that can make the biggest differences in gameplay. I think if people could play with these changes they would be shocked how much more intense and drawn out firefights would be and they would make a very positive change.

Share this post


Link to post
Share on other sites

Most important is that units at distance do not flicker (means pixel color switching).

Share this post


Link to post
Share on other sites
What problem? I have a hard enough time spotting infantry at range as it is, you want to make it even harder?

If you can't see an infantryman lying in a field at 300m, you are blind.

Arma units are almost never heard to see on their own merits, only when the eye is confused by other clutter and their exact location is in doubt.

Share this post


Link to post
Share on other sites

Wow. What a great post. These are the types of engine issues that I think about constantly. Better yet, you also brought to my attention a number of things which I've never even considered before. Most informative; many thanks. These are the types of gameplay suggestions that I would love to see make it into A3.

If I understood correctly, you mentioned that your OP is cross-posted from another forum. Can you provide any links? Sounds like a place that I might be interested in.

@MoS: I certainly won't argue for netdcode being anything but a first priority, but I think if we had fighting positions properly implemented into ARMA, it would change the nature of the gameplay so much that we'd soon be wondering how we ever did without them.

Share this post


Link to post
Share on other sites
If you can't see an infantryman lying in a field at 300m, you are blind.

Arma units are almost never heard to see on their own merits, only when the eye is confused by other clutter and their exact location is in doubt.

Well some people have a really tiny ass monitor... :rolleyes:

Share this post


Link to post
Share on other sites

A lot of the distant object problems in ArmA would kinda disappear if BIS would finally implement transparency.

Objects in the distance should have a certain transparency level added, based on distance, weather and their size. No more ugly popups of vehicles, trees, houses and infantry.

A lot of 3D games (young and old) use this tech, why not ArmA?

Share this post


Link to post
Share on other sites

Very good points made

1. Implement drawing of clutter and grass at range.

Grass at the ranges you talk about here is impossible. But i am sure a thicker grass layer would be a place to start.

2. Implement drawing of shadows at range

As you said, shadows at range doesn't need to be dynamic, but much rather embedded in the satmap/texture and/or similar method.

What Strangelove is saying is also possible - affecting the level of transparency (of the diffuse map that is) would make the units blend with the terrain better, reducing the visual contrast between the units pixels and the terrain (which at range looses its details). It is one of the best solution for this sort of issue

3. Implement and use variable terrain mesh to create micro terrain

Unfortunatly, this is very unlikely to happen due to technical constrains (polycount). Even with tesselation and displacement maps for the terrain mesh, those micro changes would be obvious only at short distances from player, making them useless at range

4. Implement a system to allow for realistic fighting positions

The easiest way to implement this would be by allowing easier terrain deformations. The only way to mimic trench holes today is to add an object on top of the terrain, which is hardly a whole, but much rather a bump with a cavity in the middle :P. Unfortunately, i doubt any changes will happen with A3

Edited by PuFu

Share this post


Link to post
Share on other sites
The easiest way to implement this would be by allowing easier terrain deformations. The only way to mimic trench holes today is to add an object on top of the terrain, which is hardly a whole, but much rather a bump with a cavity in the middle :P. Unfortunately, i doubt any changes will happen with A3

Well underground spaces tech apparently exists in VBS2. I imagine that could be used to implement trenches. So I suppose it wouldn't be totally unlikely if something like this turned up in an expansion/update for ArmA 3 at some point.

Share this post


Link to post
Share on other sites

If shadows aren't dynamic which direction are they going to be cast (relative to the sun)?

Share this post


Link to post
Share on other sites
Well underground spaces tech apparently exists in VBS2. I imagine that could be used to implement trenches. So I suppose it wouldn't be totally unlikely if something like this turned up in an expansion/update for ArmA 3 at some point.

with the current technology, this depends on the cell size. I haven't seen an ingame wireframe of the terrain mesh, but if it looks anything like THIS, then yes it is more than possible.

If shadows aren't dynamic which direction are they going to be cast (relative to the sun)?

as if the sun is right above - 12:00_ish. The idea would be to create some shaded/contrast spots in the background

Edited by PuFu

Share this post


Link to post
Share on other sites

Thanks for the great replies everyone, I think this post is having the desired effect of spurning community awareness and discussion about these issues. Just a few points:

Grass at the ranges you talk about here is impossible. But i am sure a thicker grass layer would be a place to start.

I agree that as currently implemented drawing ARMA grass at range is pretty much impossible for every square meter of terrain. However I think that investing some time into rethinking how grass/clutter works and is used could help solve the problem. For example plowed or harvested fields, short grass (less than 3cm) etc doesn't need to be rendered at range and grass inside forests should be replaced with clutter objects. In addition as I mentioned before making sure the grass layer exhibits the same level of concealment as the grass its representing would help as well.

Unfortunatly, this is very unlikely to happen due to technical constrains (polycount). Even with tesselation and displacement maps for the terrain mesh, those micro changes would be obvious only at short distances from player, making them useless at range

The easiest way to implement this would be by allowing easier terrain deformations. The only way to mimic trench holes today is to add an object on top of the terrain, which is hardly a whole, but much rather a bump with a cavity in the middle :P. Unfortunately, i doubt any changes will happen with A3

As I understand it both of these features are already in the latest build of VBS 2 and I'm 95% sure that BI has already confirmed variable terrain mesh for ARMA 3. Even without this several islands have intentionally or inadvertently created very nice microterrain (i.e. schmafalden, everon (forests)) so the tools are already there, making them more universal would be helpful. As for fighting positions allowing an object to phase through the terrain and then letting the players move around freely within would be the ideal solution.

Share this post


Link to post
Share on other sites

I agree on every request in this Thread. Maybe it will be hard to implement, but it would change the gameplay dramatically!

Share this post


Link to post
Share on other sites
as if the sun is right above - 12:00_ish. The idea would be to create some shaded/contrast spots in the background

Uh... one doesn't like to state the bleedin' obvious... so I won't.

Share this post


Link to post
Share on other sites

Hi Falcon_565 :) allow me to address each one with my own thoughts:

1. Implement drawing of clutter and grass at range.

The performance costs of rendering clutter at range have been brought up. Rather than stress the machine unnecessarily I might suggest two changes to the clutter/clutter concealment system.

1. Make clutter fade in & out at it's outer range rather than pop in & out. This will be mostly an aesthetic fix but will make observations smoother.

2. At distance, units could have a blending gradient applied to their shape, so that they fade out toward the ground. This brings the rendering into a more compositing field, where the unit is rendered, then composited into the scene using Z-data and blended with a gradient appropriate for the type of clutter around it.

The blending gradient could also be augmented by a general blurring of the edges, to aid with camo effectiveness. I'm in two minds about whether the ingame AI are too easy to see or not, sometimes I think so, sometimes not :) On balance, I think I'd like them to be difficult to see, as long as the caveat is that I'm also difficult to see. That is another field though most likely.

2. Implement drawing of shadows at range

Again, rendering costs are relevent and have been discussed. And, again, my solution would be to affect the compositing of the unit based on a local calculation of the unit's shadowing. Rather than render shadowing at such distance, the unit only needs to be that much more difficult to see by blending more efficiently with it's immediate area. This means an extra blending gradient simulating the hiding effects of shadow.

Oh, and by blending, I'm meaning a kind of fuzzing effect, where the edges of the unit are semi-transparent on a gradient from solid for the mass, and transparent at the edge. Very distant units would therefore be mostly belded while closer units would be visible, but indistinct, which I think is the goal here? :)

I'd also like to see some kind of visual confusion layered over the game, just something subtle like slight noise or something. CGI can be quite realistic, but there's always something indefinable about some of the things that you see, which could be hidden. I'm not suggesting that noise itself is realistic, only that it's effect would be realistic.

3. Implement and use variable terrain mesh to create micro terrain

I like micro-terrain, but there is an issue with LoD rendering, we've all seen the effects of units who think they're concealed over a brow of a hill, but the LoD from our perspective reveals them. How this can be solved I don't really know if I'm honest. Maybe a few days consideration would present a solution, but I generally can think of solutions pretty quick even if they turn out to be unworkable :D but this one is tricky. LoD needs to be implemented no doubt, that's the problem.

4. Implement a system to allow for realistic fighting positions

I think only deformable terrain could solve this. I've seen some solutions that create craters but they always sit on top of terrain, which is OK sometimes, and also some sort of variable terrain mesh system would be necessary. Default ArmA terrain mesh is usually quite coarse.

A nice topic :)

Edited by DMarkwick

Share this post


Link to post
Share on other sites

@DMarkwick

Great reply and I agree with everything you've said and especially appreciate your technical insights into the matter. However I wanted to make one quick distinction:

Oh, and by blending, I'm meaning a kind of fuzzing effect, where the edges of the unit are semi-transparent on a gradient from solid for the mass, and transparent at the edge. Very distant units would therefore be mostly belded while closer units would be visible, but indistinct, which I think is the goal here? :)

What your speaking to here and what I posted about in the root post are two sides of the same coin. Here your speaking primarily to the problem that units at range are too easily discernible from the background because of their relatively higher model complexity and the roughness that is inherent in abrupt texture changes. This would correspond to a unit in any stance moving or stationary; this is why a unit in desert cammo standing in front of a desert hill stands out even at range. While this is true and is an issue that is in need of being addressed I would add this as a 5th point to my original list. My concern in the root post was primarily focused on physical mechanisms of concealment, in which it would be nearly impossible to spot the unit and where the unit is physical concealed by grass, shadow or terrain.

As to fighting positions I'm fairly certain that a placeable trench model that phases through the ground and allows normal movement within it below ground level could be implemented.

Edited by Falcon_565

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×