-
-
Notifications
You must be signed in to change notification settings - Fork 36.2k
Pull request for 3d click detection / event handling #20
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
Conversation
|
This is awesome! :O Thanks for taking the time! I wonder if the SelectableFace*.js are needed though. And somehow I think it could be nice if this could be moved to the /core folder as Traverse or Unproject... or maybe moved to /scenes and renamed to SceneTraverse or something like that? Just to make it more open/abstract (you may just want to check if there is something under a specific X,Y position with nothing to do with a user click... What do you think? |
|
Yes I like the sounds of it, |
|
on the other hand, abstracting it away from the camera might be over-abstracting it, because it's difficult to think of a way that it could be useful outside of the context of a camera and 3d projection. Maybe an XYUnprojection... although we don't want to lose the audience in abstractions, so an XYUnprojection could do the transform, and vectors could check for the nearest intersect among faces, and all of it could be tied together in a ClickResolver (or something that ties it all together) |
|
or better: Rays (2 vectors, position + direction) would check for the nearest intersect among faces. |
|
Unproject + Ray sounds good to me. I'll try to merge and move the stuff around. The idea of Three is to find the right balance between simplicity and extensibility. As an example, there is no VideoMaterial. There is a example that shows how to achieve it using BitmapUVMappingMaterial and Otherwise the library would end up being too big with many helpers inside of it that may or may not be of use in a lot of cases. |
|
Merged and refactored. |
Fixed itemsize to display all cubes
New components in three.extra.js
Pull in changes from r103
* Update WebXRManager.js * Update WebGLRenderer.js * Update WebGLRenderer.js deleted useless blank lines * Update WebXRManager.js - Deleted useless code and blank lines - refectored _getRenderTarget to getRenderTarget * Update WebGLRenderer.js Reflect the refactoring of getRenderTarget function
* Update WebXRManager.js * Update WebGLRenderer.js * Update WebGLRenderer.js deleted useless blank lines * Update WebXRManager.js - Deleted useless code and blank lines - refectored _getRenderTarget to getRenderTarget * Update WebGLRenderer.js Reflect the refactoring of getRenderTarget function Improve compatibility of Post-Processing with VR (mrdoob#23) * Update EffectComposer.js for better compatibility with VR * Update Pass.js for better compatibility with VR
* Update WebXRManager.js * Update WebGLRenderer.js * Update WebGLRenderer.js deleted useless blank lines * Update WebXRManager.js - Deleted useless code and blank lines - refectored _getRenderTarget to getRenderTarget * Update WebGLRenderer.js Reflect the refactoring of getRenderTarget function Improve compatibility of Post-Processing with VR (mrdoob#23) * Update EffectComposer.js for better compatibility with VR * Update Pass.js for better compatibility with VR
Hi mrdoob,
I really like your work. I implemented 3d click detection / event handling.
I'd like to discuss any changes you would like to see. I like the potential this has for making usable 3d web pages.
mindlapse