June 3, 2011



Berserker@Quake3 is the heavily modified idTech3 engine, based on quake3-1.32b source code.

    OpenGL render uses the light pre-pass deferred shading technology. All geometric data was moved into Vertex Buffer Objects (VBO), all shaders (render scripts) calculations has been moved into vertex and fragment programs (GLSL). It means that render lost CPU dependency now.

Performance comparition (Q3 vs Q3Bers, no VBO vs VBO):

    Every material can use normalMap (for classic dot3 bumpmapping), colored specularMap, heightMap (special pre-calculated texture used by CSM: cone step mapping) and detailed normalMap.

There are two kinds of parallax technologies:

1. simple and fast: linear-step parallax mapping:

2. high-quality: cone step parallax mapping:

Material  w/o parallax mapping, bump mapping only:


Material with detailed bump map and csm parallax:

Also, texture and screen distortion supports:

Engine has 3 render-path:

1. Classic Quake3 render (r_ppl 0):

2. Fake per-pixel-lighting (r_ppl 1):

3. True PPL (r_ppl 2) with re-light supports and shadow maps (in future):

Minimal requrements:

– Video card with GLSL support (GF8 class)

– 512 MB RAM.


– Video card with fast VRAM and wide bus: 256 bits, or 128 bits DDR5;

– 1 GB RAM;

– Multi-Core CPU.

Other screenshots:

Fake PPL (r_ppl 1):

True PPL (r_ppl 2):

        Special thanx for GT-Agressor and ATex (arts: normalmaps, specularmaps, heightmaps), Trebor (XReal project) for general VBO algorithm, Kirk Barnes for Fake Lighting idea, KriGSSv1N for general consulting,  Viper_2540 for modern hardware and John Carmack for great engines.



Berserker@Quake3 patch: http://dump.ru/file/5254810

UnPack into Quake 3 Arena folder.


Rus: QuakeGate.ru

Eng: QuakeDev.com


Fake ppl renderer

True ppl renderer

Known issue:

    GL_ARB_occlusion_query does not work properly with ATI HD5830. Test returns 84 value for completely occluded object. :(

    Occlusion_query used for sun point visibility test. If you see sun lighting through ceiling, just disable it:

set r_arb_occlusion_query 0; vid_restart


set r_drawsun 0

See details:

Strange bug with GL_ARB_occlusion_query at AMD developer forums.

See also:

Eng: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=297521

Rus: http://quakegate.ru/forums/index.php/topic,665.0.html 

Contribute now! Post a comment.

No Comments

No comments yet.

Sorry, the comment form is closed at this time.