-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cesium unity plugin on arch linux #513
Comments
@2tata GLB files are key to what Cesium for Unity does, so it's definitely able to decode them on other platforms. Now that you have the plugin building on Linux (nice job working that out!) I suggest you try opening the Cesium for Unity Samples project and see if it works for you. That will be more reliable a test than creating your own project, particularly one with your own Google key. Google keys sometimes just take awhile to become active, which trips people up. It's also possible you're running into the same problem that this person did: I can't entirely explain why that would happen, but explicitly calling |
on my second attempt I alreay use the Cesium for Unity Samples. I also tried it with the Last Night I also tried it on an older Mac book which works out of the box.
Where do I need to call that in the Cesium for Unity Samples ? |
I modified the ....
if (responseData.size() > 4 && std::string(reinterpret_cast<const char*>(responseData.data()), 4) == "glTF") {
// Handle glTF binary data
SPDLOG_LOGGER_ERROR(pLogger, "Received glTF binary file, not a JSON tileset.");
// Handle .glb file logic here, e.g., load the 3D model
} else {
// Try parsing as JSON
tilesetJson.Parse(
reinterpret_cast<const char*>(responseData.data()),
responseData.size());
if (tilesetJson.HasParseError()) {
SPDLOG_LOGGER_ERROR(
pLogger,
"Error when parsing tileset JSON, error code {} at byte offset {}",
tilesetJson.GetParseError(),
tilesetJson.GetErrorOffset());
return TileLoadResult::createFailedResult(std::move(pCompletedRequest));
}
}
... The error message is |
Yep, the problem is definitely that That But that apparently isn't working for some reason. You'll have to investigate to figure why that call isn't happening (or isn't happening in time). The joys of trying to support a new platform, eh? |
Hi, first of all thanks for this amasing software!
I got an issue installing cesium in unity on linux.
to my system:
6.10.10-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 12 Sep 2024 17:21:02 +0000 x86_64 GNU/Linux
unityhub version 3.9.1
--> https://aur.archlinux.org/packages/unityhubI installed the 2022.3.48f1 editor version
### first attempt
I created a new project (3D core).
under "services" -> "gerneral settings" -> "Package Manager" I added following:
then I installed the cesium plugin in version 1.13.0
The consol log give me some errors:
seems that Reinterop for dotnet is not coming with that repo plugin.
### second attempt
I followd the instructions here: https://github.com/CesiumGS/cesium-unity/blob/main/Documentation~/developer-setup.md
installed:
extra/dotnet-sdk 8.0.8.sdk108-1 (85.3 MiB 300.0 MiB) (Installed)
extra/nasm 2.16.03-1 (341.2 KiB 2.4 MiB) (Installed)
dotnet --version 8.0.108
cmake version 3.30.4
cloned cesium-unity-samples
then
cesium-unity
inside it.in
cesium-unity-samples/Packages/com.cesium.unity
i called:got the message:
did:
run into following error:
(this is maybe interresint for you guys)
work around it with following:
run the first cmake call again:
then the second one:
now in unity i added the
cesium-unity-samples
project but with 2022.3.48f1 editor version (the 2021 one seems not work on arch anymore). logedin into cesium ion. Then added aBlank 3D Tiles Tileset
on the gameobjectCesium3DTileset
I switch to url and use my maps api urlhttps://tile.googleapis.com/v1/3dtiles/root.json?key=<my key>
then I get following error:
in
/home/<user>/cesium-unity-samples/Packages/com.cesium.unity/native~/extern/cesium-native/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp
in line 697i change the error message parameter to tileUrl wich gave me the uri provided by the maps google api
this is a valid glb compressed Json file wich I checked with https://github.khronos.org/glTF-Validator/
the google maps API sayes somethng from:
which I didnt investigated further.
It seems that the cesium plugin have an Issue decompressin glb files.
Does you have any idea how i can fix it?
The text was updated successfully, but these errors were encountered: