Apparatus and method of rendering frame by adjusting processing sequence of draw commands

US10297067B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10297067-B2
Application numberUS-201415028277-A
CountryUS
Kind codeB2
Filing dateOct 8, 2014
Priority dateOct 10, 2013
Publication dateMay 21, 2019
Grant dateMay 21, 2019

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.

Provided are methods and apparatuses for adjusting the processing sequence of draw commands for rendering images. The rendering method including determining, at a processing sequence determiner, previous draw commands that are identical to current draw commands; de-termining a processing sequence of the current draw commands based on depth information of the determined previous draw commands; and performing a Z-test on the current draw commands based on the processing sequence, and performing shading based on a result of the Z-test.

First claim

Opening claim text (preview).

The invention claimed is: 1. A rendering method comprising: searching a draw command history buffer for binding information of previous draw commands that is identical to binding information of current draw commands; determining, at a processing sequence determiner, the previous draw commands that are identical to the current draw commands, based on comparing the binding information of the current draw commands with the binding information of the previous draw commands, and determining the previous draw commands that are identical to the current draw commands based on a result of the comparison, wherein binding information of a given draw command is information indicating which data the given draw command uses as an input; obtaining depth values of the determined previous draw commands that are identical to the current draw commands from the draw command history buffer, and comparing the obtained depth values; adjusting a processing sequence of the current draw commands based on an ascending order of the obtained depth values of the determined previous draw commands that are identical to the current draw commands; performing a Z-test on the current draw commands based on the adjusted processing sequence, wherein the performing of the Z-test includes comparing depth values of duplicate fragments in a same pixel, and outputting only a fragment having a smallest depth value among the duplicate fragments in the same pixel for shading based on a result of the comparison; and performing shading of only the output fragment based on a result of the Z-test, wherein shading is not performed for any fragment having a greater depth value than the output fragment among the duplicate fragments in the same pixel. 2. The rendering method of claim 1 , wherein the adjusting of the processing sequence comprises comparing depth values of objects included in the determined previous draw commands, and adjusting the processing sequence of the current draw commands in an ascending order of the depth values of the objects. 3. The rendering method of claim 1 , further comprising generating primitive lists for the current draw commands, wherein the adjusting of the processing sequence comprises comparing depth values of the primitive lists, and adjusting the processing sequence of the current draw commands in an ascending order of the depth values of the primitive lists. 4. The rendering method of claim 1 , further comprising obtaining a depth value by performing geometry processing on a current draw command that has no identical previous draw command from among the current draw commands, wherein the adjusting of the processing sequence comprises determining a processing sequence of the current draw commands based on the obtained depth value. 5. The rendering method of claim 1 , further comprising storing, in the draw command history buffer, information of a current draw command that has no identical previous draw command. 6. The rendering method of claim 5 , wherein the information of the current draw command that has no identical previous draw command comprises at least one of a draw command ID, binding information, or depth information of the current draw command. 7. The rendering method of claim 1 , further comprising generating fragments based on the current draw commands. 8. A rendering apparatus comprising: a memory storing a program of instructions; and a processor configured to execute the program of instructions to search a draw command history buffer for binding information of previous draw commands that is identical to binding information of current draw commands, determine the previous draw commands that are identical to the current draw commands, based on comparing the binding information of the current draw commands with the binding information of the previous draw commands, and determining the previous draw commands that are identical to the current draw commands based on a result of the comparison, wherein binding information of a given draw command is information indicating which data the given draw command uses as an input, obtain depth values of the determined previous draw commands that are identical to the current draw commands from the draw command history buffer, and compare the obtained depth values, adjust a processing sequence of the current draw commands based on an ascending order of the obtained depth values of the determined previous draw commands that are identical to the current draw commands, perform a Z-test on the current draw commands according to the adjusted processing sequence, wherein the performing of the Z-test includes comparing depth values of duplicate fragments in a same pixel, and outputting only a fragment having a smallest depth value among the duplicate fragments in the same pixel for shading based on a result of the comparison, and perform shading of only the output fragment based on a result of the Z-test, wherein shading is not performed for any fragment having a greater depth value than the output fragment among the duplicate fragments in the same pixel. 9. The rendering apparatus of claim 8 , the processor further configured to execute the program of instructions to compare depth values of objects included in the determined previous draw commands, and adjust the processing sequence of the current draw commands in an ascending order of the depth values of the objects. 10. The rendering apparatus of claim 8 , the processor further configured to execute the program of instructions to generate primitive lists for the current draw commands, compare depth values of the primitive lists, and adjust the processing sequence of the current draw commands in an ascending order of the depth values of the primitive lists. 11. The rendering apparatus of claim 8 , the processor further configured to execute the program of instructions to obtain a depth value by performing geometry processing on a current draw command that has no identical previous draw command from among the current draw commands, and determine a processing sequence of the current draw command that has no identical previous draw command based on the obtained depth value. 12. The rendering apparatus of claim 8 , the processor further configured to execute the program of instructions to store, in the draw command history buffer, information of a current draw command that has no identical previous draw command, wherein the information of the current draw command that has no identical previous draw command comprises at least one of a draw command ID, binding information, or depth information of the current draw command. 13. A non-transitory computer-readable recording medium having embodied thereon a program for executing the rendering method of claim 1 . 14. A rendering method comprising: receiving current draw commands; searching a draw command history buffer for binding information of previous draw commands that is identical to binding information of the current draw commands; determining, at a processing sequence determiner, the previous draw commands that are identical to the current draw commands based on comparing the binding information of the current draw commands with the binding information of the previous draw commands, and determining the previous draw commands that are identical to the current draw commands based on a result of the comparison, wherein binding information of a given draw command is information indicating which data the given draw command uses as an input; obtaining depth values of the determined previous draw commands that are identical to the current draw commands from the draw command history buffer, and

Assignees

Inventors

Classifications

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 US10297067B2 cover?
Provided are methods and apparatuses for adjusting the processing sequence of draw commands for rendering images. The rendering method including determining, at a processing sequence determiner, previous draw commands that are identical to current draw commands; de-termining a processing sequence of the current draw commands based on depth information of the determined previous draw commands; a…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06T15/005. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 21 2019 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).