OMGBuildings is a plugin for Unreal Engine that lets you quickly generate customizable city environments for your games.
Tutorials are also available on our YouTube channel.
I created OMGBuildings because I needed a flexible, affordable city-building solution for my own game. Existing tools were either too expensive or didn't do what I needed. If you're an indie dev, you'll appreciate the massive discount for indie developers on the Fab store, and the focus on usability and performance.
If you think that any of this documentation is unclear or incomplete, please let me know by submitting a bug report! You can submit a bug report after you register for a free account.
Getting Started
Install OMGBuildings and get started in minutes!
Purchase and download OMGBuildings from Fab.
Open Epic Games Launcher → Library → Install the plugin for your Unreal Engine version.
Launch Unreal Engine Editor, go to Edit → Plugins, search for "OMGBuildings", and enable it.
If you want to use the window boxes, go to Project Settings and type in Ray Tracing. Ensure Support Hardware Ray Tracing is DISABLED. There is a fix for a specific bug with cube arrays that is scheduled to be resolved in Unreal Engine 5.7, but until that is released we must do this if the window box internals are required.
Restart the editor.
In the Content Browser, find the OMGBuildings plugin folders (Blueprints, Data, Materials, Maps).
You may need to click the Content Browser 'cog' and select Show Plugin Content and Show Engine Content.
The OMGBuildings plugin should then be visible in the Engine→Plugins folder, or in the standard Plugins folder.
Open the example map or follow the next section to create your own!
Sign up to this website or subscribe to YouTube for info
Custom Building Setup
Customize your buildings with your own meshes and materials.
Most customization comes from creating new Material data assets. Mesh assets are only needed if you want to use your own custom meshes.
Creating a Mesh Data Asset
In your Project Content Folder, I suggest that you create a Data folder, then an OMGMesh folder inside it: Content→Data→OMGMesh
Navigate to the folder you have created.
Now right-click in the Content Browser, search for "Data Asset", and select it.
In the Data Asset select box, type "OMG" to see the OMG data asset types.
Choose the "Mesh" type and name it as you choose.
Now you should see the Data Asset in your new folder in the Content Browser.
Double-click the new data asset to open it and begin to set up the mesh properties.
You will see that you can select the base mesh (used for walls and floors) as well as corner meshes and a window mesh.
The internal corner mesh will not be visible unless you hide external walls.
The window mesh will be placed on the walls based on the Window Coverage setting in the instance of the building actor (the OMGBuildings section of the Building details panel)
Bear in mind there are two types of Window Mesh; full mesh replacement and non mesh replacement.
The Full Mesh Replacement window mesh will completely replace the wall section where it is placed. This is useful for buildings with large windows or glass walls (such as some skyscrapers). We have provided examples of both types of window mesh.
If you choose to make custom meshes, then you must follow the same setup as the supplied mesh in terms of pivot location (bottom / front / left).
After you have made the changes that you want, you can save the asset and apply it to your building.
Just select the building in the level and alter the mesh asset in the details panel.
Creating a Material Data Asset
The process for creating a Material Data Asset is similar to that of the Mesh Data Asset.
Navigate to your Content→Data folder, right click and create an OMGMaterial folder inside it.
Now go into your new OMGMaterial folder, right-click in the Content Browser, search for "Data Asset", and select it.
In the Data Asset select box, type "OMG" to see the OMG data asset types.
Choose the "Material" type and name it as you like.
Double-click to open and set up the material properties.
You will select base materials for the Walls, Floors, WindowFrames, WindowInternals, Roofs.
These materials can be any material you have in your project. You can also use the supplied materials as a base to create your own custom materials.
If you use the supplied OMG Materials, you can also select the Type of texture that is used. More information about this is included below in the Materials section.
You can also select a different blockout material for each of these parts of the building.
You can also set Grunge levels.
After you have made the changes that you want, you can save the asset and apply it to your building.
Just select the building in the level and alter the material asset in the details panel.
Apply these data assets to your building instances to see your customizations in action!
Ready for more? Explore advanced customization next!
Did you know? After generating your city, you can delete the Zone Actor and customize each
building individually! BUT YOU CANNOT MOVE THEM. This keeps your city layout intact while allowing
for detailed customization.
After you're happy with your city, DELETE the Zone Actor from the level.
You now have lots of individual buildings you can customize.
These buildings are in fixed positions (cannot be moved/dragged)—this keeps your city layout intact.
You CAN edit dimensions, walls, materials, and skipped segments for each building.
Add new, movable buildings by adding a new instance of the BPOMGBuilding blueprint.