More Microsoft Flight Simulator 2020 scenery oddities: Cranes as solid objects and decaying structures

I’ve shared several posts with some pics of unusual issues with Microsoft Flight Simulator (here and here). My favorites so far have to be how cranes are rendered, this is probably understandable given that they are typically very tall and relatively thin structures compared to other typical buildings. What I find interesting is that there’s a couple of ways these are rendered, varying from solid objects (the space under the crane overhang is rendered as a solid object), all the way to spindly structures that are ‘close’ but still not quite right.

Here’s examples of cranes as solid objects.

Oakland, CA docks – one solid, one as a tree:

Solid but melty:

Newark docks, NY – cranes as solid boxes:

Cranes fused into ships:

Tall solid blocks:

Rows of solid blocks:

At the docks at Le Havre, France, the scenery from above is incredibly detailed in this area:

… but as you approach ground level you see in this area there is no attempt to render these cranes as 3d objects at all, they’re just painted to the ground of the scenery (and like most ships not rendered as 3d objects the ship is partially submerged). This avoids the issues with the 3d rendering I guess:

At the docks at Avonmouth, UK (near Bristol), the cranes in this area are not solid which is a different approach, but they’re rendered as if they are heavily rusted, decaying structures:

Some of the cranes look like they could be animals:

This group is my favorite so far:

Possibly my favorite MS Flight Simulator 2020 screenshot so far. I love the Daliesque nature of whatever this structure was in real life:

Comparing screenshots of Microsoft Flight Simulator 2002, 2004, FSX and 2020 (part 2)

Before the launch of Microsoft Flight Simulator 2020 last year I took a number of comparison screenshots in FS 2002, 2004, and FSX but I never went back and retook screenshots from FS2020 after the launch. Here’s one example of the level of photographic detail in the scenery compared to Visual Flight’s VFR photographic scenery add-on for FS 2002. It wouldn’t be a good comparison to the base products without a scenery add on since they were only doing scenery autogen and didn’t even have photographic scenery, but here’s a good comparison just how good the FS2020 scenery is (drag the bar to compare):

FS 2002 with Visual. Flight VFR Scenery vs FS 2020

Since the recent UK scenery update, here’s a comparison in roughly the same area looking along the Southend coast. Unfortunately I didn’t have a screen from before the update showing where the pier should be – originally it was submerged in the imagery, but as you can see from the image on the right above it’s now a very impressively modeled landmark:

Southend coastline: FS2020 before the UK update (left) vs after (right)

Here’s a couple of other screenshots taking a closer look at the scenery along the sea front and the pier:

It’s interesting while the pier got a full custom model, the fun fair areas each side got a couple of buildings but the rides and rollercoaster where just left as flat imagery:

The single most valuable advice I can offer to new software developers

When starting out in software development or even learning a new language as an experienced developer, the most likely cause of most ‘I don’t know why this code isn’t working’ type questions is pretty simple:

What you think your code should be doing is often not what it’s actually doing.

This seems like an obvious observation, but it’s easy for even an experienced developer to get caught up in what they think their code is doing, and they forget to look at what it’s actually doing.

Next question: “ok, so how do I find out what my code is actually doing at runtime?”

Answer: you use a debugger. You step through your code and you compare what you think each line should be doing with what it’s actually doing. At some point you’ll find a line where you assumed the code was doing one thing but it’s actually doing something else. It could be the variable of a value that you were assuming to be a particular value but actually it’s something different and it results in a result that’s different from what you were expecting. It could be a condition you were assuming to be true is actually false. It could be a block you were assuming would always get executed but never is. There’s many reasons.

Learn how to use your debugger:

  • Practice stepping through your code
  • Learn how to set breakpoints
  • Learn how to set conditional breakpoints (break when a certain value or condition is met)
  • Learn how to inspect value of your variables
  • Learn how to change values at runtime – what happens when this value is 1 instead of 2?
  • Learn to break on an error
  • Learn how to step backwards to a previous statement (not all debuggers do this but it’s a useful feature)
  • Learn how to change code while you’re debugging

Knowing how to use a debugger is an incredibly valuable skill. It’s seems a given that as a developer you would learn to use and use a debugger as an integral part of your development, but all too often though when asked ‘why is this code not working’, if you ask ‘have you stepped through in a debugger to see why it’s not working?’ the answer is ‘no’.

Learn to use your debugger!