摘要:
An application program interface may be used to construct a three-dimensional (3D) scene of 3D models defined by model 3D objects. The interface has one or more group objects and one or more leaf objects. The group objects contain or collect other group objects and/or leaf objects. The leaf objects may be drawing objects or an illumination object. The group objects may have transform operations to transform objects collected in their group. The drawing objects define instructions to draw 3D models of the 3D scene or instructions to draw 2D images on the 3D models. The illumination object defines the light type and direction illuminating the 3D models in the 3D scene. A method processes a tree hierarchy of computer program objects constructed with objects of the application program interface. The method traverses branches of a 3D scene tree hierarchy of objects to process group objects and leaf objects. The method detects whether the next unprocessed object is a group object of a leaf object. If it is a leaf object, the method detects whether the leaf object is a light object or a drawing 3D object. If the leaf object is a light object, the illumination of the 3D scene is set. If a drawing 3D object is detected, a 3D model is drawn as illuminated by the illumination. The method may also performs a group operation on the group of objects collected by a group object.
摘要:
A hierarchy of 2D visual objects and 3D scene objects are integrated for seamless processing to render 2D images including a 2D view of a 3D scene on a 2D computer display. The processing of the 3D model objects and 2D visual objects in the visual hierarchy is integrated so that the processing is readily handed off between 3D and 2D operations. Further the number of transitions between processing visual 2D objects and 3D model objects when creating a display image has no architectural limit. A data structure integrates computer program objects for creating 3D images and 2D images in a visual tree object hierarchy having visual 2D objects or 3D scene objects pointing to 3D model objects. The data structure comprises an object tree hierarchy, one or more visual 2D objects, and one or more 3D reference or scene objects pointing to 3D model objects. The visual 2D objects define operations drawing a 2D image. The 3D reference or scene objects define references pointing to objects with operations that together draw a two-dimensional view of a three-dimensional scene made up of one or more 3D models. The 3D reference or scene objects point to 3D model objects and a camera object. The camera object defines a two-dimensional view of the 3D scene. The 3D model objects draw the 3D models and define mesh information used in drawing contours of a model and material information used in drawing surface texture of a model. The material information for the surface texture of a model may be defined by a visual 2D object, a 3D reference or scene object or a tree hierarchy of visual 2D objects and/or 3D reference scene objects.
摘要:
Described is an adaptive scheduler associated with a desktop window manager that dynamically controls the rate at which graphics frames are composed. Values corresponding to performance when composing a frame are measured, and the frame composition rate is adjusted as necessary based on the values. The measured data is sampled to provide smooth adjustments. The sampled data is evaluated as to whether the current frame rate is too slow, too fast, or acceptable. If too slow, the frame rate may increased relative to the refresh rate, while if too fast, the frame rate is decreased relative to the refresh rate. In one implementation, the frame rate is too fast if a count of missed frames achieves a missed threshold value, or if a count of late frames achieves a late threshold value. The frame rate is too slow if a count of early frames exceeds an early threshold value.
摘要:
Described is a pluggable policy component that determines the look and feel, or windows visual experience, of a computer user interface. Window-related instructions are redirected to the policy component, while client area change instructions are provided to a substrate (into which the policy component plugs in) that includes a composition component. The plug-in policy component handles windows-related (e.g., structural or attribute) changes to a scene graph to construct and maintain the scene graph, while the substrate handles program content changes to the client areas within windows. The substrate may include a desktop window manager that has access to the client areas in the scene graph, whereby the desktop window manager can copy a client area for rendering. For example, the desktop window manager can provide a supplemental live thumbnail image of a window.
摘要:
A multiple-level graphics processing system and method (e.g., of an operating system) for providing improved graphics output including, for example, smooth animation. One such multiple-level graphics processing system comprises two components, including a tick-on-demand or slow-tick high-level component, and a fast-tick (e.g., at the graphics hardware frame refresh rate) low-level component. In general, the high-level, less frequent component performs computationally intensive aspects of updating animation parameters and traversing scene data structures, in order to pass simplified data structures to the low-level component. The low-level component operates at a higher frequency, such as the frame refresh rate of the graphics subsystem, to process the data structures into constant output data for the graphics subsystem. The low-level processing includes interpolating any parameter intervals as necessary to obtain instantaneous values to render the scene for each frame of animation.
摘要:
Described are mechanisms and techniques for providing interoperability between two different graphics technologies. An application includes windows of two types, a legacy type and a new type. A graphics system includes components that support each of the two types. Interoperability is achieved by creating legacy structures associated with any windows of the new type. A mapping is created that associates the legacy structures with the windows of the new type. Rendering of legacy windows is performed by a first graphics technology, and rendering of new windows is performed by a second graphics technology. The distinction between the two types of windows is noted by the existence of the legacy structures.
摘要:
The visual output of legacy child windows intended for display on a non-legacy parent are redirected to an off-screen bitmap buffer. A display component having enhanced visual functionality processes the output of the legacy child window with any of a number of visual effects. The display component composes the parent window by combining the non-legacy visual output with the processed output of the legacy child window. In this way, visual enhancements that have been technologically unavailable to the legacy child windows may be applied to the legacy child windows when used in combination with a new-technology parent window.
摘要:
The present invention is directed to a system and method for a unified composition engine that, in general, combines previously separate composition services. The unified composition engine provides a composition service used both in-process in conjunction with application programming interfaces (API's) and on the desktop as the desktop compositor.
摘要:
A method and system for rendering a desktop on a computer using a composited desktop model operating system are disclosed. A composited desktop window manager, upon receiving base object and content object information for one or more content objects from an application program, draws the window to a buffer memory, and takes advantage of advanced graphics hardware and visual effects to render windows based on content on which they are drawn. The frame portion of each window may be generated by pixel shading a bitmap having the appearance of frosted glass based on the content of the desktop on top of which the frame is displayed. Legacy support is provided so that the operating system can draw and render windows generated by legacy applications to look consistent with non-legacy application windows.
摘要:
Systems and methods are provided for providing anti-aliasing by introducing a falloff area around a graphics object to be rendered. The falloff area is shaded, using Gouraud shading or texture mapping to reduce the aliasing effects of the graphics object. The outside edge of the falloff area is set to be fully transparent, and the inside edge to an opacity matching the outer edge of the graphics object being rendered. To counteract bloating effects, the graphics object is shrunk by half the width of the falloff area. While the width of the falloff area may vary, generally, the width of the falloff area stays constant. In one embodiment, this width corresponds to the edge or diagonal of the square area mapped to each pixel.