GAME DEVELOPMENTGPU GEMS 2: PROGRAMMING TECHNIQUES FOR HIGH-PERFORMANCE GRAPHICS AND GENERAL-PURPOSE COMPUTATION