Facebook Patent | Systems and Methods for Gesture Handling in a Three-Dimensional Visual Scene
Publication Number: 20190018494
Publication Date: 2019-01-17
In one embodiment, a method includes displaying, on a client system, a visual scene with one or more first objects and one or more second objects. The one or more second objects are associated with an augmented reality context. A first touch event handler, associated with an operating system running on the client system, may receive a set of touch events and send the set of touch events to a second touch event handler running on the client system. The second touch event handler may detect a first subset of touch events relating to the one or more second objects. The second touch event handler may process the first subset of touch events and send a second subset of touch events relating to the one or more first objects to the first touch event handler. The first touch event handler may process the second subset of touch events.
Augmented reality provides a view of the real or physical world with added computer-generated sensory inputs (e.g., visual, audible). In other words, computer-generated virtual effects augment or supplement the real-world view. For example, a mobile phone with a camera may capture a real-world scene (as an image or video) and display a composite of the captured scene with computer-generated objects. The virtual objects may be, for example, two-dimensional and/or three-dimensional objects, and it may be stationary or animated. The virtual objects may be configured to be conceptually positioned anywhere within the captured scene. For example, from the perspective of a viewer, a virtual object may be positioned behind or in front of an object in the scene (e.g., a tree, a person, etc.). When the virtual object appears in front of the object in the scene, the virtual object in effect covers a portion of that object. Thus, the covered portion may not be visible to the viewer. In certain circumstances, a user who created an image/video with augmented-reality effects may have intended for the covered portion of the underlying image/video to be concealed.
A social-networking system, which may include a social-networking website, may enable its users (such as persons or organizations) to interact with it and with each other through it. The social-networking system may, with input from a user, create and store in the social-networking system a user profile associated with the user. The user profile may include demographic information, communication-channel information, and information on personal interests of the user. The social-networking system may also, with input from a user, create and store a record of relationships of the user with other users of the social-networking system, as well as provide services (e.g., wall posts, photo-sharing, event organization, messaging, games, or advertisements) to facilitate social interaction between or among users.
The social-networking system may send over one or more networks content or messages related to its services to a mobile or other computing device of a user. A user may also install software applications on a mobile or other computing device of the user for accessing a user profile of the user and other data within the social-networking system. The social-networking system may generate a personalized set of content objects to display to a user, such as a newsfeed of aggregated stories of other users connected to the user. One user may also send images and videos to other users of the social-networking system, such as those who are directly or indirectly connected to the user.
A mobile computing device–such as a smartphone, tablet computer, or laptop computer–may include functionality for determining its location, direction, or orientation, such as a GPS receiver, compass, gyroscope, or accelerometer. Such a device may also include functionality for wireless communication, such as BLUETOOTH communication, near-field communication (NFC), or infrared (IR) communication or communication with a wireless local area networks (WLANs) or cellular-telephone network. Such a device may also include one or more cameras, scanners, touch screens, microphones, or speakers. Mobile computing devices may also execute software applications, such as games, web browsers, or social-networking applications. With social-networking applications, users may connect, communicate, and share information with other users in their social networks.
In particular embodiments, a standard touch handler, associated with an operating system running on a client system, may be integrated with a custom three-dimensional (3D) touch handler, associated with an application running on the client system, for handling a variety of touch events received on a visual scene rendered on a display screen of the client system (e.g., a mobile device). The two touch handlers may work together to handle received touch events intended for different targets/objects in the visual scene. For instance, the custom 3D touch handler may process touch events relating to 3D objects in an asynchronous manner, and the standard OS touch handler may process touch events that are intended for system-level-user-interface objects or objects that are part of or integrated into the visual scene in a synchronous manner. 3D objects (referred to herein as overlaid objects) may be objects overlaid on top of a real-world scene indicating information about the scene such as in an augmented reality (AR) environment. For example, a user may be capturing a photo/video using his mobile device and one or more objects may be overlaid on top of the photo/video to provide decorative/entertaining effects or indicate information regarding a scene being captured by the device’s camera. In this example, when the user touches on the one or more overlaid objects, the touches may be handled by the custom 3D touch handler while the touches on any other portions (e.g., tap to focus the camera) may be handled by the standard touch handler. One reason for the integration of the two systems is that the main thread associated with the OS may become unresponsive and laggy when processing the touches on the 3D objects because the OS has to do a redraw in the 3D graphics to process the touches. The main thread of the OS may be blocked until it receives a response. With the integration of the two handlers discussed herein, touch events relating to specific 3D objects (e.g., 3D objects associated with an AR context) may be handled asynchronously by the custom 3D touch handler without blocking the main thread of the system and hence avoiding any delay in the response time. In addition, the embodiments covered in this application address an issue unique to AR scenes, where a system-level user interface (e.g., that of the camera) is integrated with a 3D engine’s user interface so that a user can interact with both the system-level features (e.g., camera focusing) and features associated with the rendered 3D objects.
The embodiments disclosed herein are only examples, and the scope of this disclosure is not limited to them. Particular embodiments may include all, some, or none of the components, elements, features, functions, operations, or steps of the embodiments disclosed above. Embodiments according to the invention are in particular disclosed in the attached claims directed to a method, a storage medium, a system and a computer program product, wherein any feature mentioned in one claim category, e.g. method, can be claimed in another claim category, e.g. system, as well. The dependencies or references back in the attached claims are chosen for formal reasons only. However any subject matter resulting from a deliberate reference back to any previous claims (in particular multiple dependencies) can be claimed as well, so that any combination of claims and the features thereof are disclosed and can be claimed regardless of the dependencies chosen in the attached claims. The subject-matter which can be claimed comprises not only the combinations of features as set out in the attached claims but also any other combination of features in the claims, wherein each feature mentioned in the claims can be combined with any other feature or combination of other features in the claims. Furthermore, any of the embodiments and features described or depicted herein can be claimed in a separate claim and/or in any combination with any embodiment or feature described or depicted herein or with any of the features of the attached claims.