environment mapping, you enable it in gfx.ini.
This page describes how you can fiddle with the graphics. All
the settings are in racer.ini (which is located in your Racer
- resolution.fullscreen; if set to 1, fullscreen is
- resolution.width; sets the width of the window/screen
- resolution.height; sets the height of the window/screen
- resolution.bits; 16 or 32 bits (32 recommended)
- resolution.frequency; refresh frequency (Mac only)
- resolution.gamma; fullscreen gamma (Mac only)
- resolution.monitors; number of monitors across which
the view is shown. Normally this is 1. For Matrox Parhelia cards, you
can set this to 3 to get Surround Gaming (for example 2400x600 = 3x
800x600, so set monitors to 3 and width to 2400). These days you might use an nVidia GTX690 to do surround rendering. See this page for more uptodate information on surround rendering/gaming.
|All rendering options are prefixed with 'renderer'.
The renderer is used from Racer v0.5.2 on.
- paint.triangles; render filled triangles?
Defaults to 1.
- paint.normals; render normals at each vertex?
- paint.wireframe; render wireframe of all polygons?
- use_array_elements; if set to 1 (default is 0, meaning
off), this will use an alternate method of drawing the polygons. This
was used during debugging and probably doesn't do much good for users.
- single_pass; if set to 1, the renderer will always
use single pass rendering. Use this in case of trouble with the default
- window.manage; if set to 1, this let's
X11 manage the window. This means a border and draggability.
- fx.interval; the time between each
FX processing in ms
- fx.fog; use fog? (1=enable, 0=disable)
- fx.fog_hint; specify the approximation
of the fog. 0=don't care, 1=fastest, 2=nicest.
- fx.visibility; defines the drawing
distance in meters. Somewhere around 500-1000 is recommended. Can make
quite a huge difference in framerate.
- fx.track_lighting; always enabled
for Racer v0.5.2+.
- fx.sky_enable; draw the sky? Always
- fx.sun; specifies sun parameters (the
sun location itself is stored per track).
- fx.smoke.particles; defines the maximum number of
smoke particles. The lower the number, the higher the framerate can
stay when lots of smoke is generated.
- mirrors.simple.enable; if 1, turns on a simple rectangular
mirror at the top of the screen. This requires mirrors.texture.enable
to be turned on starting in Racer v052b6.
- mirrors.simple.wid; width of the mirror polygon (based
on a 800x600 view).
- mirrors.simple.hgt; height of the mirror polygon
(based on a 800x600 view).
- mirrors.texture.enable; if 1, turns on rendering
of a mirror texture. This texture (knowns as a special map named '$mirror'
for the shaders) will be updated live every frame to match the rear
view of the focused car. Very useful to create live mirrors on the car.
- mirrors.texture.wid; the width of the mirror texture.
Use a small value (never wider than the window size you're at) like
- mirrors.texture.hgt; the height of the mirror texture.
Can be smaller than the width. Say width=256, height=64 for starters.
The larger these two values, the more performance is lost rendering
- mirrors.texture.fov; the field-of-view (in degrees)
used in mirror rendering.
- textures.quality; this is a downscale option to reduce
the size of texturemaps. Normally it is 1 to use the actual image size.
If you have low framerates, increase this to 2, 4, 8, 16 or more, as
long as it's a power of 2. For example, 8 will downsize the images 8
times, giving small texturemaps. Those look more blurry, but in general
give higher framerates.
- textures.max_wid; this specifies the maximum texture
size. Useful for detail tweaking, or older graphics cards which can't
use anything above 256x256 for example.
- textures.max_hgt; this specifies the maximum texture
- lod.enable; set this to 1 to enable LOD (the default)
or 0 to ignore any LOD modeling. Setting it to 1 is highly recommended.
- lod.factor; this factor is used on all LOD distances.
Normally 1 for the designed LOD distance. Values under 1 will make LOD
models being used quicker (a value of 0 even removing all LOD models),
and values over 1 will avoid LOD kicking in too soon (if you have the
CPU power to spare!).
More information on level of detail settings can be found on a separate page.
The following settings are stored in racer.ini.
Multiview enables you to use multiple computers to render a widescreen
view. There's no limit to how many computers you want to use, so a full
360 degrees is possible (though you need to use camera rotations, not frustum expansions; doing this requires projection distortion which is only possible in the licensed/pro version of Racer).
To setup multiview, run Racer on the side view PC's with multiview.slave
set to 1. The slaves will automatically try to find the master computer,
as indicated by multiview.master. Once the slaves are
running, run the master. The slaves will indicate that the master is found
after a second or so. Then start a race on the Master computer.
Multiview is relatively simple to setup, since the slaves automatically
connect and disconnect from the master. They DO need to have the same car & track files to work correctly. The slaves are viewers,
so it's the graphics that count most though; car.ini files don't matter
More information on using multiple computers can be found here; this is a smaller list of settings.
multiview.slave; determines whether this computer will
act as a slave.
multiview.master; contains the IP address or computer
name of the master machine. Slaves will try and connect to that machine.
multiview.port; the port number over which communication
flows. The port number must be the same on all machines, i.e. 25010.
multiview.offset_x; this specifies the location of
the computer. For the master this is 0. For a computer on the left of
the master, this is -1. A potential second computer to the left of that
left machine would have -2. The first computer on the right side of the
master has offset_x=1.
multiview.offset_y; not yet implemented.
March 29, 2013