# US 2014/0157186 A1 · Three dimensional desktop rendering in a data processing device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0157186 A1
- Document ID: US20140157186A1
- Status: Published application
- Kind: A1
- Application number: 13/691,858
- Filed: 2012-12-03
- Published: 2014-06-05
- Earliest claimed: 2012-12-03
- Inventors: Himanshu Jagadish Bhat; Gautam Pratap Kale
- Web page: https://patentgrep.com/patent/US20140157186A1

## CPC

- G06F 3/04815: Interaction with a metaphor-based environment or interaction object displayed as three-dimensional [3D], e.g. changing the user viewpoint with respect to the environment or object
- H04N 13/332: Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method includes initiating, through a display driver component of a processor of a data processing device, acquisition of one or more depth parameter(s) of a window of an application executing on the data processing device and/or a sub-portion of the window. The method also includes determining, through the processor, depth of the window relative to a background desktop surface provided by an operating system executing on the data processing device and/or the sub-portion of the window relative to the window based on the acquired one or more depth parameter(s). Further, the method includes rendering, through the processor, the window and/or the sub-portion of the window in a three dimensional (3D) mode based on the determined relative depth thereof on a display unit of the data processing device.

## Claims

### Claim 1

A method comprising:
initiating, through a display driver component of a processor of a data processing device, acquisition of at least one depth parameter of at least one of: a window of an application executing on the data processing device and a sub-portion of the window;
determining, through the processor of the data processing device, depth of the at least one of the window relative to a background desktop surface provided by an operating system executing on the data processing device and the sub-portion of the window relative to the window based on the acquired at least one depth parameter; and
rendering, through the processor of the data processing device, the at least one of the window and the sub-portion of the window in a three dimensional (3D) mode based on the determined relative depth thereof on a display unit of the data processing device.

### Claim 2 (depends on 1)

The method of claim 1, wherein, when a plurality of windows is associated with the application, the method further comprises:
determining, through the processor of the data processing device, an order of arrangement of the plurality of windows based on depths thereof relative to the background desktop surface; and
rendering, through the processor of the data processing device, at least one of the plurality of windows in the 3D mode based on the determined order of arrangement of the plurality of windows on the display unit of the data processing device.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
rendering, through the processor of the data processing device, the sub-portion of the window at a depth different from a remaining portion of the window.

### Claim 4 (depends on 2)

The method of claim 2, further comprising:
rendering, through the processor of the data processing device, an application view associated with the window and another application view associated with another window into separate buffer sets; and
compositing, through the processor of the data processing device, the separate buffer sets together through the operating system in conjunction with the display driver component.

### Claim 5 (depends on 2)

The method of claim 2, wherein rendering, through the processor of the data processing device, the at least one of the window and the sub-portion of the window in the 3D mode includes at least one of:
distinguishing between a boundary of the window, a boundary of another window and a boundary of the background desktop surface, and
distinguishing between a boundary of the sub-portion of the window and a boundary of another sub-portion of the window.

### Claim 6 (depends on 1)

The method of claim 1, further comprising providing, through a user interface of at least one of the operating system, the application and the data processing device, a capability to a user of the data processing device to at least one of: at least one of turn on and turn off the rendering of the at least one of the window and the sub-portion of the window in the 3D mode, and control the determined relative depth to be rendered in the 3D mode.

### Claim 7 (depends on 1)

The method of claim 1, further comprising providing, through the display driver component, a capability to a user of the data processing device to view the at least one of the window and the sub-portion of the window with 3D glasses.

### Claim 8 (depends on 1)

The method of claim 1, wherein initiating, through the display driver component, the acquisition of the at least one depth parameter includes at least one of:
invoking, through the display driver component, a library file stored in a memory of the data processing device, the library file being associated with enabling the rendering of the at least one of the window and the sub-portion of the window in the 3D mode; and
instructing, through the operating system executing on the data processing device, the display driver component through at least one of: at least one Application Programming Interface (API) and at least one Display Driver Interface (DDI) to enable the rendering of the at least one of the window and the sub-portion of the window in the 3D mode.

### Claim 9

