Adding new custom 3D models /Rules Buildings

Advanced Settings

Adding new custom 3D models /Rules Buildings

The building type parameter determines which modular pieces will be used for the entire building and its features. The data that contains the 3D models, material, etc is included into a “Building Style Table”.

For example, you can have only the buildings for the downtown area in the "BuildingStyleTable 1" and buildings for the suburb area in "BuildingStyleTable 2", etc.

Data Table of a building:

Each Building from a Data Table has 4 sections:

- Modular Pieces – contains the modular pieces for this building

- Materials – contains the materials that can be applied on the building

- Added Elements – you can choose if the building can have ACs, Awnings or Borders

- Rules - other types of rules

- Interior - rules for the interior part of the building

How to add a new building table

Create a Data Table:

Select “ST_RulesBuildings” as a Row Structure of the table then you can customize it as you want.

Exporting/Importing 3D models

When you export the 3D model from your 3D modeling software, be sure that the pivot has the origin in (0,0,0) and it is at the bottom left of the model. The pivot orientation depends on the software, but it matters how the pivot will be oriented when you import it. (example for 3ds max: X=Pointing Right, Y=Pointing Backward, Z=Pointing Up)

The length and width of a corner should be integer numbers and they should be equal.

The lengths and the heights of the pieces are recommended to be integer numbers. The height for the upper floor pieces in general can be 3m or 4m. For the ground floor, the height should be a number integer.

Be sure that you export the 3d model in centimeters units. Example of Units Setup from 3ds Max:

Each imported modular piece should have the pivot set to the bottom left of the 3D model and the axis orientation should be: X=Pointing Right, Y=Pointing Forward, Z=Pointing Up.

You can verify the pivot and its orientation of it in the Asset Viewer (double left click on the static mesh in the content browser). Be sure to have enabled “Show Pivot” (you can find it in the top of the tab)

Example of pivot position/orientation:

Setting the static mesh

The ACs and awnings can be set from Asset Viewer. (see the “Air Conditioners Category” and “Awning Category” from “Building Modular Piece” in this documentation)

If you want to have control of the building material, it requires some conventions of the Slot Material Names.

-“window” for the frame of windows

-“façade” for the bricks/façade of the piece or for the back wall of a CornerEnd of ground floor

-“ornaments” for ornaments/borders

-“glass” for the glass of the windows

-“fakeGlass” is like the “glass” slot, but when that piece has interior enabled, this material will not be changed to transparent glass.

-“facade2” can be used for CornerEnd (for the back wall), or for a front window piece to have a secondary material for the facade:

-”glassNoCurtains” is like the “glass” slot, but there will be materials only with fake interiors with no curtains.

-“concrete” used in general for ground floor pieces

-“facade3” used for ground floor façade material

Modular pieces

The Modular Pieces Category contains different types of modular pieces for the building: Ground Floors, Back Ground Floor, Front Upper Floors Pieces, Front Upper Floors Top, Back Upper Floors Pieces, and Back Upper Floors Top. If the building has a corner in the front pieces, a corner with the same length should be included in the back pieces. (for the ground floor and upper floors too)

Ground Floors/Back Ground Floors

It can have multiple types, each of them stores a few modular pieces that can be put together to generate a ground floor type. Example of modular pieces for a ground floor variation.

Each type of ground floor has 5 arrays of modular pieces for it: Window, Corner, CornerEnd, CornerConcave, Simple:

Example of modular pieces for each type of modular piece:

The CornerEnd type piece should be only in the Ground Floor array, not the Back Ground Floor.

Requirement: The “Ground Floor” array should have at least one type. Also the Window, Corner, CornerEnd, CornerConcave arrays should have at least one piece.

Example of modular pieces of GroundFloor type:

If you want to have a version of a piece with a door for one ground floor piece, the name should contain “door”. Example:

SM_bld01_GroundFloor_L3T02_piece -> SM_bld01_GroundFloor_L3T03_door_piece

If the building doesn't have Back Ground Floor, the building will have simple pieces instead.

Front Upper Pieces and Back Upper Pieces

“Front Upper Pieces” array should contain the modular meshes for the front facades of the building and the “Back Upper Pieces” for the back walls.

The CornerEnd type piece should be only in the Front Upper Pieces array.

Keep in mind that modular pieces should be able to be placed next to each other. Example:

Example of modular pieces for each type of modular piece:

If one of the windows type pieces needs a special model for the last floor, the name should be the same but have “top” inserted in the name. Example:

SM_bld01_windows_L5T03_piece -> SM_bld01_windowsTop_L5T03_piece

Front Top Pieces and Back Top Pieces

These models are used to extend the modular pieces that will be used for the last floor.

Example of Top pieces:

Interior

In the “Interior Pieces” array for the most of most pieces from Upper Floors/Ground Floors there should be a piece for interior with the suffix “_INT”

Example of a normal piece and a interior piece for the same modular model blueprint:

For corners and simple pieces, it can be used as a default piece from the “Default interior ground floor/upper floors” array. The pieces will be selected depending on the length/width of the exterior piece. For these modular pieces, there is no requirement for the name.

Also, a Corner type will have the same interior piece as a Corner End type.

Example of default corner:

The height of interior pieces should have the same height as the exterior pieces.

If an exterior piece doesn't have a specific interior piece, the exterior pieces will be used as an interior one.

Tips: You can copy elements of an array from other building:

Materials

This category contains the set of materials that can be applied on some specific parts of the building: Front Facades, Back and ground floor, depending on the material slots name (Material Slots - Name conventions)

  • Yellow - Front pieces material

  • Cyan - Back pieces material

  • Orange - Ground Floor material

  • Purple - Border material

  • Green - Ornaments material

Added Elements

You can choose if the building can have ACs, Awnings or Borders with “Has ACs”, “Has Awnings” and “Has border”.

Add Doors and Stairs Door Models

First of all, if you want to have a version of a piece with a door (only for the ground floor pieces), the name should contain “door”. Example:

SM_bld01_GroundFloor_L3T02_piece -> SM_bld01_GroundFloor_L3T03_door_piece

Only this type of modular piece can have door models.

In the building rule, you can add as many door/stairsDoor models as you want. For each of them, you should add the model of the door and the materials of it.

For these modular pieces that should have doors and stairs doors you should add a socket for each one, with the names “Door” and “StairsDoor”. You could use Preview Static Mesh for a better visualization.

The modular piece can have only the door socket if the stair door is not needed.

The socket name for the door can be also “DoubleDoor” if the modular piece should have a double door and the door type doesn’t have a frame:

The interactable door will exist only if the modular piece has interior. For these types of doors, custom models can be added to the “B_Door” blueprint. There are 5 “Door Rules” arrays, and each one

can have more types of doors. If you want a building to use the “Door Rules 2”, you should set (for that building) the “Door Openable Style” equal to 2. (in the Added Elements category)

For each type from a Door Rules, you’ll have to insert “Door Left Model”, “Door Right Model” and optional, the “Frame Door” model. If that type of door has a frame, the frame model should have one or two sockets for the door(s). Name: “Door1”, ”Door2”. Also, the sockets don’t need to be rotated.

Custom Elements

Each building type can have multiple custom elements, but only the pieces that have sockets with the same name will have the element.

The modular pieces should contain the “Socket Name” of the element. Example of “OrnamentDoor” socket in asset viewer.

You can have more variation models for an element, each variation can have multiple materials.

If you have multiple models for variation of the element, you should be careful to have the same pivot position to fit perfectly. Example of Ornament Window elements variation models:

Example of changing the ornament windows from Custom Elements:

If the “Overwrite Ornaments Material” is checked, the material of the element will be the same as the “Ornament Material” of the piece.

If the “Always On” is checked, the element will be spawn all the time when generating the building, for each modular piece that has a socket that contains the element’s “Socket Name”.

You can have multiple of the same element for one modular piece. Example of 2 ornaments of windows for one modular piece:

Rules

Examples of “Can have Top Last Floor” and “Can have Top Extended Last Floor”:

Interior

Video link: https://youtu.be/HtZGLKDppIU

Interior Floors GF Height (cm) should have as many elements as ground floor types. Each element will have a list of numbers, each of them will represent one floor of the ground floor and the height of it.

Example of Interior Floors GF Height (cm) (this ground floor type has only one interior floor):

Interior Depth is the distance between the exterior piece and the interior piece. The value can be 50cm or 100cm.

Last updated