Sprite implementation which maintains its own Unity Mesh. Leverages dynamic batching. More...

Inherits tk2dBaseSprite.

Inherited by tk2dAnimatedSprite.

List of all members.

Public Types

enum  Anchor
 Anchor. NOTE: The order in this enum is deliberate, to initialize at LowerLeft for backwards compatibility. This is also the reason it is local here. Other Anchor enums are NOT compatbile. Do not cast. More...

Public Member Functions

override void Build ()
 Rebuilds the mesh data for this sprite. Not usually necessary to call this, unless some internal states are modified.
override void ReshapeBounds (Vector3 dMin, Vector3 dMax)
 Used for sprite resizing in Editor, and UILayout.
void SetSprite (int newSpriteId)
 Sets the sprite by identifier.
bool SetSprite (string spriteName)
 Sets the sprite by name. The sprite will be selected from the current collection.
void SetSprite (tk2dSpriteCollectionData newCollection, int newSpriteId)
 Sets sprite by identifier from the new collection.
bool SetSprite (tk2dSpriteCollectionData newCollection, string spriteName)
 Sets sprite by name from the new collection.
void MakePixelPerfect ()
 Makes the sprite pixel perfect to the active camera. Automatically detects tk2dCamera if present Otherwise uses Camera.main.
int GetSpriteIdByName (string name)
 Resolves a sprite name and returns a unique id for the sprite. Convenience alias of tk2dSpriteCollectionData.GetSpriteIdByName
Bounds GetBounds ()
 Gets the local space bounds of the sprite.
Bounds GetUntrimmedBounds ()
 Gets untrimmed local space bounds of the sprite. This is the size of the sprite before 2D Toolkit trims away empty space in the sprite. Use this when you need to position sprites in a grid, etc, when the trimmed bounds is not sufficient.
tk2dSpriteDefinition GetCurrentSpriteDef ()
 Gets the current sprite definition.

Static Public Member Functions

static tk2dSprite AddComponent (GameObject go, tk2dSpriteCollectionData spriteCollection, int spriteId)
 Adds a tk2dSprite as a component to the gameObject passed in, setting up necessary parameters and building geometry. Convenience alias of tk2dBaseSprite.AddComponent<tk2dSprite>(...).
static tk2dSprite AddComponent (GameObject go, tk2dSpriteCollectionData spriteCollection, string spriteName)
 Adds a tk2dSprite as a component to the gameObject passed in, setting up necessary parameters and building geometry. Convenience alias of tk2dBaseSprite.AddComponent<tk2dSprite>(...).
static GameObject CreateFromTexture (Texture texture, tk2dSpriteCollectionSize size, Rect region, Vector2 anchor)
 Create a sprite (and gameObject) displaying the region of the texture specified. Use tk2dSpriteCollectionData.CreateFromTexture if you need to create a sprite collection with multiple sprites. It is your responsibility to destroy the collection when you destroy this sprite game object. You can get to it by using sprite.Collection. Convenience alias of tk2dBaseSprite.CreateFromTexture<tk2dSprite>(...)
static T AddComponent< T > (GameObject go, tk2dSpriteCollectionData spriteCollection, int spriteId)
 Adds a tk2dBaseSprite derived class as a component to the gameObject passed in, setting up necessary parameters and building geometry.
static T AddComponent< T > (GameObject go, tk2dSpriteCollectionData spriteCollection, string spriteName)
 Adds a tk2dBaseSprite derived class as a component to the gameObject passed in, setting up necessary parameters and building geometry. Shorthand using sprite name.
static GameObject CreateFromTexture< T > (Texture texture, tk2dSpriteCollectionSize size, Rect region, Vector2 anchor)
 Create a sprite (and gameObject) displaying the region of the texture specified. Use tk2dSpriteCollectionData.CreateFromTexture if you need to create a sprite collection with multiple sprites.

Public Attributes

BoxCollider boxCollider = null
 Internal cached version of the box collider created for this sprite, if present.
MeshCollider meshCollider = null
 Internal cached version of the mesh collider created for this sprite, if present.

Properties

tk2dSpriteCollectionData Collection [get, set]
 Deprecation warning: the set accessor will be removed in a future version. Use SetSprite when you need to switch sprite collection.
