FurMark, GPU stress test
FurMark 1.14.0
 
(Test) Particle Rendering: Point Sprites vs Geometry Shaders Sprites
TEST: Point Sprites vs
Geometry Shaders
GPU Caps Viewer
GPU Caps Viewer 1.21.0
 
GPU Shark
GPU Shark 0.9.0
 
Particle Billboarding with the Geometry Shader (GLSL)
Particle Billboarding
Geometry Shader (GLSL)
Billboarding in the Vertex Shader (GLSL)
Billboarding
Vertex Shader (GLSL)

Posts Tagged ‘quake 2’


Modernizing the Quake2 renderer

Be the first to comment - What do you think?  Posted by JeGX - 2008/06/25 at 10:06

Categories: 3D Engines, OpenGL, Programming   Tags: , , , , ,

Jay Dolan recently blogged about some of the performance optimizations he made to his Quake2-based engine, Quake2World. He provides links to various points in the source code to give context around some of the topics he discusses.

Read the post HERE.

Quake2 was released in 1997. Hardware acceleration was only available on higher-end PC’s, and things like multitexture and vertex arrays which are commonplace today didn’t even exist then. So naturally, Quake2′s rendering techniques appear very dated in 2008. Multitexture was made a part of the OpenGL specification in version 1.2.1, and is available on most 2nd generation hardware (TNT or newer). I strongly recommend cleaning up the renderer and removing any non-multitexture rendering paths.

Texture binds (glBindTexture) are rather expensive too, and so to minimize these per frame, you should group the world surfaces by texture before iterating over them. Note that a simple grouping operation is significantly cheaper than a qsort — overall order is not important, we just want to minimize texture changes.

[via]