Cesium Blender Upload Issue

I have just started using Cesium as I want to easily get my Blender objects into Omniverse as the USD converter does not always give the best results.

However when following the example of how to upload to cesium ion with blender, I can’t even upload the “Cube” from the example. I do not get an error or anything, I press upload and nothing happens except the messages “Uploading Output” but blender does not launch the web browser where I should upload to Cesium.

I’m working on Blender 3.6.5

Hi,
I apologize that the plugin is not working correctly. I have opened an issue with our team and will keep you updated on the status.

In the mean time, please export the objects from Blender as an OBJ (or any other format that Cesium ion supports) and upload them using the ion website. That should allow you to have your objects tiled and hosted on Cesium ion.

The current Cesium Blender add-on is version 1.0.0
It only works with Blender version 2.80 to 2.93 LTS.
I’ve personally tried it with Blender 4.1.1, 3.6 LTS and 2.93 LTS.
Only 2.93 LTS works.

this is a breadcrumb for future lost souls

are there any plans to upgrade the blender addon to support blender newer version (4+)? Blender is goto tool for creating models for lots of us.

I am getting this error while uploading using 4.2.12

Info: Preparing upload..
Info: Exporting Project..
Info: Uploading Output..
Exception in thread Thread-36 (ion_worker):
Traceback (most recent call last):
File “C:\Program Files\Blender Foundation\Blender 4.2\4.2\python\Lib\threading.py”, line 1045, in _bootstrap_inner
self.run()
File “C:\Program Files\Blender Foundation\Blender 4.2\4.2\python\Lib\threading.py”, line 982, in run
self.target(*self.args, **self.kwargs)
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\operators\upload.py”, line 189, in ion_worker
manager.upload(file_path, boto_progress=timer.put_bytes)
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\operators\upload.py”, line 53, in upload
import boto3
File "C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\boto3_init
.py", line 16, in
from boto3.session import Session
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\boto3\session.py”, line 17, in
import botocore.session
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\session.py”, line 29, in
import botocore.configloader
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\configloader.py”, line 19, in
from botocore.compat import six
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\compat.py”, line 25, in
from botocore.exceptions import MD5UnavailableError
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\exceptions.py”, line 15, in
from botocore.vendored import requests
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests_init.py”, line 58, in
from . import utils
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\utils.py”, line 26, in
from .compat import parse_http_list as parse_list_header
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\compat.py”, line 7, in
from .packages import chardet
File "C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\packages_init
.py", line 3, in
from . import urllib3
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\packages\urllib3_init.py”, line 10, in
from .connectionpool import (
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\packages\urllib3\connectionpool.py”, line 38, in
from .response import HTTPResponse
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\packages\urllib3\response.py”, line 9, in
from .collections import HTTPHeaderDict
File “C:\Users\frame\AppData\Roaming\Blender Foundation\Blender\4.2\scripts\addons\io-cesium-ion\third_party\botocore\vendored\requests\packages\urllib3_collections.py”, line 1, in
from collections import Mapping, MutableMapping
ImportError: cannot import name ‘Mapping’ from ‘collections’ (C:\Program Files\Blender Foundation\Blender 4.2\4.2\python\Lib\collections_init
.py)

thanks

Harsh

Hi,

We don’t currently have an estimate on when the addon will be fixed for the newer version of blender. Currently if you are facing issues, please export the model as an OBJ and upload that to Cesium ion.

Thanks,

Ankit

This is tracked in Support for Blender 4.x · Issue #12 · CesiumGS/cesium-ion-blender-addon · GitHub . For someone who is a bit more familiar with Blender, this upgrade might not be soooo difficult, but there currently is no timeline for addressing this yet.