A first look at Solar Energy analysis in Plan.City

2026’s summer has definitely been a warm one!

It’s easy to forget now that we have started Autumn in earnest, but the Sun sure made its presence hard to ignore during those heatwaves we had on July and August. So I thought this would be as good a time as any to talk about one of the features I’ve been working on recently for Plan.City: our new Solar Energy tool.

The idea behind it is relatively straightforward: if we have a detailed 3D model of a city, can we use it to get a better understanding of how much solar energy reaches the buildings within it?

Well… that’s what we’re trying to find out!

Looking at our rooftops

There are plenty of reasons why this information can be useful, but perhaps the most obvious is solar panels. If we’re considering installing them on a building, knowing which parts of its roof receive the most solar energy, and how that changes throughout the year, can help us start to understand where they could be most effective.

But there’s another side to the problem that I find particularly interesting: cities don’t stand still!

Imagine that a new development is proposed next to an existing building. If that development is considerably taller than its surroundings, how will the additional shadow it creates affect nearby rooftops? Could we compare the situation before and after the new building is constructed?

Those are some of the questions we’d eventually like Plan.City to help answer.

But first, we need to start with the basics!

So, how does it work?

For the first version of the tool, the process begins by selecting a building that we want to analyse.

Plan.City then inspects its roof and divides the area we’re interested in into a collection of smaller sampling areas. Each of these can be analysed independently, giving us considerably more information than a single value for the building as a whole.

3D model of a cityscape displaying various buildings, with a focus on solar energy analysis. The interface includes instructions for selecting a building to evaluate solar potential.
The points that are subject to analysis

From there, we can look at the selected period of time and estimate the solar energy reaching the different parts of the roof.

Of course, knowing where the Sun is isn’t quite enough.

A roof isn’t necessarily flat, for starters. Different surfaces can face different directions and have different slopes, meaning that two parts of the same building may receive very different amounts of solar energy. And then there are all the other buildings to consider!

A point on a roof might theoretically face the Sun, but if there’s a tower standing between the two, that direct sunlight isn’t going to get very far. Having the surrounding city available as actual 3D geometry means we can take those obstructions into account as part of the analysis.

The result is something that we can display directly on top of the building itself, turning a rather large collection of numbers into something much easier to understand at a glance.

A 3D visualization of a city landscape highlighting various buildings, with an overlay panel displaying solar energy analysis results, including calculated energy values and options for saving the analysis.
The results of the analysis

Suddenly, those differences across the roof become much easier to spot!

Where do we go from here?

As with many of the tools we’ve been developing for Plan.City, this first version is really about putting the foundations in place.

Being able to analyse solar exposure is useful on its own, but it also gives us the starting point for several other tools we’d like to explore.

For example, once we understand the amount of solar energy reaching a roof, we can begin looking at what that might mean for photovoltaic panels placed there. Likewise, being able to run the analysis under different urban scenarios could allow us to compare how a proposed development changes the solar exposure of the buildings around it.

There’s still work to do before we get there, of course!

For now, we’re working on getting this first iteration of the Solar Energy tool ready for an upcoming Plan.City update. I’ll probably come back to it in a future post once things have progressed a little further.

In the meantime, I’ll leave you with a quick video of the tool in action below.

Hope you find it interesting and useful!

See you on the next post 🙂

Well… it has been a while!

Almost ten years, apparently :S

When I last posted here regularly, I was writing mostly about 3D modelling, rendering and my first adventures with Unreal Engine. A few things have happened since then!

Professionally, much of that time has been spent working with 3D cities. I continued my journey as a photogrammetrist and 3D modeller at Vertex Modelling, before eventually moving into development and becoming Lead Unreal Engine Developer at AccuCities.

And, perhaps surprisingly given how much has changed, a lot of the things I work with today aren’t that far removed from what I used to write about here!

Luckily, there is still plenty of 3D modelling. There is certainly plenty of Unreal Engine. But, on the side and over the years, that has also led me deeper into programming, maths, geometry, optimization, real-time rendering and all sorts of other problems that I would probably have struggled to imagine when I started this blog.

So I thought… why not start writing about them again?

Back to learning

One of the funny things about working in this field is discovering just how useful some of the things we learn at school and university actually are. Vectors and trigonometry might feel rather abstract at first, so it’s great to finally have a good reason to put the dot product to use when working in Unreal.

The same goes for programming, coordinate systems, and the actual construction of a 3D mesh. Even relatively simple maths can become incredibly powerful once you know why you need them!

That’s something I’d particularly like these new posts to reflect. Alongside showing some of the things we’re building at AccuCities, I’d like to occasionally take a step backwards and look at the ideas behind them: what problem are we trying to solve, what do we need to understand to solve it, and why might that knowledge be useful to someone learning this stuff today?

So if you’re a university student, a 3D artist beginning to explore development, or simply someone wondering why on Earth you were made to learn trigonometry… hopefully there will be something here for you too.

So, what’s next?

I’m going to try to make this a regular series, looking at some of the projects and tools I get to work on — mostly around 3D cities, Unreal Engine and the various technical problems that appear somewhere in between.

Some posts will probably be fairly technical. Others less so. And whenever there’s an interesting bit of maths, programming or 3D theory hiding underneath something we’re building, I’ll try to dig into that too.

After almost ten years, I think that’s enough of an introduction. Hopefully the next post isn’t in ten years time either.

Let’s see where this goes!

Some lighting issues in UE4 and how to solve them

Welcome one more week to a quick tutorial on UE4!

As we said last week, we are going to try and change every now and then from 3DS Max to UE4, to mix things up a little. And right now we are going to take a look at the game engine, and more specifically to some of the problems I encountered when trying to light the scene. Ready for it? Let’s go!

Continue reading “Some lighting issues in UE4 and how to solve them” →

Thoughts about modelling – quads, triangles and the smooth modifier

Hello and welcome back!

Starting with this series of short posts, I’d like to talk – write? – today about some things to consider when exporting models between 3DS Max and Unreal. Even though this can be an easy process, it can also get complicated depending on the circumstances. For example, you might be used to one particular pipeline for creating and exporting your models that works when you want your creations displayed in UE4- but sometimes you might find yourself using other models that don’t work as well! Let’s take a quick look into many different settings that can solve a number of problems. Today, we’ll talk about quads, triangles and smoothing groups.

Continue reading “Thoughts about modelling – quads, triangles and the smooth modifier” →

Interactive house – the road ahead

Hello and welcome back to a new blog series!

This time, the entries will be about ‘real time interactive architectural visualization’. As the topic I’ve chosen for my final master’s degree in Computer Animation, the aim of the project I’m about to start is to create a piece of interactive architecture. In other words, I would like to generate an apartment that can be checked and visualized by any person that would like to do so, either in the shape of a video game or a virtual reality experience. Here’s how I’ll do it.

Continue reading “Interactive house – the road ahead” →