Abstract:
Systems, methods, and computer readable media to improve the operation of graphics systems are described. In general, collision avoidance techniques are disclosed that operate even when the agent lacks a priori knowledge of its environment and is, further, agnostic as to whether the environment is two-dimensional (2D) or three-dimensional (3D), whether the obstacles are convex or concave, or whether the obstacles are moving or stationary. More particularly, techniques disclosed herein use simple geometry to identify which edges of which obstacles an agent is most likely to collide. With this known, the direction of an avoidance force is also known. The magnitude of the force may be fixed, based on the agent's maximum acceleration, and modulated by weighting agents.
Abstract:
Techniques are disclosed for providing easily computable representations of dynamic objects so that a graphic systems' physics engine can more accurately and realistically determine the result of physical actions on, or with, such dynamic objects. More particularly, disclosed techniques generate a convex decomposition of an arbitrarily complex polygonal shape that is then simplified in a manner that preserves physically significant details, resulting in an object having a relatively small number of convex shapes that cover the original polygonal shape. The salience of a physically significant detail may be controlled via a threshold value which may be user or system specified.
Abstract:
Systems, methods and program storage devices are disclosed, which comprise instructions to cause one or more processing units to dynamically generate refined normal maps for 2D texture maps, e.g., supplied by a programmer or artist. Generally speaking, there are two pertinent properties to keep in balance when generating normal vectors comprising a normal map: “smoothness” and “bumpiness.” The smoothness of the normal vectors is influenced by how many neighboring pixels are involved in the “smoothening” calculation. Incorporating the influence of a greater number of neighboring pixels' values reduces the overall bumpiness of the normal map, as each pixel's value takes weight from those neighboring pixels. Thus, the techniques described herein iteratively: downsample height maps; generate normal maps; scale the normal maps to maintain bumpiness; and blend the generated scaled normal maps with generated normal maps from previous iterations—until the smoothness of the resultant normal map has reached desired levels.
Abstract:
The refresh rate of a display of a portable display device is dependent on the degree of device motion detected by one or more motion sensors included in the portable display device, according to an embodiment of the invention. In an embodiment, when no device motion is detected by the one or more sensors, the display of the portable display device is refreshed at an initial refresh rate. When the one or more motion sensors detects a degree of device motion above a motion threshold, the refresh rate of the display is decreased to a motion-based refresh rate, according to an embodiment. In an embodiment, the degree of motion of moving content on the display is also taken into account when determining the display refresh rate.
Abstract:
Systems, methods and program storage devices are disclosed, which cause one or more processing units to: obtain one or more two-dimensional components and one or more three-dimensional components; convert the pixel color values of the two-dimensional components into luminance values; create height maps over the two-dimensional components using the converted luminance values; calculate a normal vector for each pixel in each of two-dimensional components; and cause one or more processing units to render three-dimensional lighting effects on the one or more two-dimensional components and one or more three-dimensional components in a mixed scene, wherein the calculated normal vectors are used as the normal maps for the two-dimensional components, the pixel color values are used as the texture maps for the two-dimensional components, and the one or more three-dimensional components are rendered in the scene according their respective depth values, textures, and/or vertices—along with the one or more two-dimensional components.
Abstract:
A set of tools, in the form of a software developers kit (SDK) for a graphics rendering system, is provided to improve overall graphics operations. In general, the tools are directed to analyzing a scene tree and optimizing its presentation to one or more graphics processing units (GPUs) so as to improve rendering operations. This overall goal is provided through a number of different capabilities, each of which is presented to software developers through a new applications programming interface (API).