Realtime Archviz with Blender, CAD/BIM -> BGE

This is my thread on using Blender for Realtime Architectural Visualization.

I am now finishing up the improved version of the Therme Vals scene, I am much more content that the first version, feedback appreciated!

Therme Vals 2.0
Currently working on finishing version 2 :yes:

Realtime Reflections Test I have been playing around with some [GLSL Reflection Shaders]( from the Game Engine Resources Forum.

Therme Vals 1.0 by Peter Zumthor
Therme Vals is finally finished, and the project is handed in. I would like to share with you the model and some screenshots. This is a scene modeled in Microstation and textured in SketchUp. In Blender I have baked AO, Shadow and Lights into 3 images.

One problem was that I had to chop up the model in 6 parts, so I was having 6 x 3 = 18 textures for the lighting, and Blender did not like that. In the end I combined the Shadow and Light textures to optimize. Anyhow this scene runs smoothly on my GTX 465, but adding more lights or more textures make the rasterizer hit 97% and the fps hits 6-10.


  • Could not use more textures. Hitting 97% rasterizer pretty quickly.
  • Could not place more lights, would like to place more pointlights to improve the lighting, as well as spotlights for that nice touch!
  • Did not have time to implement more of the resources on this forum. Would like to make use of lens flares, point light scattering by Miles Macklin, water shader, most of Martin Upitis work, etc.

I am not really a polygon modeler, I import my models and use the planar decimate, which seems to work nicely. I would appreciate any hints and tips on how to improve this scene. Please note that some meshes have not been decimated since they become corrupt, and I did not have time to fix it, and the doors with stairs going up are to low.

I intend doing a version 2.0 with:

  • Water shader
  • Animated lights from water
  • Fog (baked perhaps)
  • Optimized meshes
  • Sharp spotlights, maybe with Harmony phase 2?

Packed Blend 2.65a (Using DLAA only):


Very nice lighting. I think the mountain map could be pulled down some, since it’s blurry on the edge of the hillside. I guess it wouldn’t be a problem if you have walls on the building. It really shows how good simple baked lighting looks. It loads up in a flash and plays relatively smoothly. I got hung up on the ground when walking a little bit, but I think you can easily fix it by using a capsule instead of a box for the FPS bounds object. I think there were some seams visible on the light map on the walls, but otherwise, it’s pretty good. Nice work, really.

This looks nice so far, but it would be interesting to see it in a real production scene. By this I mean and interior with rather difficult lighting and lots of furniture and stuff. I think it would be quite cumbersome to bake everything and still I’m not so sure about the performace, because with several detailed furniture models I usually end up with like 2-3 million polygons. Or And how would glass look like? I’m not familiar with BGE, but it would be nice if it could dynamically reflect someting (maybe one could bake spehrical reflection maps which could be mapped?).

Looks good, might want to run a planar decimator modifier on your objects, bring the face/vert count down, would help improve the performance… can’t give you any help on the python though :smiley:

Oh and I will be making the same thing in Cryengine 3 as well, for comparison reasons, and also that I have the water and optimization working there, but I prefer blender, since it is open source, and that baking AO works well with dynamic and baked lighting.

Interesting tests.

What do you think about ?

Kind regards

It’s about ten or more years ago when I first thought that Gameengines should be used for Realtime Architectureal Walkthroughs.
Only in the last few years I’ve seen serious atemps in that field (Lumion3D, Twinmotion,…)

As far as I know only Unity3D has a good Realtime Web-Viewer.

I agree with you that the artistic quality in Lumion3D lacks (by the users or by the software, I think it’s kind of both). And they don’t have a Web-Viewer.
But I didn’t see any better results with other Realtime-Engines.
I would be interested in other good examples.

I have to admit that I don’t know mutch about the Cryengine and UDK, it isn’t free for commercial projects, right ?
Do they support a Web-Viewer which is as good as the Unity3D one ?
I did read that commercial Licences of the Cryengine or UDK are very expensive, they cost alot more than a Lumion3D Licence I guess.

I’ve been hoping for Open Source CAD for many years, but as far as I know there is no useable Open Source CAD Software for Architecture.
The commercial ones are definitily better (I compared AutoCAD, Allplan, Archicad, DoubleCADXP), even if they lack on features or boring bugs.

Kind regards

Working all day, and will keep doing so until 23rd.

Almost done :slight_smile:

This will be a nice scene for testing the harmony build, I will release it of course in a day o two!

And wow that rasterizer is one stubborn bastard, all the sudden, adding one texture more it goes “bang, crash, smoke” and you have to go back optimizing, I combined shadow and diffuse lighting maps, could not have them separate, which I would prefer to be able to control the light better.

I finished Therme Vals. First post edited.

I would really like feedback how to improve this scene!

Link to blend in first post, or simply:

Hi martin,

the scene looks great, but you should improve the water I think.
It looks very “flat”, if you know what I mean.
At the first look it isn’t obvious, that there is water.

But except that, very nice. :slight_smile:

Yeah I wrote in the first posts that I will from now on be playing with this scene and add eye candy, as the water.

What about adding spotlights under the lights? How many are you able to add in before Blender starts smoking? What hardware do you use?

I’d added some Spotlights at the positions of some lights.
The Limit begins after 28 added Spotlights.
With 29 added Spotlights the textures start getting black and with more than 30 Spotlights everything went black or white (black = preview, white = render).

Until 28 Lights everything runs smooth with 60fps.
Even with more then 48 Spotlights the rendering stays at 60fps.

My Hardware:
GeForce GTX 570 GLH GS (Gainward)
Intel Core i5-2500 3,3Ghz - 4Ghz
DDR3-Ram with 8Gb

Windows 7 64Bit Professional
Blender 2.65 r53189

In fact nothing starts smoking.
Do you have another test scene, which could start “smoking”?

No, it is just that this scene was on the very limit on my GTX 465. I could not bake not one more lightmap, nor add too many more lights. I think I deleted 5 to ensure 60 fps.

But I guess it is a matter of hardware, for me the limit was about at the complexity of the scene as it is.

What I meant by smoking is that my rasterizer hit 97% and fps drop very low when adding more stuff. I was just curious if it was a matter of optimization, that I have some problems with my geometry or material setup?

Bloom filter instead of the Flare method looks very nice! What I do not like about 2d filters is how they make my GPU fan run amok.

Hey Martin.
Your work looks absolutely great! I do architecture a lot and this absolutely has potential.
One note though: It seems the lens flares are way to powerful. Those kinds of features should be tones down to below 0.1 as they take all the attention from the scene and are very weak in real life.

That said, man this looks cool! :smiley:

Yes I know, I started out with them big, to see if they look realistic, then I go on making them smaller and more realistic. Also I am trying to make them interact with the Flare filter that produces the halo, and it doesn’t work unless they are big or the settings are very sensitive. Will have to find a good balance :wink:

But yes, they should be small is in real life.

Here is the reference:

Here are some improvements, now I just need some relative scaling to make the flares look more realistic when you about.

IES Lights:

Hi Martin,

Your work looks really good. Thank you very much for sharing the file.
Have you tried to export it to the ipad with GameKit ( or to make any auto-executable?

I was also thinking of learning a bit of BGE, but the limitations to export the final work to other platforms (web/ipad/executable) scare me a bit…