1*35238bceSAndroid Build Coastguard Worker------------------------------------------------------------------------- 2*35238bceSAndroid Build Coastguard WorkerdrawElements Quality Program Test Specification 3*35238bceSAndroid Build Coastguard Worker----------------------------------------------- 4*35238bceSAndroid Build Coastguard Worker 5*35238bceSAndroid Build Coastguard WorkerCopyright 2014 The Android Open Source Project 6*35238bceSAndroid Build Coastguard Worker 7*35238bceSAndroid Build Coastguard WorkerLicensed under the Apache License, Version 2.0 (the "License"); 8*35238bceSAndroid Build Coastguard Workeryou may not use this file except in compliance with the License. 9*35238bceSAndroid Build Coastguard WorkerYou may obtain a copy of the License at 10*35238bceSAndroid Build Coastguard Worker 11*35238bceSAndroid Build Coastguard Worker http://www.apache.org/licenses/LICENSE-2.0 12*35238bceSAndroid Build Coastguard Worker 13*35238bceSAndroid Build Coastguard WorkerUnless required by applicable law or agreed to in writing, software 14*35238bceSAndroid Build Coastguard Workerdistributed under the License is distributed on an "AS IS" BASIS, 15*35238bceSAndroid Build Coastguard WorkerWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16*35238bceSAndroid Build Coastguard WorkerSee the License for the specific language governing permissions and 17*35238bceSAndroid Build Coastguard Workerlimitations under the License. 18*35238bceSAndroid Build Coastguard Worker------------------------------------------------------------------------- 19*35238bceSAndroid Build Coastguard Worker GLES3.1 texture buffer object tests. 20*35238bceSAndroid Build Coastguard Worker 21*35238bceSAndroid Build Coastguard WorkerTests: 22*35238bceSAndroid Build Coastguard Worker + dEQP-GLES31.functional.texture_buffer.* 23*35238bceSAndroid Build Coastguard Worker 24*35238bceSAndroid Build Coastguard WorkerIncludes: 25*35238bceSAndroid Build Coastguard Worker + Rendering 26*35238bceSAndroid Build Coastguard Worker - As vertex texture 27*35238bceSAndroid Build Coastguard Worker - As fragment texture 28*35238bceSAndroid Build Coastguard Worker - As vertex array 29*35238bceSAndroid Build Coastguard Worker - As index array 30*35238bceSAndroid Build Coastguard Worker - All combinations of above 31*35238bceSAndroid Build Coastguard Worker + Different buffer sizes 32*35238bceSAndroid Build Coastguard Worker - Including larger than max texture size 33*35238bceSAndroid Build Coastguard Worker 34*35238bceSAndroid Build Coastguard Worker + Different offsets 35*35238bceSAndroid Build Coastguard Worker + Different texture buffer sizes 36*35238bceSAndroid Build Coastguard Worker 37*35238bceSAndroid Build Coastguard Worker + Modifications 38*35238bceSAndroid Build Coastguard Worker - glBufferData 39*35238bceSAndroid Build Coastguard Worker - glBufferSubData 40*35238bceSAndroid Build Coastguard Worker - glMapBufferRange with write-only and read-write 41*35238bceSAndroid Build Coastguard Worker 42*35238bceSAndroid Build Coastguard WorkerExcludes: 43*35238bceSAndroid Build Coastguard Worker + Reading pixels to buffer 44*35238bceSAndroid Build Coastguard Worker + Transform feedback 45*35238bceSAndroid Build Coastguard Worker + Negative test 46*35238bceSAndroid Build Coastguard Worker 47*35238bceSAndroid Build Coastguard WorkerDescription: 48*35238bceSAndroid Build Coastguard Worker 49*35238bceSAndroid Build Coastguard WorkerRendering tests create a texture buffer object and render to the default 50*35238bceSAndroid Build Coastguard Workerframebuffer using the texture buffer as different data sources. The texture 51*35238bceSAndroid Build Coastguard Workerbuffer object is used as vertex array, index array, vertex texture and fragment 52*35238bceSAndroid Build Coastguard Workertexture. Rendering using the texture buffer object simultaneously in different 53*35238bceSAndroid Build Coastguard Workerways is also tested. 54*35238bceSAndroid Build Coastguard Worker 55*35238bceSAndroid Build Coastguard WorkerModifying tests create a texture buffer object, modify it and render it to the 56*35238bceSAndroid Build Coastguard Workerdefault framebuffer using it as fragment texture. 57*35238bceSAndroid Build Coastguard Worker 58*35238bceSAndroid Build Coastguard WorkerModify render tests will create texture buffer object, modify it and render it 59*35238bceSAndroid Build Coastguard Workerto the default framebuffer. 60*35238bceSAndroid Build Coastguard Worker 61*35238bceSAndroid Build Coastguard WorkerRender modify tests will create a tests buffer object render it to default 62*35238bceSAndroid Build Coastguard Workerframebuffer, modify it and render it again to default framebuffer as fragment 63*35238bceSAndroid Build Coastguard Workertexture. 64*35238bceSAndroid Build Coastguard Worker 65*35238bceSAndroid Build Coastguard WorkerAll textures use RGBA8 format and buffer data is always used as unsigned bytes. 66*35238bceSAndroid Build Coastguard WorkerUsed values for bytes are also limited to simplify verification. Verification 67*35238bceSAndroid Build Coastguard Workeris always performed at the end of the test. 68