
548 VII Software Design
regular textures must b e stored in an upside down fashion. Cube maps are handled
by additionally swapping the top (+Y) and bottom (−Y) faces. It also requires all
pixel shader operations that use the window y-coordinate to be adjusted. This is
the solution currently implemented and is discussed further in Section 39.3.2. The
texture inversions on upload are a potential source of inefficiency, but we already
swizzle and convert most texture data on load, so this does not add additional over-
head. Another concern is that the modification of the texture coordinates turns them
into dependent texture reads. This could prevent prefetching ...