A non-transitory medium, readable through a data processing device and including instructions embodied therein that are executable through the data processing device, comprising:
instructions to initiate, through a display driver component of a processor of the data processing device, acquisition of at least one depth parameter of at least one of: a window of an application executing on the data processing device and a sub-portion of the window;
instructions to determine, through the processor of the data processing device, depth of the at least one of the window relative to a background desktop surface provided by an operating system executing on the data processing device and the sub-portion of the window relative to the window based on the acquired at least one depth parameter; and
instructions to render, through the processor of the data processing device, the at least one of the window and the sub-portion of the window in a 3D mode based on the determined relative depth thereof on a display unit of the data processing device.

### Claim 10 (depends on 9)

The non-transitory medium of claim 9, wherein, when a plurality of windows is associated with the application, the non-transitory medium further comprises:
instructions to determine, through the processor of the data processing device, an order of arrangement of the plurality of windows based on depths thereof relative to the background desktop surface; and
instructions to render, through the processor of the data processing device, at least one of the plurality of windows in the 3D mode based on the determined order on the display unit of the data processing device.

### Claim 11 (depends on 9)

The non-transitory medium of claim 9, further comprising:
instructions to render, through the processor of the data processing device, the sub-portion of the window at a depth different from a remaining portion of the window.

### Claim 12 (depends on 10)

The non-transitory medium of claim 10, further comprising:
instructions to render, through the processor of the data processing device, an application view associated with the window and another application view associated with another window into separate buffer sets; and
instructions for compositing, through the processor of the data processing device, the separate buffer sets together through the operating system in conjunction with the display driver component.

### Claim 13 (depends on 10)

The non-transitory medium of claim 10, wherein the instructions to render, through the processor of the data processing device, the at least one of the window and the sub-portion of the window in the 3D mode includes instructions to at least one of:
distinguish between a boundary of the window, a boundary of another window and a boundary of the background desktop surface, and
distinguish between a boundary of the sub-portion of the window and a boundary of another sub-portion of the window.

### Claim 14 (depends on 9)

The non-transitory medium of claim 9, further comprising instructions to provide, through a user interface of at least one of the operating system, the application and the data processing device, a capability to a user of the data processing device to at least one of: at least one of turn on and turn off the rendering of the at least one of the window and the sub-portion of the window in the 3D mode, and control the determined relative depth to be rendered in the 3D mode.

### Claim 15 (depends on 9)

The non-transitory medium of claim 9, further comprising instructions to provide, through the display driver component, a capability to a user of the data processing device to view the at least one of the window and the sub-portion of the window with 3D glasses.

### Claim 16 (depends on 9)

The non-transitory medium of claim 9, wherein the instructions to initiate, through the display driver component, the acquisition of the at least one depth parameter includes at least one of:
instructions to invoke, through the display driver component, a library file stored in a memory of the data processing device, the library file being associated with enabling the rendering of the at least one of the window and the sub-portion of the window in the 3D mode; and
instructions to instruct, through the operating system executing on the data processing device, the display driver component through at least one of: at least one API and at least one DDI to enable the rendering of the at least one of the window and the sub-portion of the window in the 3D mode.

### Claim 17

A data processing device comprising:
a memory;
a processor communicatively coupled to the memory; and
a display driver component of the processor to initiate acquisition of at least one depth parameter of at least one of: a window of an application executing on the data processing device and a sub-portion of the window, the processor being configured to:
determine depth of the at least one of the window relative to a background desktop surface provided by an operating system executing on the data processing device and the sub-portion of the window relative to the window based on the acquired at least one depth parameter, and
render the at least one of the window and the sub-portion of the window in a 3D mode based on the determined relative depth thereof on a display unit of the data processing device.

### Claim 18 (depends on 17)

The data processing device of claim 17, wherein, when a plurality of windows is associated with the application, the processor is further configured to:
determine an order of arrangement of the plurality of windows based on depths thereof relative to the background desktop surface, and
render at least one of the plurality of windows in the 3D mode based on the determined order on the display unit of the data processing device.

### Claim 19 (depends on 17)

The data processing device of claim 17, wherein the processor is further configured to:
render the sub-portion of the window at a depth different from a remaining portion of the window.

### Claim 20 (depends on 17)

The data processing device of claim 17, wherein the processor is further configured to:
render an application view associated with the window and another application view associated with another window into separate buffer sets, and
enable compositing of the separate buffer sets together through the operating system in conjunction with the display driver component.
