ShaderMaterial

Inheritance: java.lang.Object, com.aspose.threed.A3DObject, com.aspose.threed.Material

public class ShaderMaterial extends Material

A shader material allows to describe the material by external rendering engine or shader language. ShaderMaterial uses ShaderTechnique to describe the concrete rendering details, and the most suitable one will be used according to the final rendering platform. For example, your ShaderMaterial instance can have two technique, one is defined by HLSL, and another is defined by GLSL Under non-window platform the GLSL should be used instead of HLSL

Constructors

ConstructorDescription
ShaderMaterial()Initializes a new instance of the ShaderMaterial class.
ShaderMaterial(String name)Initializes a new instance of the ShaderMaterial class.

Fields

FieldDescription
MAP_AMBIENTUsed in setTexture to assign a ambient texture mapping.
MAP_DIFFUSEUsed in setTexture to assign a diffuse texture mapping.
MAP_EMISSIVEUsed in setTexture to assign a emissive texture mapping.
MAP_NORMALUsed in setTexture to assign a normal texture mapping.
MAP_SPECULARUsed in setTexture to assign a specular texture mapping.

Methods

MethodDescription
equals(Object arg0)
findProperty(String propertyName)Finds the property.
getClass()
getName()Gets the name.
getProperties()Gets the collection of all properties.
getProperty(String property)Get the value of specified property
getTechniques()Gets all available techniques defined in this material.
getTexture(String slotName)Gets the texture from the specified slot, it can be material’s property name or shader’s parameter name
hashCode()
iterator()Gets the enumerator to enumerate internal texture slots.
notify()
notifyAll()
removeProperty(Property property)Removes a dynamic property.
removeProperty(String property)Remove the specified property identified by name
setName(String value)Sets the name.
setProperty(String property, Object value)Sets the value of specified property
setTexture(String slotName, TextureBase texture)Sets the texture to specified slot
toString()Formats object to string
wait()
wait(long arg0)
wait(long arg0, int arg1)

ShaderMaterial()

public ShaderMaterial()

Initializes a new instance of the ShaderMaterial class.

ShaderMaterial(String name)

public ShaderMaterial(String name)

Initializes a new instance of the ShaderMaterial class.

Parameters:

ParameterTypeDescription
namejava.lang.StringName

MAP_AMBIENT

public static final String MAP_AMBIENT

Used in setTexture to assign a ambient texture mapping.

MAP_DIFFUSE

public static final String MAP_DIFFUSE

Used in setTexture to assign a diffuse texture mapping.

MAP_EMISSIVE

public static final String MAP_EMISSIVE

Used in setTexture to assign a emissive texture mapping.

MAP_NORMAL

public static final String MAP_NORMAL

Used in setTexture to assign a normal texture mapping.

MAP_SPECULAR

public static final String MAP_SPECULAR

Used in setTexture to assign a specular texture mapping.

equals(Object arg0)

public boolean equals(Object arg0)

Parameters:

ParameterTypeDescription
arg0java.lang.Object

Returns: boolean

findProperty(String propertyName)

public Property findProperty(String propertyName)

Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)

Parameters:

ParameterTypeDescription
propertyNamejava.lang.StringProperty name.

Returns: Property - The property.

getClass()

public final native Class<?> getClass()

Returns: java.lang.Class

getName()

public String getName()

Gets the name.

Returns: java.lang.String

getProperties()

public PropertyCollection getProperties()

Gets the collection of all properties.

Returns: PropertyCollection

getProperty(String property)

public Object getProperty(String property)

Get the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name

Returns: java.lang.Object - The value of the found property

getTechniques()

public List<ShaderTechnique> getTechniques()

Gets all available techniques defined in this material.

Returns: java.util.List<com.aspose.threed.ShaderTechnique>

getTexture(String slotName)

public TextureBase getTexture(String slotName)

Gets the texture from the specified slot, it can be material’s property name or shader’s parameter name

Parameters:

ParameterTypeDescription
slotNamejava.lang.StringSlot name.

Returns: TextureBase - The texture. Example:

var mat = new LambertMaterial();
     var tex = new Texture();
     tex.setFileName("diffuse.png");
     mat.setTexture(Material.MAP_DIFFUSE, tex);
     tex = (Texture)mat.getTexture(Material.MAP_DIFFUSE);

hashCode()

public native int hashCode()

Returns: int

iterator()

public Iterator<TextureSlot> iterator()

Gets the enumerator to enumerate internal texture slots.

Returns: java.util.Iterator<com.aspose.threed.TextureSlot>

notify()

public final native void notify()

notifyAll()

public final native void notifyAll()

removeProperty(Property property)

public boolean removeProperty(Property property)

Removes a dynamic property.

Parameters:

ParameterTypeDescription
propertyPropertyWhich property to remove

Returns: boolean - true if the property is successfully removed

removeProperty(String property)

public boolean removeProperty(String property)

Remove the specified property identified by name

Parameters:

ParameterTypeDescription
propertyjava.lang.String

Returns: boolean

setName(String value)

public void setName(String value)

Sets the name.

Parameters:

ParameterTypeDescription
valuejava.lang.StringNew value

setProperty(String property, Object value)

public void setProperty(String property, Object value)

Sets the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name
valuejava.lang.ObjectThe value of the property

setTexture(String slotName, TextureBase texture)

public void setTexture(String slotName, TextureBase texture)

Sets the texture to specified slot

Parameters:

ParameterTypeDescription
slotNamejava.lang.StringSlot name.
textureTextureBaseTexture. Example:
var mat = new LambertMaterial();
     var tex = new Texture();
     tex.setFileName("diffuse.png");
     mat.setTexture(Material.MAP_NORMAL, tex);
``` |

### toString() {#toString--}

public String toString()



Formats object to string

**Returns:**
java.lang.String - Object string
### wait() {#wait--}

public final void wait()





### wait(long arg0) {#wait-long-}

public final void wait(long arg0)





**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long |  |

### wait(long arg0, int arg1) {#wait-long-int-}

public final void wait(long arg0, int arg1)





**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long |  |
| arg1 | int |  |