Add 2D interactivity on any 3D surface in three.js with ZIM TextureActive. Visit the TextureActive Studio at https://zimjs.com/studio to see how! ZIM has user-editable paths - the only framework that we know that does! And you can animate and drag along the paths too!
See https://zimjs.com/015 for an intro to TextureActives.
ZIM at https://zimjs.com is a JavaScript Canvas Framework - code creativity - visit us at https://forum.zimjs.com for questions and more examples!