com.jme3.material
クラス TechniqueDef

java.lang.Object
  上位を拡張 com.jme3.material.TechniqueDef
すべての実装されたインタフェース:
Savable

public class TechniqueDef
extends java.lang.Object
implements Savable

Describes a technique definition.


入れ子のクラスの概要
static class TechniqueDef.LightMode
          Describes light rendering mode.
static class TechniqueDef.ShadowMode
           
 
コンストラクタの概要
TechniqueDef()
          Serialization only.
TechniqueDef(java.lang.String name)
          Creates a new technique definition.
 
メソッドの概要
 void addShaderParamDefine(java.lang.String paramName, java.lang.String defineName)
          Adds a define linked to a material parameter.
 void addShaderPresetDefine(java.lang.String defineName, VarType type, java.lang.Object value)
          Adds a preset define.
 boolean addWorldParam(java.lang.String name)
          Adds a new world parameter by the given name.
 java.lang.String getFragmentShaderName()
          Returns the name of the fragment shader used by the technique, or null if no fragment shader is specified.
 TechniqueDef.LightMode getLightMode()
          Returns the light mode.
 java.lang.String getName()
          Returns the name of this technique as specified in the J3MD file.
 RenderState getRenderState()
          Returns the render state that this technique is using
 java.util.EnumSet<Caps> getRequiredCaps()
          Gets the renderer capabilities that are required by this technique.
 java.lang.String getShaderLanguage()
          Returns the shader language of the shaders used in this technique.
 java.lang.String getShaderParamDefine(java.lang.String paramName)
          Returns the define name which the given material parameter influences.
 DefineList getShaderPresetDefines()
          Returns the DefineList for the preset defines.
 TechniqueDef.ShadowMode getShadowMode()
          Returns the shadow mode.
 java.lang.String getVertexShaderName()
          Returns the name of the vertex shader used by the technique, or null if no vertex shader is specified.
 java.util.List<UniformBinding> getWorldBindings()
          Returns a list of world parameters that are used by this technique definition.
 boolean isUsingShaders()
          Returns true if this technique uses shaders, false otherwise.
 void read(JmeImporter im)
           
 void setLightMode(TechniqueDef.LightMode lightMode)
          Set the light mode
 void setRenderState(RenderState renderState)
          Sets the render state that this technique is using.
 void setShaderFile(java.lang.String vertexShader, java.lang.String fragmentShader, java.lang.String shaderLanguage)
          Sets the shaders that this technique definition will use.
 void setShadowMode(TechniqueDef.ShadowMode shadowMode)
          Set the shadow mode.
 void write(JmeExporter ex)
           
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

TechniqueDef

public TechniqueDef(java.lang.String name)
Creates a new technique definition.

Used internally by the J3M/J3MD loader.

パラメータ:
name - The name of the technique, should be set to null for default techniques.

TechniqueDef

public TechniqueDef()
Serialization only. Do not use.

メソッドの詳細

getName

public java.lang.String getName()
Returns the name of this technique as specified in the J3MD file. Default techniques have the name "Default".

戻り値:
the name of this technique

getLightMode

public TechniqueDef.LightMode getLightMode()
Returns the light mode.

戻り値:
the light mode.
関連項目:
TechniqueDef.LightMode

setLightMode

public void setLightMode(TechniqueDef.LightMode lightMode)
Set the light mode

パラメータ:
lightMode - the light mode
関連項目:
TechniqueDef.LightMode

getShadowMode

public TechniqueDef.ShadowMode getShadowMode()
Returns the shadow mode.

戻り値:
the shadow mode.

setShadowMode

public void setShadowMode(TechniqueDef.ShadowMode shadowMode)
Set the shadow mode.

パラメータ:
shadowMode - the shadow mode.
関連項目:
TechniqueDef.ShadowMode

getRenderState

public RenderState getRenderState()
Returns the render state that this technique is using

