Dreadnought is on PlayStation 4

Dreadnought is on PlayStation 4

Today is a special day, it’s just now that I can finally talk publicly about what I have been working on for the past year. Dreadnought is coming to PlayStation 4! Finally announced in PlayStation Experience 2016 event. When I joined the Dreadnought team one year ago my goals were clear, to get Dreadnought up and running on PS4, to deliver the greatest possible gameplay experience to PS4 players, and to get Dreadnought looking yet even more awesome. Step by step, Dreadnought console team was built, and step by step we marched – and continue to march – towards our goals. ...

December 3, 2016 · 2 min · Wessam Ibrahim
That Debugging Session

That Debugging Session

Disclaimer This post is not about performance optimizations, but I find it… interesting to say the least, and perhaps you’ll agree! What happened? My colleague and I were investigating a bug which started manifesting lately in Dreadnought, where the game would crash as it goes out of GPU memory on start-up. The problem is, this only happened on one specific machine configuration. To make it even more interesting, this only happened when the game used the DX12 renderer, my colleague – who is a graphics programmer – has also figured out that renaming / removing the start-up movies folder circumvents the issue. ...

November 6, 2016 · 3 min · Wessam Ibrahim

Micro Optimizations Episode 2

How NOT to loop Simple Problem Another optimization I tackled lately was a dynamic system to enable / disable other players’ weapon animation updates, based on distance to local player. To give you a bit of a context, there could be between 100 – 400 active weapons at the same time. I first noticed a problem as our weapon tick function was showing up high on the offenders list, which was interesting because I did not remember anything significant should be going on there. ...

October 17, 2016 · 3 min · Wessam Ibrahim

Micro Optimizations Episode 1

Since I joined the Dreadnought team, I have been working almost exclusively on performance optimizations. For the PS4 platform, our game is CPU-bound, specifically on the game thread. To give you some background, we use Unreal Engine 4 which has 1 game thread, 1 render thread, plus some helper task graph threads (based on your settings and core-count). Usually it takes days – and perhaps even weeks – to fix one of the worst offenders. However, sometimes I come across low-hanging fruit where the problems / solutions are simple, and have noticeable effects on performance. ...

August 19, 2016 · 5 min · Wessam Ibrahim