Cleanup Map Tiles Fast Using Blender 3.6+
Vložit
- čas přidán 27. 07. 2024
- UPDATE - June 2024 - The script is now working with Blender 4.1
In this video we look at how to clean up a photogrammetry mesh automatically with a python script and the improved Blender 3.6 UV unwrapping tools.
You can find Blender 3.6+ here:
www.blender.org/download/
You can find the python script to automate the baking process here:
gitlab.com/VupliDerts/maps-3d...
You can find details about the new UV unwrapping capabilities in Blender here:
www.blender.org/download/rele...
You can find a guide to extracting google maps 3D data here:
• Google Maps 3D: Data i...
UPDATE - June 2024 - The script was broken but is now working with Blender 4.1
Epic. Thanks again!
Bloody amazing, thank you sir!
Wow this is pretty cool. Will definitely try this out!
Wow resource, very impressive result, thanks for sharing us
huge thanks mate!!!!
Anyone else still getting black materials? I am using 3.6 and also modifed the script ot incluede bpy.ops.object.bake(type='EMIT'), but not having any luck/
Very well done video. Sub'd. I would also love to cleanup the mesh into quads - even if it took a whole weekend of processing.
Крутое видео , спасибо )
Brilliant! 😘
Awesome video and script! Any tips on how to further clean up the model for a nice 3D printable STL?
life saver!!!
See here for information about capturing Google Maps 3D data:
czcams.com/video/F_XsmoZJmG8/video.html
Hey, Nicko. I import google 3D model using the Blosm Addon then when i bake it with your code the whole model becomes black. Do you have any idea why this is happening?
This error occurs:
Python: Traceback (most recent call last):
File "\Text", line 167, in
ValueError: bpy_struct: item.attr = val: sequence expected at dimension 1, not 'int'
@@pantelispargas2693 I have the same problem, any idea ?
@@huseyinalan95 same for me. Using Blender 4.1
There's only one word describing you.... "Genius..."
The script did not work in Blender 4
This is exactly what I'm looking for in order to export the textured mesh to Rhino. Unfortunately, I get the following error after hitting the Play Button:
Python: Traceback (most recent call last):
File "/Users/viktor/Downloads/231205_Hafenstrasse_3D_Blender.blend/Text", line 102, in
IndexError: bpy_prop_collection[index]: index 0 out of range, size 0
Any hints for a solution?
After a successful run of the script on 3.6.7, I started over and tried again, but I keep getting a similar error:
Step 2 | 369 / 0 | 100.0 % | Removed material.
Error: Python: Traceback (most recent call last):
File "\Text", line 159, in
IndexError: bpy_prop_collection[index]: index 0 out of range, size 0
same here @@APEX.86
@@APEX.86 I had the same issue before, and it solved by selecting the collection on the layer (not in the view)
Python: Traceback (most recent call last):
File "Y:\GMap\Google 3D Tiles_001.blend\Text", line 167, in
ValueError: bpy_struct: item.attr = val: sequence expected at dimension 1, not 'int'
Blender 4.1, any ideas ?
What if you zoom in to approach the road does it distort the mesh
should this work in blender 4? I just got error expecting 1
can you make that into an addon button for the N panel? would be helpful instead of having to copy paste that every time :)
it has an error on the 102 line bpy.context.view_layer.objects.active = comb_coll.objects[0] this one chat gpt cant fix it
Hi Nicko16, do you even work out a little hillside city near to frankfurt in order to 3d print ? ;) (b-day presend) - for sure against beer creates ? forgett coffee;)
Or maybe you havev ~10 scrips which will do this :) Blender & Co are to powerfull for one usecase to learn......
Hello, Followed your Tut and found it excellent and very helpful. . I was wondering if you can explain a process for trimming/clipping a model brought in via the BLOSM Blender method. In other words to clip our unwanted areas so it more clearly defines only your desired space on a map model. You can IM me if you like. THX!
Looking for the same info. Any attempts to cut the model results in a huge mess.
Hello @Nicko16, can you make a tutorial how to convert ply file to obj file using blender. I am having a hard time converting to obj files. I can convert but there is no color included. Thank you
102 error T.T File "/text", line 102, in
I am getting a python error when i run the script on line 102:
# set an active object
py.context.view_layer.objects.active = comb_coll.objects[0]
Error: Python: Traceback (most recent call last):
File "C:\Desktop\Working\Blender\Blosm\Downloaded 3D Tiles\testfile.blend\Text", line 102, in
IndexError: bpy_prop_collection[index]: index 0 out of range, size 0
i had the same error when using blender 4.0. switched to 3.6 and it worked
this is because you need to select the collection in the viewlayer window
@@semshimla it works for me.... Thanks a lottttttttttttttttttt!
hey! All the meshes join which is great, but but the texture doesn't save, they all get dropped and there is no image for me to save. do you have any advice? thanks :)
How can i adapt this to batch all objects in the scene without joining them?
Hello, may I please ask why is it that after running the script, my texture is all black?
change this line in the script from 'DIFFUSE' to 'EMIT' (if you want to know why, look at the materials that came from google, they all use emission nodes)
bpy.ops.object.bake(type='EMIT')
this only works in Blender 3.6, running the script in Blender 4.0 has other problems
@@markrussell67 you beauty. works a charm
Error: Python: Traceback (most recent call last):
ValueError: bpy_struct: item.attr = val: sequence expected at dimension 1, not 'int'
Keep getting this error in Blender with blender 4 unfortunately
For me, while importing a kinda huge model the script worked until the step 4 where it just stays forever and nothing happens.
Any idea why?
have you upgraded to blender 3.6? mine also got stuck at step for while working on blender 3.4
@@joshuadebruin you were right, now i got a black result after the script process. any idea?
Hi, after cleanup and unwrapping script is finished, combined baked texture appears black , how to fix it?
same here :(
same here too. Any fix?
@@brendonv101 yes, the fix is to change Bake type to Combined
@@pitervoznjak6197tried bake type as combined and still black. I am using osm to port the google tiles api in, i'll try the addon that is shown in this video. Although pulls data from the same api so unsure why it would change.
I had the same issue@@brendonv101
Did you manage to resolve it?
I've tried twice now, but I get a grey texture at the end...and it's not called "collection_texture". Any clues?
I looked at the code and your texture should have the same name as the collection that was active when you started the script, so confusingly, it may not have the same name as in the tutorial.
For me also everything came black, please help us to fix that
change this line in the script from 'DIFFUSE' to 'EMIT' (if you want to know why, look at the materials that came from google, they all use emission nodes)
bpy.ops.object.bake(type='EMIT')
this only works in Blender 3.6, running the script in Blender 4.0 has other problems
@@markrussell67 -> Update: followed this advice, still had black textures. Upon further inspection, I realized I had unpacked and exported materials from the test model I used due to problems I was having importing into TwinMotion. Tried a version before unpacking/exporting step and I can confirm it worked.
has anyone tested this with blosm?
yes, it running well
Turns the image file Black.... so disappointing .... Has anybody got around this?
@markrussell67 found the solution ! just " change this line in the script from 'DIFFUSE' to 'EMIT' (if you want to know why, look at the materials that came from google, they all use emission nodes)
bpy.ops.object.bake(type='EMIT')" .
it worked for me !
is there any way to contact you ? maybe discord or smthing similar ?
greetings
doesn't work for me, I get this error: Step 2 | 283 / 1 | 95.93 % | Removed material.
Step 2 | 284 / 1 | 96.27 % | Removed material.
Step 2 | 285 / 1 | 96.61 % | Removed material.
Step 2 | 286 / 1 | 96.95 % | Removed material.
Step 2 | 287 / 1 | 97.29 % | Removed material.
Step 2 | 288 / 1 | 97.63 % | Removed material.
Step 2 | 289 / 1 | 97.97 % | Removed material.
Step 2 | 290 / 1 | 98.31 % | Removed material.
Step 2 | 291 / 1 | 98.64 % | Removed material.
Step 2 | 292 / 1 | 98.98 % | Removed material.
Step 2 | 293 / 1 | 99.32 % | Removed material.
Step 2 | 294 / 1 | 99.66 % | Removed material.
Step 2 | 295 / 1 | 100.0 % | Removed material.
Step 3 | Creating new material.
Error: Python: Traceback (most recent call last):
File "C:\Users\info\Desktop\Blender test\000scripted clean up.blend\Text", line 167, in
ValueError: bpy_struct: item.attr = val: sequence expected at dimension 1, not 'int'
hey, sorry, have you managed to find a solution? i'm having the very same issue
I have this same error.. but I am trying with blosm and blender 4.0. Thinking the blender version might be an issue
@@philhighfield4741 try downloading the newest version of Blosm they fixed it as best as they could.
Had the same error when I tried using geometry created in Blender 4.0 in a Blender 3.6.9 file. Then tried creating a new blend file in Blender 3.6.9 and use Blosm there, import new google maps tiles in this older blender version and run the script, then it worked. But got black textures and had to change the DIFFUSE to EMIT like a comment below suggests. Then it worked perfectly.
I am having the exact same issue on Blender 4.0. Please update the script.