Giter Club home page Giter Club logo

Comments (14)

warrenm avatar warrenm commented on September 4, 2024 5

Nothing published yet. Stay tuned.

from gltfkit2.

warrenm avatar warrenm commented on September 4, 2024

It will certainly be nontrivial, partially because of the number of features to be implemented, and partially because RealityKit has a bias toward USD(Z). What use cases do you have that aren't addressed by Reality Converter?

from gltfkit2.

FreakTheMighty avatar FreakTheMighty commented on September 4, 2024

USDZ may be the way to go, but we are dealing with user generated content that will need to be converted to USDZ. The ecosystem for this doesn't seem great. It seems like most of Apple's investments are going to RealityKit so I'm concerned starting a new project with SceneKit.

from gltfkit2.

issacclee avatar issacclee commented on September 4, 2024

Same here, we produce massive amount of gltf with custom data embedded in "extra". We run apple's usdconvert CLI on our server to convert gltf to usdz, which would strip away those extra information or any custom gltf extension.

A full fledge gltf loader for realitykit would be a great add on to the entire realitykit ecosystem.

from gltfkit2.

FreakTheMighty avatar FreakTheMighty commented on September 4, 2024

I would echo @issacclee regarding extensibility in glb. We need to support custom vertex attributes and while I'm not sure if this library currently supports them I know the format does and that it could be added. USDZ on the other hand will not be extensible.

For our use case we currently only need geometry + hierarchy + custom vertex attributes.

from gltfkit2.

issacclee avatar issacclee commented on September 4, 2024

I would echo @issacclee regarding extensibility in glb. We need to support custom vertex attributes and while I'm not sure if this library currently supports them I know the format does and that it could be added. USDZ on the other hand will not be extensible.

For our use case we currently only need geometry + hierarchy + custom vertex attributes.

It seems like RealityKit do expose great deal of low level api for us to write a GLTF loader...do you have any ideas on that? Although I'm not a swift guru, but I'm certainly willing to help.

Also, checkout this repo https://github.com/schwa/SwiftGLTF

from gltfkit2.

warrenm avatar warrenm commented on September 4, 2024

Jonathan's project is definitely worth a look, and the code is tidy, but it's far from complete. I've begun looking into this myself, and I have a rough idea of how to go about this, but it's going to take quite a bit more work.
A very simple glTF 2.0 asset loaded by the in-progress RealityKit converter

from gltfkit2.

FreakTheMighty avatar FreakTheMighty commented on September 4, 2024

@warrenm thats awesome! Any chance you have that in a branch. We may be able to test and contribute improvements.

from gltfkit2.

warrenm avatar warrenm commented on September 4, 2024

We have helmet.
Screenshot 2023-02-07 at 4 25 03 PM

from gltfkit2.

warrenm avatar warrenm commented on September 4, 2024

Initial support for RealityKit conversion available in 50ea450.

Basic usage is:

let asset = try GLTFAsset(url: assetURL)
if let scene = asset.defaultScene {
    let rootEntity = GLTFRealityKitLoader.convert(scene: scene)
    let worldOriginAnchor = AnchorEntity()
    arView.scene.addAnchor(worldOriginAnchor)
    worldOriginAnchor.addChild(rootEntity)
}

Feedback welcome.

from gltfkit2.

issacclee avatar issacclee commented on September 4, 2024

Initial support for RealityKit conversion available in 50ea450.

Basic usage is:

let asset = try GLTFAsset(url: assetURL)
if let scene = asset.defaultScene {
    let rootEntity = GLTFRealityKitLoader.convert(scene: scene)
    let worldOriginAnchor = AnchorEntity()
    arView.scene.addAnchor(worldOriginAnchor)
    worldOriginAnchor.addChild(rootEntity)
}

Feedback welcome.

That's excellent work, I'll look into it later today and see what I can contribute.

from gltfkit2.

FreakTheMighty avatar FreakTheMighty commented on September 4, 2024

@warrenm I'm getting a fatal error while unwrapping an optional nil value using this file. Apologies for the size, I don't have a smaller repro ATM.

The exception throws at this line

let meshDescriptors = try gltfMesh.primitives.map { try self.convert(primitive: $0, context:context)! }

from gltfkit2.

FreakTheMighty avatar FreakTheMighty commented on September 4, 2024

With this pull request the model load! #28

from gltfkit2.

warrenm avatar warrenm commented on September 4, 2024

At this point we're well on our way to supporting RealityKit conversion. In the interest of being able to track individual problems as they arise, and file PRs against them, please create new issues with any problems you encounter. Thanks for the discussion so far!

from gltfkit2.

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.