[page:Object3D] →

# [name]

A sprite is a plane that always faces towards the camera, generally with a partially transparent texture applied.
Sprites do not cast shadows, setting `castShadow = true` will have no effect.

## Example

`var spriteMap = new THREE.TextureLoader().load( "sprite.png" ); var spriteMaterial = new THREE.SpriteMaterial( { map: spriteMap, color: 0xffffff } ); var sprite = new THREE.Sprite( spriteMaterial ); scene.add( sprite );`

## Constructor

### [name]( [param:Material material] )

[page:Material material] - (optional) an instance of [page:SpriteMaterial]. Default is a white [page:SpriteMaterial].
Creates a new [name].

## Properties

See the base [page:Object3D] class for common properties.

### [property:Boolean isSprite]

Used to check whether this or derived classes are sprites. Default is *true*.
You should not change this, as it used internally for optimisation.

### [property:SpriteMaterial material]

An instance of [page:SpriteMaterial], defining the object's appearance. Default is a white [page:SpriteMaterial].

### [property:Vector2 center]

The sprite's anchor point, and the point around which the sprite rotates. A value of (0.5, 0.5) corresponds to the midpoint of the sprite. A value of (0, 0) corresponds to the lower left corner of the sprite. The default is (0.5, 0.5).

## Methods

See the base [page:Object3D] class for common methods.

### [method:Sprite clone]()

Returns a clone of this Sprite object and any descendants.

### [method:Sprite copy]( [param:Sprite sprite] )

Copies the properties of the passed sprite to this one.

### [method:null raycast]( [param:Raycaster raycaster], [param:Array intersects] )

Get intersections between a casted ray and this sprite. [page:Raycaster.intersectObject]() will call this method. The raycaster must be initialized by calling [page:Raycaster.setFromCamera]() before raycasting against sprites.

## Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]