Color color [get, set]
 Gets or sets the color.
Vector3 scale [get, set]
 Gets or sets the scale.
int SortingOrder [get, set]
 Gets or sets the sorting order The sorting order lets you override draw order for sprites which are at the same z position It is similar to offsetting in z - the sprite stays at the original position This corresponds to the renderer.sortingOrder property in Unity 4.3.
bool FlipX [get, set]
 Flips the sprite horizontally. Set FlipX to true to flip it horizontally. Note: The sprite itself may be flipped by the hierarchy above it or localScale These functions do not consider those cases.
bool FlipY [get, set]
 Flips the sprite vertically. Set FlipY to true to flip it vertically. Note: The sprite itself may be flipped by the hierarchy above it or localScale These functions do not consider those cases.
int spriteId [get, set]
 Gets or sets the sprite identifier.
tk2dSpriteDefinition CurrentSprite [get]
 Gets the current sprite definition.

Events

System.Action< tk2dBaseSpriteSpriteChanged
 This event is called whenever a sprite is changed. A sprite is considered to be changed when the sprite itself is changed, or the scale applied to the sprite is changed.

Detailed Description

Sprite implementation which maintains its own Unity Mesh. Leverages dynamic batching.


Member Enumeration Documentation

enum tk2dBaseSprite.Anchor [inherited]

Anchor. NOTE: The order in this enum is deliberate, to initialize at LowerLeft for backwards compatibility. This is also the reason it is local here. Other Anchor enums are NOT compatbile. Do not cast.


Member Function Documentation

static tk2dSprite tk2dSprite.AddComponent ( GameObject  go,
tk2dSpriteCollectionData  spriteCollection,
int  spriteId 
) [static]

Adds a tk2dSprite as a component to the gameObject passed in, setting up necessary parameters and building geometry. Convenience alias of tk2dBaseSprite.AddComponent<tk2dSprite>(...).

static tk2dSprite tk2dSprite.AddComponent ( GameObject  go,
tk2dSpriteCollectionData  spriteCollection,
string  spriteName 
) [static]

Adds a tk2dSprite as a component to the gameObject passed in, setting up necessary parameters and building geometry. Convenience alias of tk2dBaseSprite.AddComponent<tk2dSprite>(...).

static T tk2dBaseSprite.AddComponent< T > ( GameObject  go,
tk2dSpriteCollectionData  spriteCollection,
int  spriteId 
) [static, inherited]

Adds a tk2dBaseSprite derived class as a component to the gameObject passed in, setting up necessary parameters and building geometry.

Type Constraints
T :tk2dBaseSprite 
static T tk2dBaseSprite.AddComponent< T > ( GameObject  go,
tk2dSpriteCollectionData  spriteCollection,
string  spriteName 
) [static, inherited]

Adds a tk2dBaseSprite derived class as a component to the gameObject passed in, setting up necessary parameters and building geometry. Shorthand using sprite name.

Type Constraints
T :tk2dBaseSprite 
override void tk2dSprite.Build ( ) [virtual]

Rebuilds the mesh data for this sprite. Not usually necessary to call this, unless some internal states are modified.

Implements tk2dBaseSprite.

static GameObject tk2dSprite.CreateFromTexture ( Texture  texture,
tk2dSpriteCollectionSize  size,
Rect  region,
Vector2  anchor 
) [static]

Create a sprite (and gameObject) displaying the region of the texture specified. Use tk2dSpriteCollectionData.CreateFromTexture if you need to create a sprite collection with multiple sprites. It is your responsibility to destroy the collection when you destroy this sprite game object. You can get to it by using sprite.Collection. Convenience alias of tk2dBaseSprite.CreateFromTexture<tk2dSprite>(...)

static GameObject tk2dBaseSprite.CreateFromTexture< T > ( Texture  texture,
tk2dSpriteCollectionSize  size,
Rect  region,
Vector2  anchor 
) [static, inherited]

Create a sprite (and gameObject) displaying the region of the texture specified. Use tk2dSpriteCollectionData.CreateFromTexture if you need to create a sprite collection with multiple sprites.