戻り値:
the render state that this technique is using
関連項目:
setRenderState(com.jme3.material.RenderState)

setRenderState

public void setRenderState(RenderState renderState)
Sets the render state that this technique is using.

パラメータ:
renderState - the render state that this technique is using.
関連項目:
RenderState

isUsingShaders

public boolean isUsingShaders()
Returns true if this technique uses shaders, false otherwise.

戻り値:
true if this technique uses shaders, false otherwise.
関連項目:
setShaderFile(java.lang.String, java.lang.String, java.lang.String)

getRequiredCaps

public java.util.EnumSet<Caps> getRequiredCaps()
Gets the renderer capabilities that are required by this technique.

戻り値:
the required renderer capabilities

setShaderFile

public void setShaderFile(java.lang.String vertexShader,
                          java.lang.String fragmentShader,
                          java.lang.String shaderLanguage)
Sets the shaders that this technique definition will use.

パラメータ:
vertexShader - The name of the vertex shader
fragmentShader - The name of the fragment shader
shaderLanguage - The shader language

getShaderParamDefine

public java.lang.String getShaderParamDefine(java.lang.String paramName)
Returns the define name which the given material parameter influences.

パラメータ:
paramName - The parameter name to look up
戻り値:
The define name
関連項目:
addShaderParamDefine(java.lang.String, java.lang.String)

addShaderParamDefine

public void addShaderParamDefine(java.lang.String paramName,
                                 java.lang.String defineName)
Adds a define linked to a material parameter.

Any time the material parameter on the parent material is altered, the appropriate define on the technique will be modified as well. See the method DefineList.set(java.lang.String, com.jme3.shader.VarType, java.lang.Object) on the exact details of how the material parameter changes the define.

パラメータ:
paramName - The name of the material parameter to link to.
defineName - The name of the define parameter, e.g. USE_LIGHTING

getShaderPresetDefines

public DefineList getShaderPresetDefines()
Returns the DefineList for the preset defines.

戻り値:
the DefineList for the preset defines.
関連項目:
addShaderPresetDefine(java.lang.String, com.jme3.shader.VarType, java.lang.Object)

addShaderPresetDefine

public void addShaderPresetDefine(java.lang.String defineName,
                                  VarType type,
                                  java.lang.Object value)
Adds a preset define.

Preset defines do not depend upon any parameters to be activated, they are always passed to the shader as long as this technique is used.

パラメータ:
defineName - The name of the define parameter, e.g. USE_LIGHTING
type - The type of the define. See DefineList.set(java.lang.String, com.jme3.shader.VarType, java.lang.Object) to see why it matters.
value - The value of the define

getFragmentShaderName

public java.lang.String getFragmentShaderName()
Returns the name of the fragment shader used by the technique, or null if no fragment shader is specified.

戻り値:
the name of the fragment shader to be used.

getVertexShaderName

public java.lang.String getVertexShaderName()
Returns the name of the vertex shader used by the technique, or null if no vertex shader is specified.

戻り値:
the name of the vertex shader to be used.

getShaderLanguage

public java.lang.String getShaderLanguage()
Returns the shader language of the shaders used in this technique.

戻り値:
the shader language of the shaders used in this technique.

addWorldParam

public boolean addWorldParam(java.lang.String name)
Adds a new world parameter by the given name.

パラメータ:
name - The world parameter to add.
戻り値:
True if the world parameter name was found and added to the list of world parameters, false otherwise.

getWorldBindings

public java.util.List<UniformBinding> getWorldBindings()
Returns a list of world parameters that are used by this technique definition.

戻り値:
The list of world parameters

write

public void write(JmeExporter ex)
           throws java.io.IOException
定義:
インタフェース Savable 内の write
例外:
java.io.IOException

read

public void read(JmeImporter im)
          throws java.io.IOException
定義:
インタフェース Savable 内の read
例外:
java.io.IOException