COUNTER-MAP:  Counter-Strike Mapping
Visit us on IRC at, #countermap
Pic of the Week
Map Spotlight
Weekly Playtests
Random Map Idea
In the News
About Counter-Map
The Crew
Mapping Forums
Important Links



Nemesis' Utilities
Map Packs
Texture Packs
Mapping Utilities
File Database

 Back to Tutorials Page   Other Tutorials by Mr_Deth 

R_speed Reduction Methods
By Mr_Deth

Usefulness of content:  121 users  
 out of 5
 3 out of 5

This tutorial will explain to you how to reduce lag caused by r_speeds (polygon counts) in a Half-Life level.

While reading this tutorial, keep in mind that the Half-Life game engine cuts polygons into places where a brush intersects another (It's a rendering thing. You don't need to understand it, you just need to know what it does!).

Method 1: Using Unit Gaps

By keeping objects 1 or more units away from walls, ceilings, or floors, you can prevent the Half-Life engine from cutting polygons into the wall.

Method 2: Using Entity Brushes

Entity brushes are considered by the engine as objects which do not obstruct light. That's why you can see light coming from behind a closed door in a dark room, in Half-Life. Because they do not obstruct light, they do not cause the engine to cut polygons into any brushes which are in contact with an entity brush. Entity brushes have therefore, a variety of uses.

- Any brushes with light-emitting textures on them can be converted into func_walls.

- Anywhere an object meets another, you can join the two with a func_wall. For example, if you've got a pipe that goes into the wall, instead, pull the pipe back and create a flange as a func_wall.

Method 3: Scaling Textures

Textures in Half-Life cut world brushes into specific sizes, according to the texture that is applied to the surface. A brush with a texture that is 128x128 will be cut up into polygons each 128x128. Thus, if you scale a texture 2x, the brush will be cut into polygons each being 256x256. This is an excellent way to reduce r_speeds, but will result in very big textures! Use this method accordingly.

Method 4: Vertex Visibility

The more vertices visible to the player, the slower your game will be. Controlling how much a player sees is a key factor in maintaining your r_speeds. That is why you never see huge open spaces in Half-Life!

- Block viewable areas to the player accordingly. Never create large open areas with lots of brushes because your r_speeds will jump significantly!

- Always make sure any corners on separating walls are manipulated so the player sees very little vertices.

 Back to Tutorials Page   Other Tutorials by Mr_Deth 

 Rate this tutorial for us! 
 Poor   1  2  3  4  5  Excellent
 Usefulness of Content  
Get Hammer level editor, the most commonly used editor for CS and HL levels.
- - - - - - - - - - - -

Get Zoner's Half-Life Compile Tools, the premier compiling tools for CS maps.
- - - - - - - - - - - -

Get the "experts" Hammer configuration for CS mappers to utilize advanced custom CS entities.
- - - - - - - - - - - -

An improved CS:S entity definition file, to allow CS:S mappers to use all entities and options.
- - - - - - - - - - - -