[Released] Burning Building - Runtime building mesh generation framework

If all you want is wall paneling, most games - even modern AAA games - use materials for that. Older games used normal mapping, with new games, you see parallax displacement mapping or tessellation. In HDRP, tessellation is fairly straightforward to set up.

There are technical advantages to using tessellation for repeated patterns like paneling, because the GPU can decide how to allocate triangles based on viewing angle and size on screen, instead of the mesh always being high-poly. There are also authoring advantages because it’s just a set of textures, which is generally easier to edit.

You’ll need to make stairs yourself and place them into the building. Delete the floor tiles around where the stairs come up and you should be able to fit them in.

You can make flat roofs fairly easily. If you want hipped, gabled, mansard, etc, those are not supported. However, you can always use Burning Building to block out the basics, then export to FBX, and build your own roof in Blender or other tools. Roofs come in many shapes and sizes, so even if I were algorithmically generating them (for example with a technique like this), they definitely wouldn’t satisfy every use case.

Honestly, sales haven’t been great. I will continue to update (I’ll probably do one this Friday to integrate AmbientCG, and to make the UI easier to use for people who like to right-click-drag camera rotation in the scene view). But I don’t have plans for major new features right now.

Version 1.3.0 - Fix right click drag camera!

A couple people mentioned that right clicking and dragging wasn’t working to rotate the camera orientation. Originally, I thought it was necessary to disable it so that right clicking can be used for other things. But it tuns out I was wrong and it’s possible to use right click for both selecting material and dragging the camera :slight_smile: ! So that’s been fixed.

Also…

  • Added the ACG material importer to the base package. You can delete it easily enough if you don’t need it, but since it’s mentioned in the tutorial videos, this just makes it an easier transition. This is an editor-only component; won’t affect runtime anything.
  • Added the ability to generate separate colliders for walls and for floor which will get their own layers. This is required for Top-Down Engine, but can be useful for other things. Add the Building_TDEIntegration component to the GameObject the building is on, select a layer for the walls physics object, and a layer for the floor physics object.
2 Likes

** @burningmime **, thank you for the amazing asset! I have a few questions:

  1. Is possible to not show props (doors, windows, etc) on upper floors with floor cutout enabled. Ex.: When I stay on the first floor I don’t want to see doors and windows on second and third floors (I want to completely hide them).
  2. Is there any way to place items on floors in the editor with drag&drop? Seems like in editor mode (scene view) there are no coliders so unity thinks that I place items on ground. So the only way to place items on different floors is to use a move tool or edit position cords.
  3. Is it possible to hide rooms with some “fog of war” or like black boxes? I found only the possibility to hide rooms completely, but this is a little confusing for me as a player that I can’t see the entire structure of the building I’m in.
  4. Is there an auto detection of the current floor or I need to write my own script that detects on which floor player currently stays and change Floor for Building Runtime Cutout?
  5. I saw limitations in source code for max floors and rooms, are there some performance issues or I can remove limitations and create a large shopping mall with 6-7 floors with 100 rooms on each floor?

Your asset will be a god blessing for my game if i can realise these points)

It’s a real shame that this great asset didn’t sell well. It seems no matter how great an asset is on the Asset Store it can still easily get overlooked. I would have loved to see new features getting added since it has so much potential.

Anyways, I didn’t know this topic was here and wanted to voice my thoughts.

@burningmime Great job on this!