c-frame / aframe-extras

Add-ons and helpers for A-Frame VR.
https://c-frame.github.io/aframe-extras/examples/
MIT License
971 stars 305 forks source link

movement-controls broken with aframe 1.2.0 #349

Closed Turtleted21 closed 1 year ago

Turtleted21 commented 3 years ago

Hi movement-controls broken with aframe 1.2.0 <a-entity id="player" movement-controls="constrainToNavMesh: true; controls: keyboard" position="0 0 60" rotation="0 0 0"> worked with aframe 1.1.0

Thanks

n5ro commented 3 years ago

The big breaking change with threejs this month was the depreciation of Geometry, and the requirement that we use BufferGeometry instead. I found only one instance of THREE.Geometry in Aframe Extras and I merged a PR to fix it to THREE.BufferGeometry. This affected navmesh specifically. Try your code again and let me know if this fixed it or not.

jaydhulia commented 3 years ago

Hi @n5ro , I was wondering how do we test whether it works with the latest code changes or not? I tried to use https://cdn.jsdelivr.net/gh/n5ro/aframe-extras@geometry/dist/aframe-extras.min.js as the src, but it still had THREE.Geometry. Is it possible to elaborate on how to use the latest changes to test it? Thanks!

jaydhulia commented 3 years ago

Edit: It also seems that the PR won't fix it, because https://github.com/n5ro/aframe-extras/blob/afcebe83edfe9bcbda0dcf055ff399f34d8f2a5f/src/pathfinding/system.js#L20 this function still expects a three.geometry object as a parameter?

rossbishop commented 3 years ago

Still having issues with Navmesh because of this. Results in "THREE.Geometry is not a constructor" error.

https://github.com/n5ro/aframe-extras/blob/afcebe83edfe9bcbda0dcf055ff399f34d8f2a5f/dist/aframe-extras.js#L11127

I can see the change you made in the PR @n5ro, that might fix it, I'll have to build it locally. Would make sense for the dist to be rebuilt in the repo to reflect the new changes.

EDIT:

Okay, I see that that change isn't actually in the master branch anymore, perhaps because it doesn't work...? Using that change I get the error "(intermediate value).fromBufferGeometry is not a function"

n5ro commented 3 years ago

Yes I know about the issue with navmesh. I have been working on it, asking questions, researching the problem, I have some ideas about what I need to do to fix it.

Someone created a basic navmesh demo and I am using it to test a possible fix

here is what I am working on now https://glitch.com/edit/#!/navmesh1

and here is an older version of it https://glitch.com/edit/#!/navmesh

Please feel free to remix these and use them to test possible solutions.

-- Sincerely,

Micah Blumberg 3+ years webxr code experience, 5+ years virtual reality & technology journalist, he/him

Silicon Valley Global News (Science & Technology Journalism) and VRMA.io Virtual Reality Magazine (WebXR based news), http://svgn.io

Github github.com/n5ro github.com/micah1 http://github.com/n5ro

The Aframe WebXR Online Hacknight & San Francisco Virtual Reality https://www.meetup.com/virtualreality/events

Auto-bio: http://vrma.io Twitter: https://twitter.com/worksalt instagram: https://www.instagram.com/micahsun/ linkedin: https://www.linkedin.com/in/worksalt/

On Sat, Apr 10, 2021 at 2:51 PM Ross Bishop @.***> wrote:

Still having issues with Navmesh because of this. Results in "THREE.Geometry is not a constructor" error.

https://github.com/n5ro/aframe-extras/blob/afcebe83edfe9bcbda0dcf055ff399f34d8f2a5f/dist/aframe-extras.js#L11127

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/n5ro/aframe-extras/issues/349#issuecomment-817207033, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALABUCKL2VOYEB2X4LMRG6TTIDB53ANCNFSM4XIY76WQ .

n5ro commented 3 years ago

I'm still working on a fix to navmesh https://glitch.com/edit/#!/navmesh1 https://glitch.com/edit/#!/navmesh https://glitch.com/edit/#!/navmesh2

Feel free to read the commented code in each index file for details. I am trying to replace Three.Geometry which has been deleted from threejs with BufferGeometry. I could use some help testing this and withing this code, please remix the links and try to get it working also. In the meantime use Aframe 1.1.0 with A-Frame Extras until we get this fixed.

rossbishop commented 3 years ago

Okay, I've got what I believe to be a fix for this.

See https://github.com/n5ro/aframe-extras/pull/358

donmccurdy commented 3 years ago

It might be worth bumping to three-pathfinding v0.14.1, it has some fixes for the Geometry/BufferGeometry situation that were not in v0.14.0. See https://github.com/donmccurdy/three-pathfinding/pull/77.

vincentfretin commented 1 year ago

I updated three-pathfinding to 1.1.0 in #388