Graphical optimizations and improvements.

xBlueXFoxxxBlueXFoxx Join Date: 2013-06-07 Member: 185497Members, Reinforced - Supporter
I'm not the first to say it, but this game looks amazing and is meeting a PC gamers expectations of visual eye candy, but for low performing systems, this comes at a cost. Performance in a game could mean life or death of a game, most certainly if there's not much marketing and the player base is low. People will not play the game if they cannot run the game, opening the game up to a wider range of lower end PC's also open up a wider range of users who will be willing to play it.

I see performance in the game being one of the things that drives users away from it, I have quite a few friends who ended up buying the game and were driven away due to it's rather high standard to run. Optimizations and visuals I see are a key point that should be focused on when making a game, as the lower specs needed to run the game open a larger player base who can hop in and play without needed to run out and get a $200 CPU/GPU, just to play a game that is already lacking in popularity.



Level of Detail/Draw distance

Culling slightly "abused."

When looking at the game, even through spectator mode, there's some points where you notice a lack of key points of basic optimization for the games visuals, instead the game attempts to make a solid approach of taking advantage of culling to cancel out any polygons that are not within a visual range (for example, rooms behind the walls that are in a visible range in,) in order to achieve it's currently decently playable FPS on high end machines, not exactly enough to consider the game optimized.
Culling explained: http://freesdk.crydev.net/display/SDKDOC4/Culling+Explained

There's a lack of LOD (Level of Detail) scaling, polys when loaded at a view range models are always rendered in their highest fidelity, things like crates, walls, ships, barrels, marines, aliens at a certain range could use a low poly model when they're out of range of being effected by game play.
LOD scaling example: http://freesdk.crydev.net/download/attachments/131422/LOD_illustration.jpg


View Distance, is there any?

From what I've seen objects always exist and will always exist at any range, there's no view distance for things like particles, scraps, lighting, players, infestation, structures, or anything, it's all rendered when culling is not in play. This results in FPS spiking when quickly turning, SSAO/HBAO (Ambient Occlusion) taking effect on useless faces causing it to have a dramatic hit on performance.

Primary examples, have a lookie.
1. http://i.imgur.com/gemom6h.jpg
2. http://i.imgur.com/DSlmCmB.jpg
3. http://i.imgur.com/4nFhqYF.jpg



Better video option scaling

PC gamers love their video options, it's what allows you to remove an artifact of your choosing to make the game perform better if your PC cannot quite push the power it needs to. But in NS2, you basically have 2 options for most functions without messing with console/cvar configs, on and off. Texture resolution for example is what is filling up your ram and is burning up your GPU/HDD's transfer rates, the ability to stream textures in real time, right now there's low medium and high, however, low is really not all that low, it's still pretty high res compared to a lot of games, low should be lower, high should be very high.

For example, on the lowest video settings particles are still rendered, I'm referring to scenery ones such as res nodes, not game effecting ones like umbra, spores, and gorge spray.
Here's an example: http://i.imgur.com/Hb4xjRC.jpg

Another example of cutting down the fat could be disabling lighting reflections on objects/models, I've stated an example below.
http://i.imgur.com/slo5voc.jpg

Restricting the amount of X
X being particles and lighting, is the restriction based on when the engine decides to go kaputt? Particles and dynamic lighting should have a max value of how many lights and particles there are in the frame. This could be scaled per map as some require more lighting demands to fill their needs.


Eye candy improvements

http://i.imgur.com/eVZZiBL.jpg
That picture speaks for itself, some blurred shadow mapping would be nice, or at least an option in the video settings to change the shadow map resolution. (Low/med/high, or a drag bar to select the resolution you please.)

Reflection quality, the resolution of the cubemaps generated should be selectable in the video settings, not just switched on or off, as the picture states below.
http://i.imgur.com/mbfu1FB.jpg


Anyways I hope this topic does make it to UWE dev, or at least for the most part is informative to the userbase on these forums, I think these additions would really help performance and increase the range of players who can actually play the game, instead of the constant topics of players thinking "rebalancing" the game to their likings will dramatically make people flood in.

Comments

  • Kouji_SanKouji_San Sr. Hινε Uρкεερεг - EUPT Deputy The Netherlands Join Date: 2003-05-13 Member: 16271Members, NS2 Playtester, Squad Five Blue
    edited July 2013
    Max and Matso explained the stuff visible behind walls as cheaper to render then to do occlusion calculation on in some cases. The mappers have to build their own "OcclusionGeometry" as well, so if you are in spectator mode flying outside the map, it won't do it's job correctly. And the engine has a setting for max render distance for dynamic objects, on default set to 45 meters.

    Spark Engine has no LoD system AFAIK


    FYI, you can see the Occlusion system at work if you walk through the level, using the following console commands

    cheats 1
    r_wireframe true
  • shonanshonan Join Date: 2013-01-28 Member: 182562Members, Reinforced - Shadow
  • xBlueXFoxxxBlueXFoxx Join Date: 2013-06-07 Member: 185497Members, Reinforced - Supporter
    edited July 2013
    Culling/Occlusion is efficient in most cases but it does still show some rooms/walls constantly through walls, regardless of how effective it is, I still think a LOD addition to Spark, object view distance, and some more more adjustable video settings without configs/console would be a nice addition that would effect performance quite a bit in a positive way.

    LOD would also be a great addition for the comm chair also, as you can load up low fidelity models - improving the performance from the chair.
  • Kouji_SanKouji_San Sr. Hινε Uρкεερεг - EUPT Deputy The Netherlands Join Date: 2003-05-13 Member: 16271Members, NS2 Playtester, Squad Five Blue
    edited July 2013
    The thing is though, unless you are severely GPU bottlenecked, settings other than shadows/particles and AO won't do much. The biggest performance hog still is the game code (and client side prediction?), which has improved a lot over the course of this year year. Would love to read some dev input here as well just to see some technobabble, I usually brush off as magic...

    Although I would love to see those graphical options, the shadows for example are just ugly as hell on ATI/AMD cards and more options other than on/off would be preferred. I mean this is PC we're talking about, we want our options to tweak and fiddle with :)
  • xBlueXFoxxxBlueXFoxx Join Date: 2013-06-07 Member: 185497Members, Reinforced - Supporter
    Well if you look at most retail PC's, CPU's are thought of before GPU's, for those who don't even know what a GPU is, they'll just ditch the game because they can't run it, a lot of retail PC's you can find with an i5 or a good AMD varient, but will be pushing a GT540/HD6450, which is basically media standard. Also not to mention laptops, they typically come with fair CPU's but absolute garbage GPU's. (I cringe when I hear people trying to game on mainstream brand laptops that are not intended for gaming, but you get the point.)

    The shadows really bug me, they look worse than CoD, I think it would be very comparable to Borderlands 1, more video settings indefinitely.
Sign In or Register to comment.