Brush

From Blood Wiki
(Difference between revisions)
Jump to: navigation, search
m
Line 2: Line 2:
 
[[File:Radiant brush.jpg|320px|right|thumb|Brush of the crypt entrance in NetRadiant]]
 
[[File:Radiant brush.jpg|320px|right|thumb|Brush of the crypt entrance in NetRadiant]]
  
Basic building block in a level. It is used primarily to define the physical structure of the area being designed. The term brush is used by Radiant to refer to anything that is not an entity, and therefore also encompasses patch meshes. A brush can be made to represent anything from solid matter (metal, dirt, wood, etc.) to liquids (lava, water, etc) to gases (fogs), depending on the textures and shaders applied to them.  
+
Basic building block in a level. It is used primarily to define the physical structure of the area being designed. The term brush is used by Radiant to refer to anything that is not an entity, and therefore also encompasses [[path mesh|patch meshes]]. A brush can be made to represent anything from solid matter (metal, dirt, wood, etc.) to liquids (lava, water, etc) depending on the textures and materials applied to them.  
  
 
Brush is [[CSG | consecutive solid geometry]]. It defines a form made of it's sides and a volume which is anyting inside. Brush is using this rules:
 
Brush is [[CSG | consecutive solid geometry]]. It defines a form made of it's sides and a volume which is anyting inside. Brush is using this rules:
Line 10: Line 10:
 
* If slice brush by the plane of any of it's sides, whole brush will be on one side of the plane
 
* If slice brush by the plane of any of it's sides, whole brush will be on one side of the plane
  
{{hidden begin | Texture projection on brushes }}
+
=== Texture projection ===
  
 
Since brush internal structure dont have vertices, it is using special projection technique to get texture mapping:
 
Since brush internal structure dont have vertices, it is using special projection technique to get texture mapping:
Line 29: Line 29:
 
* No texture coords = no UVW unwrap work.
 
* No texture coords = no UVW unwrap work.
 
* A little easier to control [[texture detail]].
 
* A little easier to control [[texture detail]].
* No texture breakage when model is sliced.
+
* No texture UV breakage when model is sliced/expanded.
 
* Can scale model with keeping original texture detail.
 
* Can scale model with keeping original texture detail.
 
* Can modify brush in various ways with no texture breakage (make wall longer for example).
 
* Can modify brush in various ways with no texture breakage (make wall longer for example).
  
{{hidden end}}
+
== Brush volume ==
 
+
== Volume properties ==
+
 
+
Brush volume have several uses.
+
  
 
=== 1. Brush contents ===
 
=== 1. Brush contents ===
Line 48: Line 44:
 
* Slime
 
* Slime
 
* Lava
 
* Lava
* Sky (not used on Blood Omnicide)
+
* Sky
  
 
Brush contents are defined from the materials brush have on it's sides. Usually all brush sides must have same contents (mixed contents will give a compiler warning and could lead to bugged behavior).
 
Brush contents are defined from the materials brush have on it's sides. Usually all brush sides must have same contents (mixed contents will give a compiler warning and could lead to bugged behavior).
Line 56: Line 52:
 
This is not real transparency but any brush that does not provide structure/seal to a room, and merely is there to detail the room.
 
This is not real transparency but any brush that does not provide structure/seal to a room, and merely is there to detail the room.
  
Detail brushes (radiant's feature) and [[BModel | bmodels]] are always 'transparent'.
+
Detail brushes (Radiant feature) and [[BModel | bmodels]] are always 'transparent'.
  
 
Also if brush have sides which is marked detailed or transparent, it will be forced transparent.
 
Also if brush have sides which is marked detailed or transparent, it will be forced transparent.

Revision as of 14:43, 8 October 2012

This page is not finished
You can help by editing and extending it.
Brush of the crypt entrance in NetRadiant

Basic building block in a level. It is used primarily to define the physical structure of the area being designed. The term brush is used by Radiant to refer to anything that is not an entity, and therefore also encompasses patch meshes. A brush can be made to represent anything from solid matter (metal, dirt, wood, etc.) to liquids (lava, water, etc) depending on the textures and materials applied to them.

Brush is consecutive solid geometry. It defines a form made of it's sides and a volume which is anyting inside. Brush is using this rules:

  • Minimum 3 sides
  • Each side is plane forming polyhedron (maximum 16-24 corners)
  • If slice brush by the plane of any of it's sides, whole brush will be on one side of the plane

Texture projection

Since brush internal structure dont have vertices, it is using special projection technique to get texture mapping:

  1. Texture get projected from axis planes (XY, XZ, YZ) to a sides of the brush, optimal projection plane is selected by brush side orientation.
  2. Texture is rotated by plane's rotate parameter.
  3. Texture position is scaled by plane's stretch (x and y).
  4. Texture position is shifted by plane's offset (x and y).
  5. Using texture dimensions, positions is converted to texture coordinates.

This leads to a number of limitations applied for brushes:

  • Rotating texture is tricky as no rotation origin is specified, this leads to texture breakage when brush is rotated to small angles (90 degrees rotation work fine)
  • Texturing may broke if texture resolution is changed (there is material trick to bypass that)

Along with limitations, there is a number of benefits:

  • No texture coords = no UVW unwrap work.
  • A little easier to control texture detail.
  • No texture UV breakage when model is sliced/expanded.
  • Can scale model with keeping original texture detail.
  • Can modify brush in various ways with no texture breakage (make wall longer for example).

Brush volume

1. Brush contents

Physics-related contents of the brush. Could be one of the followed:

  • Solid
  • Non-solid
  • Water
  • Slime
  • Lava
  • Sky

Brush contents are defined from the materials brush have on it's sides. Usually all brush sides must have same contents (mixed contents will give a compiler warning and could lead to bugged behavior).

2. Brush VIS transparency

This is not real transparency but any brush that does not provide structure/seal to a room, and merely is there to detail the room.

Detail brushes (Radiant feature) and bmodels are always 'transparent'.

Also if brush have sides which is marked detailed or transparent, it will be forced transparent.

See also

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox