3D Tileset Connection failed error

LogHttp: Warning: 000004BBF9820500: request failed, libcurl error: 6 (Couldn’t resolve host name)
LogHttp: Warning: 000004BBF9820500: libcurl info message cache 0 (Found bundle for host: 0x4bbc9020990 [serially])
LogHttp: Warning: 000004BBF9820500: libcurl info message cache 1 (Could not resolve host: .)
LogHttp: Warning: 000004BBF9820500: libcurl info message cache 2 (Closing connection 8)
LogCesium: Error: [2023-06-06 23:39:07.626] [error] [TilesetContentManager.cpp:946] An unexpected error occurs when loading tile: Connection failed.
LogCesium: Error: [2023-06-06 23:39:07.629] [error] [TilesetContentManager.cpp:946] An unexpected error occurs when loading tile: Connection failed.

On the Unreal Engine, I set the source to From Url and Url to a tileset.json on http website.It does load successfully,but it then report the erros above.I have already know the reason is uris in the json file contain chinese words,but there’s a need to enable to use chinese words,not only english words.
So,I want to kown how could it work?
If you can help me, I’d really appreciate it

Thank you!

I’m not aware of anything we’re doing that would prevent arbitrary Unicode characters from making it through successfully. But there are a lot of variables, including many added by Unreal Engine itself.

My best recommendation is to set yourself up with a Cesium for Unreal development environment (instructions here) and then step through in the debugger to see where the problem lies. Check if the characters are parsed correctly from the JSON by cesium-native and RapidJSON. They should be represented as UTF-8 within cesium-native. Check if they’re correctly converted to UTF-16 (at least on Windows) to pass to Unreal’s HTTP module. Then check if Unreal itself correctly passed them to libcurl.

If the problem lies within cesium-native or Cesium for Unreal, we’re happy to accept a reasonable pull request to address it.

Thanks for your suggestion.I’ll have a try tomorrow.

Hi,Kevin,I have resolve the problem . I add RFC3986 encode function in the Uri.cpp under the folder CesiumUtility .During the cpp,I add it in Uri::resolve function to make it enable correctly used by UriParser.The UriParser doesn’t support chinese words.Maybe it don’t support some other kinds of language also. And thanks you again for your help!

Glad to hear you got it working. We’d be interested to take a look at a pull request with your change, if you’re up for it.