Abstract:
One exemplary implementation involves performing operations at a device with one or more processors, a camera, and a computer-readable storage medium, such as a desktop computer, laptop computer, tablet, or mobile phone. The device receives a data object corresponding to three dimensional (3D) content from a separate device. The device receives input corresponding to a user selection to view the 3D content in a computer generated reality (CGR) environment, and in response, displays the CGR environment at the device. To display the CGR environment the device uses the camera to capture images and constructs the CGR environment using the data object and the captured images.
Abstract:
A method may include receiving a communication from a device at an artificial intelligence controller including state information for a software application component running on the device, the state information including information corresponding to at least one potential state change available to the software application component, and metrics associated with at least one end condition, interpreting the state information using the artificial intelligence controller, and selecting an artificial intelligence algorithm from a plurality of artificial intelligence algorithms for use by the software application component based on the interpreted state information; and transmitting, to the device, an artificial intelligence algorithm communication, the artificial intelligence algorithm communication indicating the selected artificial intelligence algorithm for use in the software application component on the device.
Abstract:
A method of assembling a tile map can include assigning each tile in a plurality of tiles to one or more color groups in correspondence with a measure of a color profile of the respective tile: A position of each tile in relation to one or more neighboring tiles can be determined from a position of a silhouette corresponding to each respective tile in relation to one or more neighboring silhouettes within a set containing a plurality of silhouettes. The plurality of tiles can be automatically assembled into a tile map, with a position of each tile in the tile map being determined from the color group to which the respective tile belongs and the determined position of the respective tile in relation to the one or more neighboring tiles. Tangible, non-transitory computer-readable media can include computer executable instructions that, when executed, cause a computing environment to implement disclosed methods.
Abstract:
Techniques to automatically generate a navigation graph for a given environment and agent are disclosed. The environment may include an arbitrary number of polygonal obstacles arbitrarily arranged, concave or convex, static or dynamic. The disclosed operation extrudes (in a specified manner) the vertex of each obstacle. The extruded vertices comprise the navigation graph's nodes. Each object's extruded vertices may be joined to form a corresponding extruded object. Paths may then be identified by attempting to connect every extruded vertex with every other extruded vertex. Those paths intersecting any of the extruded objects are rejected as possible paths. In some embodiments, paths that are oriented in approximately the same direction having approximately the same length may be removed as being redundant.
Abstract:
Systems and techniques for generating an artificial terrain map can select a plurality of component terrains for each of several terrain types. Values of a selection noise map ranging between a lower bound and an upper bound can be computed on a tile-by-tile basis. One or more noise bands within the range of selection-noise-map values can correspond to each terrain type. The noise map can be sampled on a tile-by-tile basis to determine a tile value for each tile. Each respective tile can be assigned to the noise band in which the tile value falls. A terrain value can be assigned to each respective tile in the selection noise map based on the noise band assigned to the respective tile. Generated maps in machine-readable form can be converted to a human-perceivable form, and/or to a modulated signal form conveyed over a communication connection.
Abstract:
Systems and techniques for generating an artificial terrain map can select a plurality of component terrains for each of several terrain types. Values of a selection noise map ranging between a lower bound and an upper bound can be computed on a tile-by-tile basis. One or more noise bands within the range of selection-noise-map values can correspond to each terrain type. The noise map can be sampled on a tile-by-tile basis to determine a tile value for each tile. Each respective tile can be assigned to the noise band in which the tile value falls. A terrain value can be assigned to each respective tile in the selection noise map based on the noise band assigned to the respective tile. Generated maps in machine-readable form can be converted to a human-perceivable form, and/or to a modulated signal form conveyed over a communication connection.
Abstract:
This disclosure relates generally to the field of image processing and, more particularly, to various techniques and animation tools for allowing 2D and 3D graphics rendering and animation infrastructures to be able to dynamically render customized animations—without the need for the customized animations to be explicitly tied to any particular graphical entity. These so-called entity agnostic animations may then be integrated into “mixed” graphical scenes (i.e., scenes with both two-dimensional and three-dimensional components), where they may be: applied to any suitable graphical entity; visualized in real-time by the programmer; edited dynamically by the programmer; and shared across various computing platforms and environments that support the entity agnostic animation tools described herein. The entity agnostic animations created by the techniques described herein may be output directly to the current scene file that a programmer is working on, or they may be output to standalone, reusable entity agnostic animation object files.
Abstract:
A method may include receiving, at an artificial intelligence cloud service, a plurality of artificial intelligence feedback communications from a plurality of devices, wherein each artificial intelligence feedback communication of the plurality of artificial intelligence feedback communications includes data generated by software application components running on respective ones of the plurality of devices, the software application components including respective current artificial intelligence models, deriving, from the data included with each artificial intelligence feedback communication, an associated artificial intelligence model update for each of the respective current artificial intelligence models on the plurality of devices, and transmitting, to the plurality of devices, a plurality of artificial intelligence model update communications, wherein each artificial intelligence model update communication of the plurality of artificial intelligence model update communications includes the derived associated artificial intelligence model update for updating a corresponding one of the respective current artificial intelligence models on the plurality of devices.
Abstract:
Systems, methods, and computer-readable media for enabling efficient control of a media application at a media electronic device by a user electronic device are provided.
Abstract:
This disclosure relates generally to the field of image processing and, more particularly, to various techniques and animation tools for allowing 2D and 3D graphics rendering and animation infrastructures to be able to dynamically render customized animations—without the need for the customized animations to be explicitly tied to any particular graphical entity. These so-called entity agnostic animations may then be integrated into “mixed” graphical scenes (i.e., scenes with both two-dimensional and three-dimensional components), where they may be: applied to any suitable graphical entity; visualized in real-time by the programmer; edited dynamically by the programmer; and shared across various computing platforms and environments that support the entity agnostic animation tools described herein. The entity agnostic animations created by the techniques described herein may be output directly to the current scene file that a programmer is working on, or they may be output to standalone, reusable entity agnostic animation object files.