Virtual surface compaction
AssigneeMicrosoft Technology Licensing, LLC
InventorsReiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo, Blake D. Pelton
Life of this patent
Estimating the term…
Abstract
Virtual surface update and composition techniques are described. These techniques support the use of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, use of surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and use of occlusion management techniques.
Claims20
A method implemented by a computing device, the method comprising:
- specifying, by an application of the computing device, one or more visuals as a composition element including a bitmap and associated compositional metadata for a plurality of virtual composition surfaces, each virtual composition surface comprising one or more logical composition surfaces representative of individual surfaces as seen by the application with respective memory allocations, the virtual composition surfaces not being displayed by the computing device;
- tracking, by a composition system of the computing device, a plurality of valid regions within the virtual composition surfaces, each valid region comprising one or more current visuals usable by the composition system for rendering;
- tracking, by the composition system, invalid regions within the virtual composition surfaces, the invalid regions comprising one or more non-current visuals not usable by the composition system for rendering;
- determining, by the composition system, that a first valid region of a first virtual composition surface of the plurality of virtual composition surfaces is includable within a second virtual composition surface of the plurality of virtual composition surfaces;
- and
- responsive to the determination, combining, by the composition system, the first valid region from a memory allocation corresponding to a logical composition surface which contains the valid region of the first virtual composition surface into a memory allocation corresponding to a logical composition surface of the second virtual composition surface.
A method implemented by a computing device, the method comprising:
- specifying, by an application of the computing device, one or more visuals as a composition element including a bitmap and associated compositional metadata for a plurality of virtual composition surfaces, each virtual composition surface comprising one or more logical composition surfaces representative of individual surfaces as seen by the application with respective memory allocations, the virtual composition surfaces not being displayed by the computing device;
- tracking, by a composition system of the computing device, a plurality of valid regions within the virtual composition surfaces, each valid region comprising one or more current visuals usable by the composition system for rendering;
- tracking, by the composition system, invalid regions within the virtual composition surfaces, the invalid regions comprising one or more non-current visuals not usable by the composition system for rendering;
- calculating, by the composition system, a memory allocation for one or more logical composition surfaces corresponding to a new virtual composition surface that is usable to include the valid regions;
- and
- allocating, by the composition system, memory for the logical composition surfaces corresponding to the new virtual composition surface for inclusion of the valid regions from respective memory allocations corresponding to respective logical composition surfaces corresponding to virtual composition surfaces containing the valid regions.
One or more computer-readable storage media comprising instructions stored thereon, that, responsive to execution by a computing device, causes the computing device to implement a composition system to perform operations comprising:
- receiving, from an application, one or more visuals as a composition element including a bitmap and associated compositional metadata for a plurality of virtual composition surfaces, each virtual composition surface comprising one or more logical composition surfaces representative of individual surfaces as seen by the application with respective memory allocations, the virtual composition surfaces not being displayed;
- writing the visuals to the virtual composition surfaces;
- tracking valid regions within the virtual composition surfaces, each valid region comprising one or more current visuals usable by the composition system for rendering;
- tracking invalid regions within the virtual composition surfaces, the invalid regions comprising one or more non-current visuals not usable for rendering;
- determining that a first valid region of a first virtual composition surface of the plurality of virtual surfaces is includable within a second virtual composition surface;
- and
- responsive to the determination, transferring the first valid region from a memory allocation corresponding to a logical composition surface which contains the valid region of the first virtual composition surface for inclusion as part of a memory allocation corresponding to a logical composition surface of the second virtual composition surface.
Dependencies are inferred from the claim text.