Stay organized with collections Save and categorize content based on your preferences.
The object manipulation demo showcases how you can allow users to interact with the scene around them using a 3DoF controller. A range of different types of object interactions are included in the scene:
Object manipulation can be leveraged across a broad range of VR use cases, including puzzle games, inventory based adventure games, and productivity and creation applications.
Getting StartedThe Object Manipulation demo is included in Daydream Elements. It replaces the default Pointer with a pointer designed for complex interactions with physical objects.
Object Manipulation PointerThe object manipulation pointer prefab overrides the base pointer to do the following:
This prefab is intended as a drop-in replacement for the GvrControllerPointer
prefab.
The moveable physics object class is meant to provide an example for controlling physics objects with the object manipulation pointer, or be used as-is. It requires a rigidbody, and uses forces to move objects in space, so that objects can interact with each other.
There is a folder of preconfigured objects with varying mass, titled ‘Animals'.
DrawersIn order to make drawers feel correct with a 3DoF controller, drawers are manipulated based on the screen space forward vector of the drawer. If a user is exactly head-on to a drawer, an arbitrary vector is chosen. As such, the drawers exemplify a range of possible screen-space interactions.
The example drawer script only operates along the object's parent-local z-axis. In the case of an object without a parent, the drawer will operate along the world z-axis.
Hinged DoorsHinged doors operate by using the forward vector of the controller, and the distance between that forward vector and the object being manipulated to construct a ‘pull vector'. This allows a user to open and close a door while facing the door with a 3DoF controller.
Doors rotate around parent-local y-axis, or in the case of an object without a parent, the world y-axis. To configure a door, specify the minimum and maximum yaw (rotation about y), as well as the initial yaw offset (the direction a door should face normally).
CustomizationTo create a new type of interactive object, either duplicate one of the existing classes, or subclass BaseInteractiveObject
.
All rights reserved. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-10-09 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-10-09 UTC."],[[["The Object Manipulation demo within Daydream Elements enables users to interact with a virtual environment using a 3DoF controller, allowing for actions like opening drawers, manipulating objects, and engaging with physics-based elements."],["This demo leverages a specialized pointer designed for complex interactions, enabling users to grab, move, and rotate objects with intuitive controls."],["Objects within the demo can be customized and programmed to react to user input in various ways, including rotating, moving along paths, or triggering specific events."],["Developers can create their own interactive objects by extending provided classes and defining custom behaviors for user interactions."],["The demo showcases how object manipulation enhances VR experiences like puzzle games, inventory systems, and productivity tools by offering a richer, more engaging level of interactivity."]]],["The core of this content is about object manipulation in VR using a 3DoF controller. It outlines how users can interact with objects, such as opening sliding drawers and hinged doors, lifting/placing objects with physics-based movement, and using a bendy laser pointer. A special `Object Manipulation Pointer` prefab tracks held objects, visually shows applied force, and handles standard pointer actions. A `MoveablePhysicsObject` class example allows rotating objects and moving them. Drawers and doors interactions are based on controller movements. New interactive objects can be created.\n"]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4