Skip to content
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

VisionOS build support #1435

Open
demonixis opened this issue May 29, 2024 · 10 comments
Open

VisionOS build support #1435

demonixis opened this issue May 29, 2024 · 10 comments
Labels
enhancement New feature or request

Comments

@demonixis
Copy link

Hello,
Is it possible to you to add compiled binaries for Apple Vision Pro? It's a new target on 5.4.
Best,

@kring
Copy link
Member

kring commented May 30, 2024

We don't have a Vision Pro, but we welcome a pull request that adds support if you're up for it!

@demonixis
Copy link
Author

It works like the iOS port, all we need are compiled libs for VisionOS. If you use cmake, it's pretty simple to do that.
I can do the change on the build.cs files to add VisionOS support, it'll have the same library name, so basically

This is the only change to do if (Target.Platform == UnrealTargetPlatform.IOS || Target.Platform == UnrealTargetPlatform.VisionOS)

@demonixis demonixis reopened this May 30, 2024
@kring
Copy link
Member

kring commented May 30, 2024

Sounds good @demonixis. Please open a PR with that change, we'll throw it at our CI system, and then you can test out the build it produces. If it works, we can start including those binaries in the official release.

@demonixis
Copy link
Author

Got it, I just forked the repo. What is the best branch to start with? Is main ok?

@kring
Copy link
Member

kring commented May 31, 2024

Yep, main is perfect.

@plmokn107
Copy link

Is there a Cesium for Unreal Plugin that supports VisionOS

@demonixis
Copy link
Author

@plmokn107 not yet, I've forked the repo to make a PR with VisionOS support but don't had the time recently to submit it.

@demonixis
Copy link
Author

Hey @kring just submitted an initial PR with VisionOS support.

@plmokn107
Copy link

I tried to compile the cesium libs for the VisionOS platform, but encountered some errors. Can you help me find the cause of the errors.
Here is packging error:
ld: warning: Could not find or use auto-linked library 'swiftCxxStdlib' ld: warning: Could not find or use auto-linked library 'swiftCxx' ld: warning: Could not find or use auto-linked framework 'CoreAudioTypes' Undefined symbols for architecture arm64: "_genTangSpaceDefault", referenced from: void loadPrimitive>>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, std::__1::vector> const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

@plmokn107
Copy link

I tried to compile the cesium libs for the VisionOS platform, but encountered some errors. Can you help me find the cause of the errors. Here is packging error: ld: warning: Could not find or use auto-linked library 'swiftCxxStdlib' ld: warning: Could not find or use auto-linked library 'swiftCxx' ld: warning: Could not find or use auto-linked framework 'CoreAudioTypes' Undefined symbols for architecture arm64: "_genTangSpaceDefault", referenced from: void loadPrimitive>>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, std::__1::vector> const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o void loadPrimitive>(LoadGltfResult::LoadPrimitiveResult&, glm::mat const&, CreateGltfOptions::CreatePrimitiveOptions const&, CesiumGltf::Accessor const&, CesiumGltf::AccessorView> const&, CesiumGltf::AccessorView const&, std::__1::vector>&, CesiumGeospatial::Ellipsoid const&) in Module.CesiumRuntime.9.cpp.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

The problem was solved by adding the visorOS platform in build.cs, and now the Earth can be viewed in visionPro

@j9liu j9liu added the enhancement New feature or request label Sep 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants