I am reading an awesome OpenGL tutorial. It\'s really great, trust me. The topic I am currently at is Z-buffer. Aside from explaining what\'s it all about, the author mentions t
The answer is almost certainly that for whatever incarnation of chip+driver was used, the Hierarchical Z only worked in the one direction - this was a fairly common issue back in the day. Low level assembly/branching has nothing to do with it - Z-buffering is done in fixed function hardware, and is pipelined - there is no speculation and hence, no branch prediction.