Type Constraints
T :tk2dBaseSprite 
Bounds tk2dBaseSprite.GetBounds ( ) [inherited]

Gets the local space bounds of the sprite.

Returns:
Local space bounds

Gets the current sprite definition.

Returns:
tk2dSpriteDefinition for the currently active sprite.
int tk2dBaseSprite.GetSpriteIdByName ( string  name) [inherited]

Resolves a sprite name and returns a unique id for the sprite. Convenience alias of tk2dSpriteCollectionData.GetSpriteIdByName

Returns:
Unique Sprite Id.
Parameters:
nameCase sensitive sprite name, as defined in the sprite collection. This is usually the source filename excluding the extension
Bounds tk2dBaseSprite.GetUntrimmedBounds ( ) [inherited]

Gets untrimmed local space bounds of the sprite. This is the size of the sprite before 2D Toolkit trims away empty space in the sprite. Use this when you need to position sprites in a grid, etc, when the trimmed bounds is not sufficient.

Returns:
Local space untrimmed bounds
void tk2dBaseSprite.MakePixelPerfect ( ) [inherited]

Makes the sprite pixel perfect to the active camera. Automatically detects tk2dCamera if present Otherwise uses Camera.main.

override void tk2dSprite.ReshapeBounds ( Vector3  dMin,
Vector3  dMax 
) [virtual]

Used for sprite resizing in Editor, and UILayout.

Reimplemented from tk2dBaseSprite.

void tk2dBaseSprite.SetSprite ( int  newSpriteId) [inherited]

Sets the sprite by identifier.

bool tk2dBaseSprite.SetSprite ( string  spriteName) [inherited]

Sets the sprite by name. The sprite will be selected from the current collection.

void tk2dBaseSprite.SetSprite ( tk2dSpriteCollectionData  newCollection,
int  newSpriteId 
) [inherited]

Sets sprite by identifier from the new collection.

bool tk2dBaseSprite.SetSprite ( tk2dSpriteCollectionData  newCollection,
string  spriteName 
) [inherited]

Sets sprite by name from the new collection.


Member Data Documentation

BoxCollider tk2dBaseSprite.boxCollider = null [inherited]

Internal cached version of the box collider created for this sprite, if present.

MeshCollider tk2dBaseSprite.meshCollider = null [inherited]

Internal cached version of the mesh collider created for this sprite, if present.


Property Documentation

Deprecation warning: the set accessor will be removed in a future version. Use SetSprite when you need to switch sprite collection.

Color tk2dBaseSprite.color [get, set, inherited]

Gets or sets the color.

Please note the range for a Unity Color is 0..1 and not 0..255.

Gets the current sprite definition.

Returns:
tk2dSpriteDefinition for the currently active sprite.
bool tk2dBaseSprite.FlipX [get, set, inherited]

Flips the sprite horizontally. Set FlipX to true to flip it horizontally. Note: The sprite itself may be flipped by the hierarchy above it or localScale These functions do not consider those cases.

bool tk2dBaseSprite.FlipY [get, set, inherited]

Flips the sprite vertically. Set FlipY to true to flip it vertically. Note: The sprite itself may be flipped by the hierarchy above it or localScale These functions do not consider those cases.

Vector3 tk2dBaseSprite.scale [get, set, inherited]

Gets or sets the scale.

Use the sprite scale method as opposed to transform.localScale to avoid breaking dynamic batching.

int tk2dBaseSprite.SortingOrder [get, set, inherited]

Gets or sets the sorting order The sorting order lets you override draw order for sprites which are at the same z position It is similar to offsetting in z - the sprite stays at the original position This corresponds to the renderer.sortingOrder property in Unity 4.3.

int tk2dBaseSprite.spriteId [get, set, inherited]

Gets or sets the sprite identifier.

The spriteId is a unique number identifying each sprite. Use GetSpriteIdByName to resolve an identifier from the current sprite collection.


Event Documentation

System.Action<tk2dBaseSprite> tk2dBaseSprite.SpriteChanged [inherited]

This event is called whenever a sprite is changed. A sprite is considered to be changed when the sprite itself is changed, or the scale applied to the sprite is changed.