[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
`map2cs' only understands a limited set of standard Quake classnames and keys. However, `map2cs' is being extended to include classnames and keys that are understood by Crystal Space so that map editors will be able to extend the capabilities of their editors to make full use of the Crystal Space entities.
worldspawn
This classname identifies all brushes that are part of world geometry. This
is Quake standard. In addition, worldspawn
contains `cs_sector',
`cs_sky', and `thing' brush-based entities that are supported by
Crystal Space. Also, if either the `skydome' or `skybox' keys
listed below are set (which defines the base name of sky textures) then
`map2cs' will automatically generate a `cs_skysector'.
skydome
Gives the name for the skydome texture. If this key is not present, the skydome will not be created. This key is only available in the `worldspawn' entity. (Available in Quake editors as "general map properties" or in the `worldspawn' properties.)
skydomeradius
Gives the radius of the skydome in Crystal Space units (typically meters). This key is optional, if not given, a default value of 800 is used. If no skydome is specified, it has no effect. This key is only available in the `worldspawn' entity.
skybox
Gives the basename for the skybox. The skybox is a cube, consisting of six sides. The names of the sides textures are generated by adding an underscore and an additional letter to specify the side. So for example, if your basename is "night", it will use "night_f" for the front side, "night_r" for the right, "night_b" for back, "night_l" for left, "night_u" for the upper side and "night_d" for the down side. It is ideal to use Terragen to create the respective textures. There is also a tutorial explaining how to do this with Terragen, Generating Skybox Textures. This key is only available in the `worldspawn' entity. (Available in Quake editors as "general map properties" or in the `worldspawn' properties.)
skyboxsize
Gives the size of the skybox (the length of a side). This key is optional. If not given, a default value of 1600 is used (so the actual size is about the same as a default skydome. If no skybox is specified, it has no effect. This key is only available in the `worldspawn' entity.
cs_sector
The brush that is assigned to this classname will define a manually placed sector. Once you specify one of these, all areas of the map that you want converted must also be inside a `cs_sector'. `cs_sector's may not overlap. The map will use the texture of the sector. That texture will be replaced wherever it touches a brush that is part of the world geometry, by the texture of that brush.
cs_name = "sector_name"
Used to define a custom name for the `cs_sector'. This name will be used in Crystal Space for the container of all entities within that sector.
lighting = "1"
Allows disabling of lighting for some brushes. This may help you to create some special effects. For example light emitting surfaces like neon lamps will probably look better without lighting (and therefore without shadows on the surface). Default is 0 (lighting disabled for sky). This key is available for every entity. (Note: 0/1 = off/on = no/yes).
mipmap = "1"
Default is 0 (mipmapping disabled for sky).
cs_collection = "collection_name"
Under development; will be used to control events in groups of sectors.
cs_sky
This brush entity can be used to create a portal to a sky (e.g., windows).
cs_name = "cs_skysector"
The key must be set to `cs_skysector' and will display the sky texture(s) specified in the `worldspawn' skybox or skydome keys.
sky = "1"
This flag indicates that all sides of the brush are portals into the sector `cs_skysector'. The `cs_skysector' will be automatically generated for you if you specify a skybox or a skydome in your general map or `worldspawn' properties. If this setting is active, it will override all other settings for the brush (like mirror or solid). The default is 0 (no portal to sky).
thing
cs_name = "thing_name"
Used to define a custom name for the `thing'. This name will be used in Crystal Space for the container of all entities that pertain to that `thing'.
origin = "X Y Z"
The `origin' key is used to determine the initial world coordinate position and orientation of a `thing'. Further transformations may be accomplished with scripts.
alpha = "100"
Determines the amount of the transparency effect. If `alpha' is
"100"
, the effect is invisible; if "0"
, the effect is completely
visible. This key also determines the amount of the mirror effect. (For
example with `alpha=0' and `mirror=1' you get a perfect mirror
without any stains). Default is 100
.
mirror = "0"
Makes all surfaces of this entity reflecting like a mirror if set to 1. By
using `alpha' you can control this effect. Default is "0"
(no
mirror).
solid = "1"
Setting `solid' to 0 makes a brush illusionary, so in fact a portal is
created for every side of the entity to the given `targetsector'. If you
combine this with the `targetsector' and `alpha' directives you
might be able to get some cool effects, but in general, this is probably one
of the less useful settings. Maybe in future versions, we will use this
setting to disable collision detection for the given entity which will be far
more effective. Default is 1
.
cs_collection = "collection_name"
Under development; will be used to group things with other entities (such as triggers, lights, scripts, etc.) for functional purposes.
targetsector = "cs_name_of_sector_to_target"
Here you can give the name of the `targetsector' of an effect. You are likely to get strange results by using this entry, but you are free to do so. Default is the current sector.
trigger = "scriptname_to_trigger"
Trigger a script event.
moveable = "0"
If a `thing' is to be activated by a script, it must be moveable.
activate = "scriptname"
Targetname (`cs_name') of script specified in Classname: cs_script
that will be used to animate the `thing'.
lighting = "1"
Allows disabling of lighting for some brushes. This may help you to create some special effects. For example light emitting surfaces like neon lamps will probably look better without lighting (and therefore without shadows on the surface). Default is 1 (lighting enabled). This key is available for every entity. (Note: 0/1 = off/on = no/yes).
mipmap = "1"
Default is 1 (mipmapping enabled).
sky = "0"
This key allows things to become "sky" brushes. The alternative is to use the
`cs_sky' entity. The default is 0
for a `thing'.
light
Identifies a static (non-moving) light source. The color and radius of the light source are determined by the key `light' in that entity (Quake style) or by the key `_light' (Half-Life style). The radius in the Crystal Space map file will be the original radius scaled with `lightscale' (see map2cs.cfg lightscale) and the `scaling' factor (see map2cs.cfg scaling). The intensity of the light source will be `(colorvalue / 255) * (quakelight_radius / 128)', for each color component (red, green, and blue).
A `light' has the following keys:
cs_name = "light_name"
Used to define a custom name for the `light'. This name will be used in
Crystal Space; for example, with scripts to vary the light intensity (when the
`dynamic' key is set to 1
.
origin = "X Y Z"
Will be used to determine the position of a point based entity.
_light = "R G B radius"
, orlight = "R G B radius"
Sets the red, green, blue and radius (intensity) values for the `light'.
dynamic = "0"
Sets the Crystal Space `DYNAMIC(value)' setting for the
`light'. It is 0 by default. If set to 1
, the `light'
quality can be varied.
halo = "0 0 0"
Sets the Crystal Space `HALO(value-intensity-cross)' setting for the `light'. The first value for the key indicates on or off (1 or 0). The second value is the intensity of the halo effect ranging from 0 to 1. The final value determines the halo shape ranging from circular (0) to a cross (2).
attenuation = "type"
Sets the Crystal Space `ATTENUATION(type)' parameter for the light. Attenuation type can be one of `none', `linear', `inverse' or `realistic'.
cs_collection = "collection_name"
Under development; will be used to group lights with triggers and things.
info_player_start
and info_player_deathmatch
Determines where the default player starts. This setting will only be interpreted for position, because Crystal Space has no way yet to have the player's orientation on start stored in the map file.
origin = "X Y Z"
Used to determine the world coordinate position of the player start (bottom of feet).
angle = "direction"
Under development; will be used for the initial player orientation.
fog
cs_name = "fog_name"
Used to define a custom name for the `fog' entity. This name will be used in Crystal Space.
origin = "X Y Z"
Will be used to determine the position (sector) of the `fog' entity.
fogcolor = "128 128 128"
Determine the color (r,g,b) of the fog in the given sector. The default is white (255,255,255). If `fogdensity' is 0, this key has no effect. This key is only available for `cs_sector' entities that contain a `fogdensity' greater than 0.0.
fogdensity = "0"
Determine the thickness of fog in the given sector. The default is 0.0 (no fog). Good values for fog are 0.1 to 0.2. If you use greater values, the fog gets very thick. Fogdensity ranges are approximately 4 = 2 meters, 2 = 5 meters, <1 = longrange. The values might vary depending of renderer. This key is available only for `cs_sector' entities.
cs_sound
The `sound' entity is currently a non-moveable sound source that originates at the world origin (0,0,0).
cs_name = "sound_entity_name"
Used to define a custom name for the `cs_sound' entity. This name will be used in Crystal Space.
origin = "X Y Z"
Will be used to determine the initial position of a moveable sound source.
soundfile = "filename.wav"
The wav
file supplied can be loaded from standard.zip or from a zip
file specified in `vfs.cfg' (for example, lib/sounds =
$.$/data$/sounds$/cs_sound.zip
).
cs_sprite
This is a 2D square polygon entity with texture image. Animating textures is in development. Future keys might allow alternate shapes. Mixmode keys are used to control the texture effect; they can be combined to vary the effects.
cs_name = "sprite_name"
Used to define a custom name for the `cs_sprite'. This name will be used in Crystal Space.
origin = "X Y Z"
Used to determine the initial world coordinate position of the `cs_sprite' entity. Orientation of the `cs_sprite' polygon is in development.
texture = "sprite_texture_name"
The `cs_sprite' image filename is specified here without extension
because gif
images are currently assumed; animating textures is in
development.
copy = "0"
Mixmode = SRC
.
add = "0"
Mixmode = SRC + DST
.
multiply = "0"
Mixmode = SRC * DST
.
multiply2 = "0"
Mixmode = 2 * SRC * DST
.
alpha = "1"
Mixmode = `(1 - alpha) * SRC + alpha * DST)'. The default value is
1
(opaque texture).
transparent = "0"
Mixmode = DST
(currently not working).
keycolor = "0 0 0"
Mixmode = RGBcolor
. For example, the example key value above,
`0 0 0', indicates the transparency color of the image.
cs_model
Currently works with Quake1 MDL files. Importing skins is still under development. The models may be accessed from zip files specified in `vfs.cfg' (for example, `lib/models = $.$/data$/models$/cs_model.zip'). Action frames must be added manually at this time, but a frame reader is in development. Mixmode keys (as in 2DSprites) will be added.
cs_name = "cs_model_name"
Used to define a custom name for the `cs_model'. This name will be used in Crystal Space.
modelname = "cs_model_filename"
Quake 1 model filename (without `.mdl' extension).
origin = "X Y Z"
Used to determine the initial world coordinate position of the `cs_model' entity. Initial control of orientation is still in development.
texture = "model_texture_filename"
Model texture filename (with extension) for Quake 1 models.
uniformscale = "scale"
Used to scale the model uniformly in x,y,z. Default is 1.
action = "base_name_of_frame_action"
Base name of frame action.
action1 = "name_of_first_frame_action"
Frame action 1; add more as needed. However, in development is a frame reader to automatically load all frames for the specified base frame action.
cs_collection
In development: a collection will be used to create functional groups for trigger events. For example, button things that are activated to turn on a light might be grouped with the light entity and the script to control the action.
cs_name = "cs_collection_name"
Used to define a custom name for the `cs_collection'. This name will be used in Crystal Space.
origin = "X Y Z"
The origin is not used by Crystal Space but may be used by the map editor to locate the entity in the map.
cs_collection = "target_cs_collection_name"
In development: a `cs_collection' may be nested in other collections; this key will point to a parent `cs_collection'.
collitem1 = "target_cs_name_of_entity_to_add"
First member of the `cs_collection'; add others as needed.
cs_script
Scripts are used to animate moveable things, control lights, etc.
cs_name = "cs_script_name"
Used to define a custom name for the `cs_script'. This name will be used in Crystal Space.
origin = "X Y Z"
The `origin' is not used by Crystal Space but may be used by the map editor to locate the entity on the map.
cs_name = "cs_script_name"
The name provided here is used by Crystal Space and is used to access the script from the file specified by the key below. An example of `cs_script_name' might be `rotate_x'.
script_cmdfile = "csscript.txt"
This file is located in `CS/data' and contains some basic scripts in an orderly format that is parsed by `map2cs'. You may add your own scripts to the file following the format in `csscript.txt'.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] |
This document was generated using texi2html 1.76.