diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/models.html | 90 |
1 files changed, 53 insertions, 37 deletions
diff --git a/doc/models.html b/doc/models.html index 740bc3d..f4c5513 100644 --- a/doc/models.html +++ b/doc/models.html @@ -45,7 +45,7 @@ <li><a href="#clip">Clip</a> <li><a href="#detail_brushes">Detail brushes</a> <li><a href="#textures">Textures</a> - <li><a href="#surface_flags">Surface flags</a> + <li><a href="#surface_files">Shader files</a> <li><a href="#lights">Lights</a> <li><a href="#flares">Flares</a> <li><a href="#particles">Particles</a> @@ -69,7 +69,7 @@ Note that it does not include the Osirion support files by default. <p> This document will not explain how to use the editor. Consult google - for numerous tutorials on this subject. Any basic brush-creating + for numerous tutorials on this subject. All basic brush editing techniques for any Quake-engine based game can be used. <p> The main difference with other games is that you are not creating @@ -127,55 +127,71 @@ is within detail range, close enough to the camera. When it is further away, only structural brushes will be rendered. The actual detail range depends on the size of the model. +</p> <p> This means that any object that could only been seen from close by should be made from detail brushes. +</p> <p> This has one improtant implication: if you show the structural brushes only (with the CTRL+D filter in Gtkradiant) there should be no obvious gaps of caulk that were previously hidden behind detail brushes. - -<h2 id="textures"> - Textures -</h2> -<p> - The engine does not support textured models. Every brush face is drawn - using a single color and any real texturing information is ignored. <p> - The color textures in the directory <i>/textures/colors</i> can be used by - the editor. The engine translates these textures into RGB colors - when the model is loaded. Unknown textures will be colored hot pink. +<h2 id="materials"> + Materials +</h2> <p> - The fixed set of colors is rather limited, more colors can be added by - using the <i>common/entity_*</i> family of textures. The actual in-game + While the engine does support several image file formats, it does not + support textured models. Instead the model brushes will be rendered + using plain colors. The engine uses a material system similar to Quake 3 Arena + shader files, to provide an easy way to apply the different colors. +</p><p> + The file <i>materials/shaderlist.txt</i> contains a list of shader files + that can be used by the engine. Each shader file can contain several materials. +</p><p> + The default shaderlist.txt looks like this: +</p> +<pre> +common +colors +</pre> +<p> + On startup, the engine will read materials from the files <i>materials/common.shader</i> + and <i>materials/colors.shader</i>. If a model contains an unknown material, + a warning will be given and the brushes will be colored hot pink. +</p><p> + In radiant, the materials can be used as normal textures, like you can with + Quake 3 Arena shaders. A number of default materials are already defined + and can be used out of the box. +</p><p> + The materials in the <i>colors/</i> directory can be used to + draw brush faces with a specified color. The actual RGB color is defined + by the material script. Examples are <i>red</i>, <i>green</i> and <i>blue</i>. +</p><p> + The default set of colors is rather limited, more colors can be added by + using the <i>common/</i> family of materials. The actual in-game color information for these faces will be provided by the engine. -<p> - The special texture <i>common/entity</i> represents an object's primary color. - In-game the faces with this texture will be drawn in the color that the entite has - provided as the object's primary color. For example, for player-controled ships will - have their owner's color as primary color. -<p> - Similar, the texture <i>common/entity_second</i> represents on object's secondary - color. <i>common/entity_third</i> will be a mix of the primary and secondary color. - Each of these textures also has a <i>_dark</i> variant. -<p> - You can also use two other special textures: as explained above, - faces with the <i>common/caulk</i> texture will be ignored on load. -<p> - The <i>common/clip</i> texture is reserved for - future use. At the moment they will be ignored as well.<p> - At the time of writing, texture names are hardcoded - in <i>src/model/map.cc</i>. +</p><p> + The <i>common/entity</i> material represents an object's primary color. + In-game the faces with this texture will be drawn with the primary color of the entity + that uses the model. For example, a player's ship will have its owner's color. + Similar, the material <i>common/entity_second</i> represents the secondary + color of an entity. <i>common/entity_third</i> will be a mix of the primary and secondary color. + Each of these materials also has a <i>_dark</i> variant. +</p><p> + There are two special material that will cause the brush faces to be ignored + by the engine: as explained above, the <i>common/caulk</i> material can be used + on hidden faces. The <i>common/clip</i> material is reserved for future use + brush faces using this texture will be ignored as well. +</p> -<h2 id="surface_flags"> - Surface flags +<h2 id="shader_files"> + Shader files </h2> <p> - The only supported surface flag is light. This will render - the brush face fullbright and can be used to create light-emiting objects - or windows. - + TODO: write a section on shader files. +</p> <h2 id="lights"> Lights </h2> |