package starling.rendering {
/**
 *  An effect drawing a mesh of textured, colored vertices.
 *  *  This is the standard effect that is the base for all mesh styles;
 *  *  if you want to create your own mesh styles, you will have to extend this class.
 *  *
 *  *  <p>For more information about the usage and creation of effects, please have a look at
 *  *  the documentation of the root class, "Effect".</p>
 *  *
 *  *  @see Effect
 *  *  @see FilterEffect
 *  *  @see starling.styles.MeshStyle
 *  
 * @externs
 */
public class MeshEffect extends starling.rendering.FilterEffect {
	/**
	 *  Creates a new MeshEffect instance. 
	 */
	public function MeshEffect() {
		super();
	}
	/**
	 *  The vertex format expected by <code>uploadVertexData</code>:
	 *      *  <code>"position:float2, texCoords:float2, color:bytes4"</code> 
	 */
	public static var VERTEX_FORMAT:starling.rendering.VertexDataFormat;
	/**
	 *  The alpha value of the object rendered by the effect. Must be taken into account
	 *      *  by all subclasses. 
	 */
	public function get alpha():Number { return 0; }
	public function set alpha(value:Number):void {}
	/**
	 *  Indicates if the rendered vertices are tinted in any way, i.e. if there are vertices
	 *      *  that have a different color than fully opaque white. The base <code>MeshEffect</code>
	 *      *  class uses this information to simplify the fragment shader if possible. May be
	 *      *  ignored by subclasses. 
	 */
	public function get tinted():Boolean { return false; }
	public function set tinted(value:Boolean):void {}
}
}
