Giter Site home page Giter Site logo

Apple Vision OS support about gltfast HOT 20 OPEN

atteneder avatar atteneder commented on June 3, 2024
Apple Vision OS support

from gltfast.

Comments (20)

from2001 avatar from2001 commented on June 3, 2024 3

I made a Visual Scripting node library for glTFast two months ago, I also realized that some of the features didn’t work on visionOS as mentioned in this issue.

I found that Sharders in UnityGLTF work on visionOS and made a material generator to apply the shaders to imported models at runtime.

https://github.com/from2001/glTFast_VisualScriptingNodes

from gltfast.

tarukosu avatar tarukosu commented on June 3, 2024 3

With a few modifications, glTFast worked on visionOS. The rendering pipeline is URP.

  1. Changed the textures to always be readable by the CPU.
    image

  2. Modified Emission to not use glTFast_HDRP_GetEmissionHDRColor and RPSwitch.
    image

  3. Changed BaseColor to not use ProjectColorSpace.
    image

  4. Remove Emission from the Fragment node in glTF-unlit.
    image

You can try it by adding the following line to the manifest.json and importing it:

    "com.atteneder.gltfast": "https://github.com/HoloLabInc/glTFast.git#polyspatial-urp",

from gltfast.

ptc-rgrasset avatar ptc-rgrasset commented on June 3, 2024 2

Hi Andreas,

Thanks for looking into this. We are really interested about this capability/platform support.

A couple of month ago we also tried and I was able to get that partially working on the simulator:
https://discussions.unity.com/t/gltfast-shaders-in-polyspatial/280868/4
What I did at the time was to fully rebuild the shader graph using the similar version of the URP package available in the sample. It seems there was some incompatibility issue with some of the graph node/your specific package (and there was no real "urp shader graph upgrade" for some of the nodes). It resolved the black issue but the rendering was still sub-part (material not matching, transparency/depth issue, etc.).

FYI: As it may seem counterintuitive but for us getting the draco package support on visionOS is the most important obstacle as it is difficult to turn that off from our prod or test pipeline, and it will avoid us to duplicate effort to try to rebuild draco from source with potentially different build settings as the one you are using.

from gltfast.

aherbig avatar aherbig commented on June 3, 2024 2

@atteneder Does glTFast work as-is for fully immersive/VR apps? Or do these issues need to be fixed across the board (windowed, immersive/MR, and fully immersive/VR) for full functionality?

Can confirm that glTFast works properly for Fully Immersive Apps.

from gltfast.

atteneder avatar atteneder commented on June 3, 2024 2

@atteneder Does glTFast work as-is for fully immersive/VR apps? Or do these issues need to be fixed across the board (windowed, immersive/MR, and fully immersive/VR) for full functionality?

To quote the PolySpatial visionOS docs:

For technical, security, and privacy reasons, visionOS does not allow Metal-based shaders or other low level shading languages to run when using AR passthrough.

That leaves me to assume they're working in windowed and fully immersive mode already.

I'm currenlty working on getting mixed reality cases (conversion to MaterialX) working as good as possible as well.

hth

from gltfast.

atteneder avatar atteneder commented on June 3, 2024 1

KTX' first step towards visionOS is coming along well.

from gltfast.

yosun avatar yosun commented on June 3, 2024 1

n.b. Unity's GLTFast works out of the box - just add it by name to package manager

https://docs.unity3d.com/Packages/[email protected]/manual/index.html

from gltfast.

SashelI avatar SashelI commented on June 3, 2024 1

With a few modifications, glTFast worked on visionOS. The rendering pipeline is URP.

You're my savior @tarukosu

from gltfast.

yosun avatar yosun commented on June 3, 2024

Manually convert to URP at runtime or editor script?

from gltfast.

atteneder avatar atteneder commented on June 3, 2024

Manually convert to URP at runtime or editor script?

I don't get what you're asking. Can you elaborate?

Update regarding shaders: The glTF shader graphs have a couple of incompatible elements in them. One solution could be to create a separate, visionOS compatible set of shader graphs.

from gltfast.

yosun avatar yosun commented on June 3, 2024

VisionOS seems to support URP and Unlit shaders. So I wonder about converting?

from gltfast.

atteneder avatar atteneder commented on June 3, 2024

VisionOS seems to support URP and Unlit shaders. So I wonder about converting?

I don't understand that question. Can you be more specific? Convert what to what?

from gltfast.

yosun avatar yosun commented on June 3, 2024

Actually is vertex color supported for runtime glb import?

from gltfast.

LarissaKim avatar LarissaKim commented on June 3, 2024

@atteneder Does glTFast work as-is for fully immersive/VR apps? Or do these issues need to be fixed across the board (windowed, immersive/MR, and fully immersive/VR) for full functionality?

from gltfast.

atteneder avatar atteneder commented on June 3, 2024

Actually is vertex color supported for runtime glb import?

It should be, with glTFast's shader graphs.

from gltfast.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.