6.3 Importing a Satellite Scan model (3D City Map with Blosm for Blender)

Available with the Following Subscriptions: All Subscriptions
Available for the Following Roles: All Roles

In this user guide article, you will learn how to bring Google Maps (or similar mesh data) data into cmBuilder (using FBX or GLB formats).

Use cases:

  • Increase the accuracy and quality of existing buildings
  • Add detail to existing surrounding buildings
  • Import new terrain
  • Import an existing building for demolition planning

đź’ˇ Note: Refer to the end of the article if you prefer to watch a video covering this topic

 

This article has 7 parts: 

  1. Get a Google Maps API Key
  2. Download, Install and setup of Blender, Blosm
  3. Importing a Map tile into Blender using the Blosm Plugin
  4. Part 4 Saving the Imported Map
  5. Part 5 Cleaning the imported map
  6. Part 6 Exporting and uploading to cmBuilder
  7. FAQ

01.png


Part 1 Getting Your Google Maps API Key.

Note: you may need to create a new account with Google if you don't already have one, or if you are blocked and see a message like "you do not have access to Google Cloud Platform". 

  1. Visit Googles Map Tiles API Page.
  2. Follow the link to the Google Maps Platform > Credentials Page. 
  3. From the Keys & Credentials page you will need to create a new project. Click Create Project. Provide requested details: Project Name, industry, etc.
  4. After creating a project you will need to verify your identity by clicking Finish Account Setup, this step will require you to provide payment information to verify your identity, but you will not be charged.
    2025-02-27_14-46-35.png 
  5. After your identity has been verified a pop should appear with your API Key, copy it (1). Make sure to enable all APIs for the project (2). If no popup appeared, see the next step for an alternative.

    2025-02-27_14-56-28.png

  6. You can also access your API Key by visiting the Keys & Credentials Page and clicking Show Key, to view and copy your API Key.

    2025-02-27_15-50-00.png
  7. Lastly, from the APIs & Services page (1) make sure you enable the Map Tiles API (2).

    2025-02-27_14-58-57.png

Part 2 Download, Install and Setup Blender and Blosm.

đź’ˇNote: Even though it is recommended to have the latest versions of these software, it is still possible to have conflicts between different versions of Blender and the add-ons.

Blender, Blosm and the optional Material-combiner are all free software we will need to download, install and setup, in order to work with meshes.


1. Download and install Blender from their website:  Blender.org

2. Download the Blosm add-on from their website: Here

  • A donation value may be required but it can be set to zero.
  • The final download is a ZIP file. There is no need to unzip.

3. Download the latest material-combiner-addon-master.zip from the GitHub website: Here.

  • This is an optional but recommended step to be able to use the recommended workflow in the Saving the Imported Map step.

4. Launch Blender and install the Blosm plugin. 

  • Click on Edit (1) > Preferences (2) > Add-ons (3) > Install from Disk (4) and then navigate to the folder containing the Blosm download (5), select the Blosm zip file (6) then click Install from Disk (7). Repeat this step for the Material Combiner add-on (8) (9). 

2025-02-27_17-07-17.png

2025-02-27_17-20-45.png

 

5. After installing the Blosm add-on you will need to enable it.

  • Click Edit > Preferences > Add-ons (1). Check the box (2) and expand the Blosm section.
  • Select/setup a folder to save files to (3),
  • In the Google 3D Tiles Key field (4) paste your Google API Key from Part 1 of this article.

2025-02-27_17-27-25.png


Part 3 Importing a Map tile into Blender using the Blosm Plugin.

đź’ˇNote: Blender is a powerful modelling software that might need some familiarization to be used efficiently. There is a lot of material online but you can start with the official navigation instructions: Here.

Now that you have Blender, Blosm and the materials combiner plugins installed and linked you Google Maps API you are ready to import a map.

Create a blank project in Blender:

  • File > New > General
  • From the Scene Collection section (top right) expand the default collection. Then right click > delete the default Camera, Cube and Light objects.

Import a map using the Blosm plugin.

  • In Blender use the shortcut “n” to open the side panel and click on the Blosm tab (1).
  • In Blender Select the "3D Tiles" option (2).
  • In Blender Click on “Select” (3) to open a browser tab (you should be taken Here).
  • In your browser zoom in to the location of your map and click "Show selection rectangle" (4).
  • In your browser use the square handles to adjust the selection rectangle's size (5). Try to get the smallest possible area as the final 3D model will be bigger than the rectangle selection area (6).
  • When you are done setting the map selection size click Copy (7)
  • In Blender select paste (9)
  • In Blender set the Level of Detail setting (8) to "buildings with more details".
  • In Blender Click import (10)

2025-02-27_18-05-56.png

 

4. It might take some time, but your area import will show up in Blender's viewer. We will need to apply some settings to view it correctly:

  • Adjust your view to see your import. To zoom in/out or pan left/right click and hold 🔍 (1) or 🤚 (2) then drag your mouse. To rotate, click the scroll wheel of your mouse and drag sideways.
  • From the View tab (3), change “End” value (4) to 10,000m-100,000m to increase the field of view. 
  • Set the Viewport Shading to Material Preview (5) to be able to see the textures in the model.

2025-02-28_14-59-25.png

5. The area generated is never going to be exactly as it was selected in the web browser window, but we can trim it to focus on a specific boundary.  If there are missing elements in the generated model, delete it and recreate it with a larger area selection in the web browser step.


Part 4 Saving the Imported Map (2 Methods)

**Before moving forward with any editing step, let's save the file and manage the textures path.**

This will lock the images to the geometry in a more stable way preventing export errors

 

Method 1 (Recommended): Using Material Combiner Add-on

1. Select MatCombiner from the side tab. Note that newer versions might require an extra step:

      1.1. Click on "Install Pillow" and restart Blender. 

      Pillow.png

2. Select Update Material List list to to auto populate all the Google mesh images into the material list

3. Select Strict Custom Atlas type

4. Check 'Crop outside images'

5. Select Save Atlas to save the combined image file to any location on your computer. 

 

2024-11-01_15-09-58.png

 

 

Method 2: Without using Material Combiner Add-on

1. Select File > Save As or just press CTRL+SHIFT+S to save the original import in a local folder

2. Select the 3D model and click on “Replace Materials” in the Blosm tools:

 

Saving imported map-image1.png

 

3. After saving, Select File > External Data > Unpack Resources > Use files in current directory. This will create a folder with all the texture files in your local folder.

 

Saving imported map-image2-1.png

Saving imported map-image2-2.png

 

4. Once the folder is created, Select File > External Data > Pack Resources. This step will reconnect all textures with a local mapping that can be exported.

 

Saving imported map-image3.png

 


Part 5 Cleaning the imported map

The suggested initial edit is to remove the parts you don’t need from the 3D model and create an opening for the area of your project. There is a lot more edits that can be done to the model in Blender, which is not covered in here.

In this tutorial, we will use the Edit Mode function to manually delete parts from the imported model but if you are interested in learning more, please search online for instructions on how to use the following features in Blender:

  • Boolean Modifier
  • Knife Tool
  • Separate by Selection

To start, select the imported model and:

1. Select “Edit Mode” or press TAB to visualize all vertices of the 3D Model (1)

2. Toggle X-ray on to select all vertices inside your lasso select tool, whether or not they are behind other geometries (2)

3. Click on Z or press 7 on your numpad to activate a top-down orthographic view (3)

 

Cleaning Mesh-image1.png

 

4. Hold Shift + Left-click to create a lasso selection, select the areas to be removed from the 3D model, Right-click and select “Delete Vertices”. You can also press “W” to use different selection tools.

Cleaning Mesh-image2.png

 

5. Repeat this action to clean up your model, keeping just the relevant areas and creating an opening for the location of your project

💡 Note: Separating the streetscape from the buildings mesh helps enable easier and more effective editing and sequencing later in the process. Watch this section of our workshop video.  to see how. 

 

 

6. IMPORTANT!!!  If you did not use the Material Combiner add-on, you have to split the mesh into individual materials to export correctly

Select Mesh > Separate > By Material to split the model into smaller parts based on the textures. 

 

Cleaning Mesh-image4.png


Part 6 Exporting and uploading to cmBuilder

Save a copy of the Blender file to keep the original Blosm Import as a backup and follow these steps:

1. Click on File > Export > FBX

2. Set the Path Mode to “Copy”

3. Toggle "Embedded Textures" on

4. Set export limits to include only "Visible Objects"

5. Set Forward to “Y Forward”

6. Click Export FBX

 

Exporting-image1.png

Exporting-image2.png

 

5. Save the model in a local folder and import it to cmBuilder following the standard steps on this user guide page: 1.1 Import 3D Models

 

We have also covered the workflow in this article in the following User Workshop video:


FAQ:

Q1: I am getting an error when I try to import the maps data into Blender.

  • A1.1: Make sure you are using BLOSM 2.7 or higher as older versions are no longer supported. 
  • A1.2: Make sure you enable your Google maps API key and you have entered credit card information (you will not be charged unless you exceed a high threshold) 

Q2: When I import mesh into cmBuilder all the elements are grey. 

  • A2.1: Grey mesh means the image/texture did not export. Save and close Blender, reopen and repeat the steps in 'Save the imported map' listed above. 
  • A2.2: Also, when you reach the step of saving the Blender file (before unpacking/packing), try saving the file in an entirely new folder in a different directory.
  • A2.3: Double-check that your browser is using the GPU. Follow these steps to enable browser GPU settings.

Q3: When I import mesh into cmBuilder all the elements are colored randomly. 

  • A3.1: Splotchy image textures means that the images have lost their location references. This will happen if you do not 'Split by Material' as the last step before exporting. This can also happen when importing into cmBuilder. If you have already split by material, then re-importing the mesh into cmBuilder may fix the image referencing. 
  • A3.2: Also, when you reach the step of saving the Blender file (before unpacking/packing), try saving the file in an entirely new folder in a different directory.
  • A3.3: Double-check that your browser is using the GPU. Follow these steps to enable browser GPU settings.

Q4: After I imported the mesh into cmBuilder, parts of my mesh disappear when I rotate the camera. 

  • A4: Turn up Visible objects when camera moves to 100% or select the Best Quality graphics settings package under Settings > Graphics (tab)

Q5: After I imported the mesh into Blender, the result is blocky, how do I improve the quality?

  • A5: The quality of the mesh will vary depending on the quality of the Google satellite data in the area. You can double-check that the mesh was imported with the highest quality setting as described in Part 3 above, ensure the "Level of Details" setting was set to "buildings with more details".
Was this article helpful?
3 out of 3 found this helpful

Comments

0 comments

Please sign in to leave a comment.

Articles in this section