Virtual surface gutters

US9940907B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9940907-B2
Application numberUS-201514970516-A
CountryUS
Kind codeB2
Filing dateDec 15, 2015
Priority dateMay 31, 2012
Publication dateApr 10, 2018
Grant dateApr 10, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Virtual surface 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.

First claim

Opening claim text (preview).

What is claimed is: 1. A method implemented by a computing device, the method comprising: initializing, by the computing device, a first virtual composition surface and a second virtual composition surface, the first virtual composition surface comprising a collection of one or more logical composition surfaces representative of individual surfaces as seen by an application; determining, by the computing device, a value of a first pixel at an edge of the first virtual composition surface as representative of one or more neighboring pixels contained in the second virtual composition surface without copying the first pixel to the one or more neighboring pixels; and calculating, by the computing device, a value of a second pixel in the first virtual composition surface using a clamping operation with the determined value of the first pixel. 2. A method as described in claim 1 , wherein the individual surfaces are not displayed by the computing device. 3. A method as described in claim 1 , wherein the one or more neighboring pixels fall outside of the first virtual composition surface. 4. A method as described in claim 1 , wherein the second pixel in the first virtual composition surface is at the edge of the first virtual composition surface. 5. A method as described in claim 1 , wherein in instances in which the first virtual composition surface is an update that is included in a larger allocated virtual composition surface comprising a larger collection of one or more logical composition surfaces, the clamping operation, performed by the computing device, includes copying one or more pixels at the edge of the first virtual composition surface to the one or more neighboring pixels. 6. A method as described in claim 1 , wherein the one or more neighboring pixels define part of a virtual composition surface gutter that is to be used, by the computing device, to calculate the value of the second pixel. 7. A method as described in claim 6 , wherein pixels of the virtual composition surface gutter used, by the computing device, to calculate the value of the second pixel are not updated. 8. A method as described in claim 1 , wherein the calculating utilizes bilinear sampling. 9. A method as described in claim 1 , wherein the first virtual composition surface is initialized without allocating bits for the collection of one or more logical composition surfaces. 10. A method as described in claim 9 , wherein at least a part of the collection of one or more logical composition surfaces is allocated bits subsequent to being initialized via one or more application programming interfaces of the computing device respondent to a request from an application to update the first virtual composition surface. 11. A method as described in claim 1 , wherein the method further comprises rendering, by the computing device, the first virtual composition surface using the calculated value of the second pixel. 12. A method as described in claim 11 , wherein the method further comprises displaying, by the computing device, the rendered first virtual composition surface using a flipping operation. 13. A method as described in claim 1 , wherein the second pixel is located proximal to the edge of the first virtual composition surface. 14. A method as described in claim 1 , wherein one or more visuals are rendered in the initialized first virtual composition surface. 15. A system for managing surfaces for rendering, comprising: a virtual surface composer comprising one or more computing devices, said computing devices being in communication with each other via a computer network whenever there is a plurality of computing devices, and a virtual surface composition computer program having a plurality of sub-programs executed by said computing devices, wherein the sub-programs cause said computing devices to, initialize, using the one or more computing devices, a first virtual composition surface and a second virtual composition surface, the first virtual composition surface comprising a collection of one or more logical composition surfaces representative of individual surfaces as seen by an application; determine, using the one or more computing devices, a value of a first pixel at an edge of the first virtual composition surface as representative of one or more neighboring pixels contained in the second virtual composition surface without copying the first pixel to the one or more neighboring pixels, said determination without copying thereby reducing computing resources associated with said rendering; and calculate, using the one or more computing devices, a value of a second pixel in the first virtual composition surface using a clamping operation with the determined value of the first pixel. 16. The system as described in claim 15 , wherein the calculating utilizes bilinear sampling. 17. The system as described in claim 15 , wherein in instances in which the first virtual composition surface is an update that is included in a larger allocated virtual composition surface comprising a larger collection of one or more logical composition surfaces, the clamping operation, performed by the computing device, includes copying one or more pixels at the edge of the first virtual composition surface to the one or more neighboring pixels. 18. The system as described in claim 15 , wherein the first virtual composition surface is initialized without allocating bits for the collection of one or more logical composition surfaces. 19. A system comprising: one or more computer processors; and one or more computer-readable storage media having instructions stored thereon that, responsive to execution by the one or more computer processors, perform operations comprising: initializing, using the one or more computer processors, a first virtual composition surface and a second virtual composition surface, the first virtual composition surface comprising a collection of one or more logical composition surfaces representative of individual surfaces as seen by an application; determining, using the one or more computer processors, a value of a first pixel at an edge of the first virtual composition surface as representative of one or more neighboring pixels contained in the second virtual composition surface without copying the first pixel to the one or more neighboring pixels; and calculating, using the one or more computer processors, a value of a second pixel in the first virtual composition surface using a clamping operation with the determined value of the first pixel. 20. The system as described in claim 19 , wherein the second pixel in the first virtual composition surface is at the edge of the first virtual composition surface.

Assignees

Inventors

Classifications

  • Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels · CPC title

  • G09G5/377Primary

    for mixing or overlaying two or more graphic patterns (G09G5/02, G09G5/397 take precedence) · CPC title

  • for systems having a bit-mapped display memory · CPC title

  • Arrangements for updating the contents of the bit-mapped memory · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9940907B2 cover?
Virtual surface 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.
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G09G5/377. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 10 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).