Performance, bugs - first impresssions

Report problems and bugs you have encountered while playing the beta.

Moderator: SolC Development Leads

Post Reply
InVader
Beta Tester
Posts: 65
Joined: 04 Nov 2015, 12:42

Performance, bugs - first impresssions

Post by InVader » 05 Nov 2015, 23:28

Been playing with with ZcRaider on his server for a couple of hours.

Here are my system specs for reference:
- Intel i7-920, 4 physical cores + hyperthreading, 2.66GHz
- NVidia Geforce GTX 760
- Samsung 850 Pro SSD (load times are nice)
- 8GB DDR3 RAM

Neptune

Let's start off with what you probably know already: Neptune map has terrible performance issues and could use a complete rework. On Neptune we both get constant 25 fps and it drops even lower during fights. That is really not acceptable. We tried analyzing these performance issues and it's rather strange: licking the wall, or looking out of the window into nothing does not lower the performance impact. It only gives like 3 extra fps.

We did notice though, that if we stay still for like 10+ seconds, there's a sudden rise in fps whereever you are. It went up from 25 to 45 and even 53 for me. So obviously it's probably movement that generates these performance issues. Whatever you do with your own ship (e.g. I noticed the Talon moving it's thrusters as it flies - a poor algorithm calculating their position might very well hit the CPU hard with this) hits like 25 fps. We were both using different ships.

Another and probably the most likely culprit is the map itself - poor meshes. Vertigo looks excellent and has the best performance out of all the maps. It gives me solid 60 fps on max. graphical settings with occasional drops to 55. For a UE3 I would still expect it to perform better, but this is an excellent starting point. Considering this, it might be worth taking a closer look at game assets of Neptune.

As someone who studied computer graphics, I have a few ideas, that might cause these performance hits on the level itself:
  • Do check whether the models have a lot of small and/or extremely obtuse triangles (any angle > 90° and extreme cases > 120°) or concave polygons. Some game engines have a problematic response to a large number of extremely obtuse triangles because of the way rendering works with a GPU, though I'm not sure whether UE3 does have such problems (I'd expect not).
  • Reflections: Neptune has a lot of surfaces with reflection. I have experience with UE3 and know for a fact that it handles reflection very poorly compared to UE4. They should be used only sparingly. UE4 uses a very different set up for creating reflections, so don't worry about trashing the current setup, because you will have to do that anyways.
Icebreaker

This map is okay for the most part. Solid 60 fps throughout most parts of the map. However, it does drop to about 30 in the area with the ships! Again, I noticed that there are some reflective surfaces around these docked ships. This continues to confirm my suspicion that it's the reflective surfaces that cause trouble on Neptune.

Although this has nothing to do with performance, I would really suggest toning down the amount of fog in the lower part of the icy cave in that map. The sauce is way too thick :|

Vertigo

The best map. Period. Good performance everywhere (with occasional drops to 55 fps), nice visuals (the lava surface looks especially nice) and probably the most interesting map layout. Truly a map meant for a 6DOF game. Excellent job.

The part where the fps slightly dropped was around some smoke I believe (not at lava, but at vents).

I'd also probably suggest toning down the post-process effects and colorization in the lava just a little bit. Also the waterfall shouldn't slow me down. Just push me down.

Other Issues/Bugs
  • Resolution change - The way resolution is changed in this game is very weird. When I change my resolution (in fullscreen mode) it cycles through all the resolution quickly (few screen flashes) until it arrived at my resolution. Look at the console log confirms this, as it shows all the resolutions up to my choice (1080p).
  • Resolution UI - After changing my resolution the UI in the menu defaults back to 800x600. HOWEVER, that is not the actual resolution. The game correctly changed my resolution (e.g. to 1080p), it's just the UI that failed to update.
  • Weird/delayed projectiles - I'm not sure if this is intended or because of latency, but almost all the projectiles (Mag, shotgun, lasers... actually all the weapons) fire particularly late IF fired continuously. The first shot is always accurate and spot on. However, all other shots seem to be a bit delayed. E.g. as I move to the side with my ship, the laser projectiles start going down the path I originally aimed at that position and look like they are fired out of thin air. Again, it might very well be just that I'm stupid and this is how it is intended to work, or maybe it's an optical illusion on my side, or maybe just really high ping, but just something I noticed.
That's all regarding performance for now.
Last edited by InVader on 06 Nov 2015, 00:59, edited 1 time in total.

User avatar
1/2Hawk
SolC Development Lead
Posts: 824
Joined: 10 Nov 2013, 04:10
Location: Atlanta, GA
Contact:

Re: Performance, bugs - first impresssions

Post by 1/2Hawk » 06 Nov 2015, 00:19

The Neptune thing is a complete mystery honestly. It's really not setup any worse than IceBreaker which by all rights should be the most difficult map to render. To my knowledge (having made that map) I don't think I actually have any truly reflective surfaces on there... as I do have on the floor upstairs in IceBreaker. The glass ceiling in the mining room and the doors on the IT servers etc all use faked cubemaps instead. In other words, fly up to the glass and you can't see yourself in it. Its fake.

