This wiki is archived and useful information is being migrated to the main bzflag.org website

Difference between revisions of "TextureMatrix"

From BZFlagWiki
Jump to: navigation, search
(Code: added wiki table)
 
(13 intermediate revisions by 10 users not shown)
Line 1: Line 1:
The texture matrix object allows you to define how a texture will appear in an material.  It can be used to manipulate still (fixed) textures as well as animated ones.
+
A TextureMatrix, or texmat, when applied to a material object, allows you to define how a texture will appear in a material.  It can be used to manipulate still (fixed) textures as well as animated ones.
  
==Code==
+
== Code ==
 
{|
 
{|
 
|
 
|
textureMatrix
+
  textureMatrix
name example_texmat
+
  name example_texmat
scale 0.0 0.0 1.0 1.0 # u/v freqs, u/v scales
+
  scale 0.0 0.0 1.0 1.0 # u/v freqs, u/v scales
spin 0.0 # rotation freq
+
  spin 0.0 # rotation freq
shift 0.0 0.0 # u/v freqs
+
  shift 0.0 0.0 # u/v freqs
center 0.5 0.5 # dynamic u/v center (for spin and scale)
+
  center 0.5 0.5 # dynamic u/v center (for spin and scale)
fixedscale 0.0 0.0 # time invariant u/v scale
+
  fixedscale 0.0 0.0 # time invariant u/v scale
fixedspin 0.0 # time invariant rotation
+
  fixedspin 0.0 # time invariant rotation
fixedshift 0.0 0.0 # time invariant u/v shift
+
  fixedshift 0.0 0.0 # time invariant u/v shift
 +
  end
 +
|}
 +
 
 +
The valid parameters for textureMatrix are:
 +
{|{{Prettytable}}
 +
|-
 +
| {{Hl3}} |'''Parameter'''
 +
| {{Hl3}} |'''Description'''
 +
|-
 +
| '''name''' || Name of the texmat, for reference.
 +
|-
 +
| '''scale''' || Causes texture to dynamically change it's size, parameters are u/v frequencies, then u/v scales.
 +
|-
 +
| '''spin''' || Cause a texture to spin around a center point, parameter is rotational frequency.
 +
|-
 +
| '''shift''' || Causes texture to move linearly, parameters are u/v frequencies.
 +
|-
 +
| '''center''' || Central point for spin and scale.
 +
|-
 +
| '''fixedscale''' || Fixed scale, texture doesn't move with time.
 +
|-
 +
| '''fixedspin''' || Fixed spin, texture doesn't move with time.
 +
|-
 +
| '''fixedshift''' || Fixed shift, texture doesn't move with time.
 +
|}
 +
 
 +
A textureMatrix can be called by adding 'texmat <name>' to a material containing a texture, like so:
 +
{|
 +
|
 +
material
 +
  name example_material
 +
  diffuse 1 1 1 1
 +
  texture caution
 +
  texmat example_texmat
 
  end
 
  end
 
|}
 
|}
Texture Matrix must be used in conjunction with the [[Material]] object using texmat.
 
valid parameters for a Material are:
 
<properties>
 
name=name for reference
 
scale=u/v freqs, u/v scales
 
spin=rotation freq
 
shift=u/v freqs
 
center=dynamic u/v center (for spin and scale)
 
fixedscale=time invariant u/v scale
 
fixedspin=time invariant rotation
 
fixedshift=time invariant u/v shift
 
</properties>
 
  
==Examples==
+
== Editor Support ==
Texture Matrix is often used to create the appearance of flowing water or lava with the "shift" argument.
+
The Texture Matrix can only be added to a map by hand, or by pyBzEdit.
 +
 
 +
==History==
 +
The TextureMatrix object was added with the [[BZFlag 2.0.0|v2.0.0]] release of BZFlag.
  
 
[[Category:Map Making]]
 
[[Category:Map Making]]
[[Category:Map_Objects]]
+
[[Category:Map Objects]]

Latest revision as of 02:23, 3 December 2016

A TextureMatrix, or texmat, when applied to a material object, allows you to define how a texture will appear in a material. It can be used to manipulate still (fixed) textures as well as animated ones.

Code[edit]

 textureMatrix
  name example_texmat
  scale 0.0 0.0 1.0 1.0 # u/v freqs, u/v scales
  spin 0.0 # rotation freq
  shift 0.0 0.0 # u/v freqs
  center 0.5 0.5 # dynamic u/v center (for spin and scale)
  fixedscale 0.0 0.0 # time invariant u/v scale
  fixedspin 0.0 # time invariant rotation
  fixedshift 0.0 0.0 # time invariant u/v shift
 end

The valid parameters for textureMatrix are:

Parameter Description
name Name of the texmat, for reference.
scale Causes texture to dynamically change it's size, parameters are u/v frequencies, then u/v scales.
spin Cause a texture to spin around a center point, parameter is rotational frequency.
shift Causes texture to move linearly, parameters are u/v frequencies.
center Central point for spin and scale.
fixedscale Fixed scale, texture doesn't move with time.
fixedspin Fixed spin, texture doesn't move with time.
fixedshift Fixed shift, texture doesn't move with time.

A textureMatrix can be called by adding 'texmat <name>' to a material containing a texture, like so:

material
 name example_material
 diffuse 1 1 1 1
 texture caution
 texmat example_texmat
end

Editor Support[edit]

The Texture Matrix can only be added to a map by hand, or by pyBzEdit.

History[edit]

The TextureMatrix object was added with the v2.0.0 release of BZFlag.