OpenGLのピクセルセンターは(0.5, 0.5)にあって、そこが含まれてないとピクセルが打ち込まれない
だから639みたいに指定しても最後のピクセルが描画されないのはそういうこと
しかしDirectXは(0, 0)なんでOpenGLをDirectXに変換して実行してるようなVirtualBoxは描画されたりするんじゃないの?知らんけど
方眼紙に三角形を書いてピクセルの真ん中を通っているかを確認してどうやって描画されるから予想したものと実際の描画結果を見比べて見れば勉強になるだろう