I'm trying to determine whether or not glDrawTexiOES should respect the current OpenGL ES viewport, but the OES_draw_texture specification doesn't seem to clearly indicate the expected behavior here.

Reference: http://www.khronos.org/registry/gles/ex ... exture.txt

On one hand, the spec states that the glDrawTexOES functions operate in the fragment pipeline and draw a rectangular texture directly to the screen. However, the spec doesn't explicitly state that the current GL viewport is ignored and in fact, mentions the viewport in the following paragraph:

The functions

void DrawTex{sifx}OES(T Xs, T Ys, T Zs, T Ws, T Hs);
void DrawTex{sifx}vOES(T *coords);

draw a texture rectangle to the screen. Xs, Ys, and Zs
specify the position of the affected screen rectangle.
Xs and Ys are given directly in window (viewport)
Also, since a Z value is passed to glDrawTexiOES, depth range mapping occurs, which I believe normally occurs before computing window coordinates near the end of the transform pipeline (?).

Can anyone comment on the expected behavior here? For example, if I specify a non-full screen viewport (50, 50, 100, 100) and call glDrawTexiOES(0, 0, 0, 64, 64), should my texture rect be drawn at position (50, 50) on my surface, or should it ignore the viewport and draw it outside the viewport at position (0, 0)?