news.md
January 28, 2025 ยท View on GitHub
News
v3.0.5
- Add instanceId to Object3D.userData if available
- Add instruction to use superhands with aframe 1.5.0 and onward
v3.0.4
- A-Frame 1.4.0 support confirmation
- Updated dependencies and fixed tests and examples
- No API changes
v3.0.3
- A-Frame 1.3.0 support confirmation
- Updated dependencies and fixed tests and examples
- No API changes
v3.0.1
- A-Frame 1.0.4 support confirmation
- Updated dependencies and fixed tests
- No notable changes
v3.0.0
- The 'Less is More' update. This package has scope has been narrowed to keep
it maintainable, increase the frequency of updates, and allow for focus on
implementing new gestures instead of peripheral components.
progressive-controlsanda-locomotorremoved from this repo. I understandprogressive-controlswas fairly popular, but is has a compatibility issue with the latest A-Frame which was holding up releases for the entire package. I intend to refactor it and release it in another library, but you can still use the last version by including its source file in your project.
- Smarter raycasting support: chooses nearest intersected entity first, reordering stack as distances change (* if the raycaster in use updates intersection objects' distances)
- Improved nested entity handling: only one component can react to each gesture event.
- Improved stretching of complex physics bodies: all shapes, child entity shapes, and offsets are updated
- Added support for
'worker'and otheraframe-physics-systemdrivers ingrabbable - v2.x deprecations removed:
drag-droppablecomponent andsuper-hands.colliderStateproperty.
v2.1.0
- A-Frame v0.8.0 (WIP/master branch) support
- Deprecate
super-hands.colliderStatecolliderEndEventandcolliderEndEventPropertynow supported bysphere-collider
- Deprecate
drag-droppable; replace with separatedraggableanddroppablereaction components.droppablecan selectively accept or reject attempted 'drag-drop' gestures depending on the entity being dropped on it. progressive-controlsupdates- Use mixins for customization
- Remove extra controller on ground from single controller setups
- Add
controllerModeloption to bypass default controller models
v2.0.2
- A-Frame v0.7.0 and master support
- Implement aframe-machinima-testing for automated functional testing using motion captured user input
- Bug fixes:
- Improved handling of touch (eliminate doubled events)
- Fix odd behavior of repeatedly or simultaneously grabbed objects
v2.0.1
- Bug fixes:
'mouseup'now fires correctly on target entities- Fixed lingering hover when
progressive-controlsadvances from gaze mode - Fixed lingering hovers when
progressive-controlsin point mode - Fixed some new files being excluded from babelify & breaking uglify
v2.0.0
- Consistent experience across devices:
super-handsnow provides interactivity for all levels of VR controls: desktop mouse, mobile touch ("magic window"), cardboard button, 3DOF (GearVR and Daydram), and 6DOF (Vive and Oculus Touch)progressive-controlsmeta-component to automatically setup interactive controls on any device from desktop to Vive- Upgraded
grabbablereaction component.- Now works with pointing and moving at a distance, e.g. with
3DOF controllers and
laser-controls, using controller orientation and position to move grabbed entities
- Now works with pointing and moving at a distance, e.g. with
3DOF controllers and
- Button mapping for reaction components: each reaction component now has
startButtonsandendButtonsschema properties to specify acceptable buttons. This allows different entities to react to different buttons. For examplea-locomotor'sgrabbablecan be set to respond to different buttons than othergrabbableentities so that grabbing entities and locomotion are separate gestures for the user. a-locomotornow functions independently from colliders; removedadd-to-collidersattribute.- Performance improvements in
grabbableandstretchable - Gesture initiation changed to occur only on button press rather than button press and collision. Pressing a button in empty space and then moving into an object will no long scoop it up in a grab.
v1.1.0
- Compatibility with desktop mouse control via A-Frame
cursorcomponent- Added new schema property
colliderEventPropertyto configure where in theevent.detailsto look for the collision target - Requires some configuration of schema properties, see new example: Mouse Controls
- Added new schema property
- Select examples now have
avatar-replayerto preview actions without needing VR equipment
v1.0.1
- A-Frame v0.6.0 compatibility: fixed issue with camera freezing when using
a-locomotor's automatic camera config - Updated documentation and examples with latest versions of
aframe-extrasandaframe-physics-system.
v1.0.0
a-locomotor: drop-in freedom of motion for WebVR experiences with this new primitive- Maturation of A-Frame style API: Reaction components now need to cancel
gesture events in order to communicate acceptance of the gesture to
super-hands. This improves state tracking and handling of overlapping/nested entities - Improved Global Event Handlers integration:
- When overlapping entities create multiple potential targets for GEH events, the events fire on all potential targets
clicknow functions more like its mouse counterpart, only firing if a mouseup occurs after a mousedown and without losing collision with the target entity
- Two-handed grabbing:
grabbablecan now process grabs from multiplesuper-handsentities. In non-physics interactions, this makes passing entities between hands much easier. In physics-based interactions, this creates multiple constraints for advanced handling strechableflexibility: state tracking of hands attempting to stretch moved fromsuper-handstostrechable. This should allow for different avatars in a multi-user setting to stretch a single entity cooperatively- Added machinima testing for automated testing based on motion-captured user input to improve regression detection