thanpv-lifortevn / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

Implement drawRangeElements #957

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Run content that calls drawRangeElements, for example 
dEQP-GLES3.functional.draw.draw_range*

What is the expected output? What do you see instead?
Expected: The call works similarly to drawElements
Actual: Assert on UNIMPLEMENTED

Adding support for drawRangeElements is simple: it can just call drawElements 
internally, with an added check that the index range is within the start and 
end parameters. Better performance could be had on some platforms by calling 
drawRangeElements internally in the GL backend, but that can be left for later.

Original issue reported on code.google.com by oetu...@nvidia.com on 25 Mar 2015 at 10:13

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Olli Etuaho <oetuaho@nvidia.com>
Commit : e8e530badef5f612affda367f18eb19f5830d7b5

Code-Review  0 : Olli Etuaho
Code-Review  +1: Geoff Lang
Code-Review  +2: Jamie Madill
Verified     0 : Geoff Lang, Jamie Madill
Verified     +1: Olli Etuaho
Commit Queue   : Chumped
Change-Id      : Id3923eb8114461b441e593357bc49babfd6b5c15
Reviewed-at    : https://chromium-review.googlesource.com/262420

Implement drawRangeElements

Implement drawRangeElements simply by calling drawElements internally. The
start and end parameters passed to the function will be checked against results
from index validation and an error is generated if indices fall outside the
claimed range.

Most dEQP-GLES3.functional.draw.draw_range_elements.* tests pass after this
change. The remaining failures seem to be related to instanced attributes.

BUG=angleproject:957
TEST=dEQP-GLES3.functional.draw.*

src/libGLESv2/entry_points_gles_3_0.cpp

Original comment by bugdro...@chromium.org on 1 Apr 2015 at 8:12

GoogleCodeExporter commented 9 years ago
The code now has a baseline implementation. Supporting calling 
drawRangeElements in platform drivers is left for later.

Original comment by oetu...@nvidia.com on 1 Apr 2015 at 8:13