Material in Anark Studio 2.5

The surface material for a model.

Inherits from:

Instance Properties

name type description
active Boolean Should this asset be drawn? [from Asset]
ambient Color Ambient color.
behaviors Collection (read only) All Behavior objects attached under this asset. [from Asset]
blendMode Number Various ways to blend this material with the rest of the scene.
constructor Object A reference to the constructor class for the current object instance. [from Object]
context TimeContext (read only) The asset's local TimeContext object. [from Asset]
contextType Number Type of the TimeContext for this asset. [from Asset]
culling Number Type of culling to use.
diffuse Color Diffuse color.
emissivePower Number Intensity of emmisive power.
endLifeTime Number Ending time of the asset. [from Asset]
fillMode Number Controls solid/wireframe/point display.
id Number (read only) Unique ID for the asset. [from Asset]
maps Collection (read only) Images in this material.
music Collection (read only) All Music objects attached under this asset. [from Asset]
name String User-defined name for the asset. [from Asset]
opacity Number Opacity of the material.
parent Object (read only) Parent object of this asset. [from Asset]
prototype Object The prototype for a class. [from Object]
sounds Collection (read only) All Sounds objects attached under this asset. [from Asset]
specular Color Specularity color.
specularEnable Boolean Enable specularity?
specularPower Number Sharpness of specularity.
startLifeTime Number Starting time of the asset. [from Asset]
type String (read only) Type of the asset. [from Asset]

Instance Methods

name returns description
attach(assetObject) (none) Attach the argument underneath the asset. [from Asset]
copy() Asset Create a copy of the asset. [from Asset]
detach(assetObject) (none) Remove an asset from this asset. [from Asset]
hasOwnProperty(propertyOrMethodName) Boolean Determines if the object/instance itself has the named property or method. [from Object]
isPrototypeOf(instanceToTest) Boolean Determines if the calling object prototype is in the inheritance chain for the supplied argument. [from Object]
propertyIsEnumerable(propertyOrMethodName) Boolean Determines if the object/instance itself has a property or method of the supplied name which will appear in a for (prop in obj) enumeration. [from Object]
toLocaleString() String For most objects, the same as toString() unless explicitly overridden. [from Object]
toString() String Returns a string representation of the object. [from Object]
valueOf() String Returns the internal this value of the object. [from Object]

Description

The Material object is a type of asset that represents the surface of a model and is applied on a per-triangle basis to the geometry.

There are two types of object constructors for materials. The Library asset constructor creates a new instance of the object from a resource in the Anark Studio Library. The scripting object constructor creates an empty Material object. Objects created via scripting are not available to the Anark Studio interface, but they do appear in the finished project.

Library asset constructor syntax

var theMaterial = new Material( "library://libraryAssetName" [, objectToAttachTo] );
libraryAssetName
required — A String with the name of the asset in the Anark Studio Library from which to create this object.
objectToAttachTo
optional — The String name of the object to which the material will be attached.

Scripting object constructor syntax

var theMaterial = new Material( [sceneGraphName] [, objectToAttachTo] );
sceneGraphName
optional — A String with the name for the new material in the scene graph.
objectToAttachTo
optional — The String name of the object to which the material will be attached.

Material Examples


// Create the new material.  
theMaterial = new Material( "library://greenSpots" );  

// Create an image to use as a texture map.  
theImage = new Image ( "library://shinyPlastic", "theMaterial" );  
theMaterial.opacity = 0.5;

Methods that return a Material

name of object description
swapMaterial(oldMaterialName,newMaterial) Model Use a new material in place of an existing material.

Arguments that are a Material

name in method of object description
newMaterial swapMaterial(oldMaterialName,newMaterial) Model A reference to a new Material<