I have a few suspicions myself:
- Neptune has the cameras / TV feeds, other maps do not
- Neptune does not have a skybox, other maps do
- Neptune has more transparent surfaces ... the ship area on IceBreaker *also* has lots of glass windows, so this is why I'm thinking here's a main problem

Not too concerned about the level assets because IceBreaker (and other test maps not in this build) uses the same walls and stuff, and these are optimized to hell (most sections have like 16-64 verts tops - and are very orthogonal). I guess the trick is to create a few versions of this map with certain things cut out to see what does what. Dont know but thanks for helping try to sort it out with us.

By the way, that Talon engine only takes three inputs for the engine rotation (going fwd, going back, not doing either) ... the blending is all handled automatically thru the AnimTree. This is to optimize it so we dont blow out the netcode sending specific angles.
UDK & UE4 - Visual FX (Particle Systems, Custom Materials, Lighting), Modeling, Animation/Rigging, Mapping, Coding

InVader
Beta Tester
Posts: 65
Joined: 04 Nov 2015, 12:42

Re: Performance, bugs - first impresssions

Post by InVader » 06 Nov 2015, 00:49

1/2Hawk wrote:The Neptune thing is a complete mystery honestly. It's really not setup any worse than IceBreaker which by all rights should be the most difficult map to render. To my knowledge (having made that map) I don't think I actually have any truly reflective surfaces on there... as I do have on the floor upstairs in IceBreaker. The glass ceiling in the mining room and the doors on the IT servers etc all use faked cubemaps instead. In other words, fly up to the glass and you can't see yourself in it. Its fake.

I have a few suspicions myself:
- Neptune has the cameras / TV feeds, other maps do not
- Neptune does not have a skybox, other maps do
- Neptune has more transparent surfaces ... the ship area on IceBreaker *also* has lots of glass windows, so this is why I'm thinking here's a main problem

Not too concerned about the level assets because IceBreaker (and other test maps not in this build) uses the same walls and stuff, and these are optimized to hell (most sections have like 16-64 verts tops - and are very orthogonal). I guess the trick is to create a few versions of this map with certain things cut out to see what does what. Dont know but thanks for helping try to sort it out with us.

By the way, that Talon engine only takes three inputs for the engine rotation (going fwd, going back, not doing either) ... the blending is all handled automatically thru the AnimTree. This is to optimize it so we dont blow out the netcode sending specific angles.
Cube mapping might still pose a problem. Some objects (like foliage) are often disabled to render into cube mapping to reduce the performance impact. Try playing around with this. Flag object types that you don't need rendered into the cube-map. Try reducing the LoD distance as well.

As for the camers you can set a enable/disable distance on them or even tie them to a trigger! You can have them enabled when the player is in the room with the displays. You can also try reducing LoD and cut-off distance for the cameras.

User avatar
Ion
Beta Tester
Posts: 29
Joined: 17 Jun 2015, 19:07
Location: Headin 90 on a 13
Contact:

Re: Performance, bugs - first impresssions

Post by Ion » 06 Nov 2015, 01:59

Thank God this isn't just me. I have an older system, and I'm not sure about the quality of either my mobo. I run everything sans the resolution at minimum, and still have graphical lag. However, if I look in certain directions it stops.
aka bossrobotdad, currently "Punished Blart" in-game

User avatar
MadMax1998
Site Admin
Posts: 1555
Joined: 07 Nov 2012, 13:43
Location: Berlin, Germany
Contact:

Re: Performance, bugs - first impresssions

Post by MadMax1998 » 06 Nov 2015, 13:23

Neptune runs terrible for some and well for others (like me, on a GTX 660). Neptune also runs at over 30 FPS on my GF's GeForce 8800 GTS, and that is a VERY old card! So it's either a CPU thing or something else that can be affected by drivers/card type/OS/whatever.

Code: Select all

Resolution change - The way resolution is changed in this game is very weird. When I change my resolution (in fullscreen mode) it cycles through all the resolution quickly (few screen flashes) until it arrived at my resolution. Look at the console log confirms this, as it shows all the resolutions up to my choice (1080p).
This is not at all how the change works. Don't pay attention to the log; the list of resolutions appears as the engine counts the AVAILABLE modes for your screen. The resolution change works as follows:

If you change a setting other than resolution or window/fullscreen, the game sets the resolution to 800x600 and then back to what it was before. This is to make sure all settings you did change (like AF, textures etc.) are applied because when the resolution changes, the renderer restarts and loads the new settings.

If you do change the resolution or go from window to fullscreen and vice versa, the resolution will NOT change to 800x600 and go to the new setting immediately.

I have no idea why you are getting 800x600 displayed on the UI after a resolution change but I will put it on the list of pending fixes.
Max
Sol Contingency Programming Lead
Sol Contingency Website

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest