cocos2d-x  3.3rc0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SpriteBatchNode Class Reference

SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call (often known as "batch draw"). More...

#include <CCSpriteBatchNode.h>

Inheritance diagram for SpriteBatchNode:
Node TextureProtocol Ref BlendProtocol Label TMXLayer TextFieldTTF UICCTextField

Public Member Functions

TextureAtlasgetTextureAtlas (void)
 returns the TextureAtlas object More...
 
void setTextureAtlas (TextureAtlas *textureAtlas)
 sets the TextureAtlas object More...
 
local setTextureAtlas ( local textureAtlas)
 sets the TextureAtlas object More...
 
const std::vector< Sprite * > & getDescendants () const
 returns an array with the descendants (children, gran children, etc.). More...
 
local getDescendants ()
 returns an array with the descendants (children, gran children, etc.). More...
 
void increaseAtlasCapacity ()
local increaseAtlasCapacity ()
void removeChildAtIndex (ssize_t index, bool doCleanup)
 removes a child given a certain index. More...
 
var removeChildAtIndex ( var index, var doCleanup)
 removes a child given a certain index. More...
 
local removeChildAtIndex ( local index, local doCleanup)
 removes a child given a certain index. More...
 
void appendChild (Sprite *sprite)
local appendChild ( local sprite)
void removeSpriteFromAtlas (Sprite *sprite)
local removeSpriteFromAtlas ( local sprite)
ssize_t rebuildIndexInOrder (Sprite *parent, ssize_t index)
local rebuildIndexInOrder ( local parent, local index)
ssize_t highestAtlasIndexInChild (Sprite *sprite)
local highestAtlasIndexInChild ( local sprite)
ssize_t lowestAtlasIndexInChild (Sprite *sprite)
var lowestAtlasIndexInChild ( var sprite)
local lowestAtlasIndexInChild ( local sprite)
ssize_t atlasIndexForChild (Sprite *sprite, int z)
local atlasIndexForChild ( local sprite, local z)
void reorderBatch (bool reorder)
local reorderBatch ( local reorder)
virtual Texture2DgetTexture () const override
 Returns the currently used texture. More...
 
local getTexture ()
 Returns the currently used texture. More...
 
virtual void setTexture (Texture2D *texture) override
 Sets a new texuture. More...
 
local setTexture ( local texture)
 Sets a new texuture. More...
 
virtual void setBlendFunc (const BlendFunc &blendFunc) override
virtual const BlendFuncgetBlendFunc () const override
 Returns the blending function that is currently being used. More...
 
virtual void visit (Renderer *renderer, const Mat4 &parentTransform, uint32_t parentFlags) override
 Visits this node's children and draw them recursively. More...
 
var visit ( var renderer, var parentTransform, var parentFlags)
 Visits this node's children and draw them recursively. More...
 
local visit ( local renderer, local parentTransform, local parentFlags)
 Visits this node's children and draw them recursively. More...
 
virtual void addChild (Node *child, int zOrder, int tag) override
 Adds a child to the container with z order and tag. More...
 
virtual void addChild (Node *child, int zOrder, const std::string &name) override
 Adds a child to the container with z order and tag. More...
 
var addChild ( var child, var zOrder, var name)
 Adds a child to the container with z order and tag. More...
 
local addChild ( local child, local zOrder, local name)
 Adds a child to the container with z order and tag. More...
 
virtual void reorderChild (Node *child, int zOrder) override
 Reorders a child according to a new z value. More...
 
virtual void removeChild (Node *child, bool cleanup) override
 Removes a child from the container. More...
 
var removeChild ( var child, var cleanup)
 Removes a child from the container. More...
 
local removeChild ( local child, local cleanup)
 Removes a child from the container. More...
 
virtual void removeAllChildrenWithCleanup (bool cleanup) override
 Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter. More...
 
local removeAllChildrenWithCleanup ( local cleanup)
 Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter. More...
 
virtual void sortAllChildren () override
 Sorts the children array once before drawing, instead of every time when a child is added or reordered. More...
 
var sortAllChildren ()
 Sorts the children array once before drawing, instead of every time when a child is added or reordered. More...
 
local sortAllChildren ()
 Sorts the children array once before drawing, instead of every time when a child is added or reordered. More...
 
virtual void draw (Renderer *renderer, const Mat4 &transform, uint32_t flags) override
 Override this method to draw your own node. More...
 
var draw ( var renderer, var transform, var flags)
 Override this method to draw your own node. More...
 
local draw ( local renderer, local transform, local flags)
 Override this method to draw your own node. More...
 
virtual std::string getDescription () const override
 Gets the description string. More...
 
local getDescription ()
 Gets the description string. More...
 
void insertQuadFromSprite (Sprite *sprite, ssize_t index)
 Inserts a quad at a certain index into the texture atlas. More...
 
var insertQuadFromSprite ( var sprite, var index)
 Inserts a quad at a certain index into the texture atlas. More...
 
local insertQuadFromSprite ( local sprite, local index)
 Inserts a quad at a certain index into the texture atlas. More...
 
SpriteBatchNodeaddSpriteWithoutQuad (Sprite *child, int z, int aTag)
local addSpriteWithoutQuad ( local child, local z, local aTag)
virtual ~SpriteBatchNode ()
bool initWithTexture (Texture2D *tex, ssize_t capacity)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
var initWithTexture ( var tex, var capacity)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
local initWithTexture ( local tex, local capacity)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
bool initWithFile (const std::string &fileImage, ssize_t capacity)
 initializes a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and a capacity of children. More...
 
bool init ()
- Public Member Functions inherited from Node
virtual bool isRunning () const
 Returns whether or not the node is "running". More...
 
var isRunning ()
 Returns whether or not the node is "running". More...
 
local isRunning ()
 Returns whether or not the node is "running". More...
 
void scheduleUpdateWithPriorityLua (int handler, int priority)
 Schedules for lua script. More...
 
virtual void cleanup ()
 Stops all running actions and schedulers. More...
 
var cleanup ()
 Stops all running actions and schedulers. More...
 
local cleanup ()
 Stops all running actions and schedulers. More...
 
virtual void draw () final
var draw ()
local draw ()
virtual void visit () final
virtual ScenegetScene () const
 Returns the Scene that contains the Node. More...
 
local getScene ()
 Returns the Scene that contains the Node. More...
 
virtual Rect getBoundingBox () const
 Returns an AABB (axis-aligned bounding-box) in its parent's coordinate system. More...
 
virtual Rect boundingBox () const
local boundingBox ()
virtual void setEventDispatcher (EventDispatcher *dispatcher)
var setEventDispatcher ( var dispatcher)
local setEventDispatcher ( local dispatcher)
virtual EventDispatchergetEventDispatcher () const
local getEventDispatcher ()
void setPhysicsBody (PhysicsBody *body)
 set the PhysicsBody that let the sprite effect with physics More...
 
var setPhysicsBody ( var body)
 set the PhysicsBody that let the sprite effect with physics More...
 
local setPhysicsBody ( local body)
 set the PhysicsBody that let the sprite effect with physics More...
 
PhysicsBodygetPhysicsBody () const
 get the PhysicsBody the sprite have More...
 
var getPhysicsBody ()
 get the PhysicsBody the sprite have More...
 
local getPhysicsBody ()
 get the PhysicsBody the sprite have More...
 
void removeFromPhysicsWorld ()
 remove this node from physics world. More...
 
virtual GLubyte getOpacity () const
var getOpacity ()
local getOpacity ()
virtual GLubyte getDisplayedOpacity () const
local getDisplayedOpacity ()
virtual void setOpacity (GLubyte opacity)
local setOpacity ( local opacity)
virtual void updateDisplayedOpacity (GLubyte parentOpacity)
local updateDisplayedOpacity ( local parentOpacity)
virtual bool isCascadeOpacityEnabled () const
var isCascadeOpacityEnabled ()
local isCascadeOpacityEnabled ()
virtual void setCascadeOpacityEnabled (bool cascadeOpacityEnabled)
local setCascadeOpacityEnabled ( local cascadeOpacityEnabled)
virtual const Color3BgetColor () const
local getColor ()
virtual const Color3BgetDisplayedColor () const
local getDisplayedColor ()
virtual void setColor (const Color3B &color)
var setColor ( var color)
local setColor ( local color)
virtual void updateDisplayedColor (const Color3B &parentColor)
local updateDisplayedColor ( local parentColor)
virtual bool isCascadeColorEnabled () const
var isCascadeColorEnabled ()
local isCascadeColorEnabled ()
virtual void setCascadeColorEnabled (bool cascadeColorEnabled)
virtual void setOpacityModifyRGB (bool value)
var setOpacityModifyRGB ( var value)
local setOpacityModifyRGB ( local value)
virtual bool isOpacityModifyRGB () const
var isOpacityModifyRGB ()
local isOpacityModifyRGB ()
void setOnEnterCallback (const std::function< void()> &callback)
var setOnEnterCallback ( var callback)
local setOnEnterCallback ( local callback)
const std::function< void()> & getOnEnterCallback () const
local getOnEnterCallback ()
void setOnExitCallback (const std::function< void()> &callback)
var setOnExitCallback ( var callback)
local setOnExitCallback ( local callback)
const std::function< void()> & getOnExitCallback () const
local getOnExitCallback ()
void setonEnterTransitionDidFinishCallback (const std::function< void()> &callback)
var setonEnterTransitionDidFinishCallback ( var callback)
local setonEnterTransitionDidFinishCallback ( local callback)
const std::function< void()> & getonEnterTransitionDidFinishCallback () const
local getonEnterTransitionDidFinishCallback ()
void setonExitTransitionDidStartCallback (const std::function< void()> &callback)
var setonExitTransitionDidStartCallback ( var callback)
local setonExitTransitionDidStartCallback ( local callback)
const std::function< void()> & getonExitTransitionDidStartCallback () const
local getonExitTransitionDidStartCallback ()
unsigned short getCameraMask () const
 get & set camera mask, the node is visible by the camera whose camera flag & node's camera mask is true More...
 
void setCameraMask (unsigned short mask, bool applyChildren=true)
var setCameraMask ( var mask, var true)
local setCameraMask ( local mask, local true)
virtual ~Node ()
virtual void setLocalZOrder (int localZOrder)
 LocalZOrder is the 'key' used to sort the node relative to its siblings. More...
 
virtual void setZOrder (int localZOrder)
virtual void _setLocalZOrder (int z)
local _setLocalZOrder ( local z)
virtual int getLocalZOrder () const
 Gets the local Z order of this node. More...
 
var getLocalZOrder ()
 Gets the local Z order of this node. More...
 
local getLocalZOrder ()
 Gets the local Z order of this node. More...
 
virtual int getZOrder () const
var getZOrder ()
local getZOrder ()
virtual void setGlobalZOrder (float globalZOrder)
 Defines the oder in which the nodes are renderer. More...
 
local setGlobalZOrder ( local globalZOrder)
 Defines the oder in which the nodes are renderer. More...
 
virtual float getGlobalZOrder () const
 Returns the Node's Global Z Order. More...
 
var getGlobalZOrder ()
 Returns the Node's Global Z Order. More...
 
local getGlobalZOrder ()
 Returns the Node's Global Z Order. More...
 
virtual void setScaleX (float scaleX)
 Sets the scale (x) of the node. More...
 
var setScaleX ( var scaleX)
 Sets the scale (x) of the node. More...
 
local setScaleX ( local scaleX)
 Sets the scale (x) of the node. More...
 
virtual float getScaleX () const
 Returns the scale factor on X axis of this node. More...
 
local getScaleX ()
 Returns the scale factor on X axis of this node. More...
 
virtual void setScaleY (float scaleY)
 Sets the scale (y) of the node. More...
 
local setScaleY ( local scaleY)
 Sets the scale (y) of the node. More...
 
virtual float getScaleY () const
 Returns the scale factor on Y axis of this node. More...
 
virtual void setScaleZ (float scaleZ)
 Changes the scale factor on Z axis of this node. More...
 
local setScaleZ ( local scaleZ)
 Changes the scale factor on Z axis of this node. More...
 
virtual float getScaleZ () const
 Returns the scale factor on Z axis of this node. More...
 
virtual void setScale (float scale)
 Sets the scale (x,y,z) of the node. More...
 
local setScale ( local scale)
 Sets the scale (x,y,z) of the node. More...
 
virtual float getScale () const
 Gets the scale factor of the node, when X and Y have the same scale factor. More...
 
virtual void setScale (float scaleX, float scaleY)
 Sets the scale (x,y) of the node. More...
 
local setScale ( local scaleX, local scaleY)
 Sets the scale (x,y) of the node. More...
 
virtual void setPosition (const Vec2 &position)
 Sets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual void setNormalizedPosition (const Vec2 &position)
 Sets the position (x,y) using values between 0 and 1. More...
 
local setNormalizedPosition ( local position)
 Sets the position (x,y) using values between 0 and 1. More...
 
virtual const Vec2getPosition () const
 Gets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual const Vec2getNormalizedPosition () const
 returns the normalized position More...
 
local getNormalizedPosition ()
 returns the normalized position More...
 
virtual void setPosition (float x, float y)
 Sets the position (x,y) of the node in its parent's coordinate system. More...
 
local setPosition ( local x, local y)
 Sets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual void getPosition (float *x, float *y) const
 Gets position in a more efficient way, returns two number instead of a Vec2 object. More...
 
virtual void setPositionX (float x)
 Gets/Sets x or y coordinate individually for position. More...
 
virtual float getPositionX (void) const
var getPositionX ()
local getPositionX ()
virtual void setPositionY (float y)
local setPositionY ( local y)
virtual float getPositionY (void) const
local getPositionY ()
virtual void setPosition3D (const Vec3 &position)
 Sets the position (X, Y, and Z) in its parent's coordinate system. More...
 
local setPosition3D ( local position)
 Sets the position (X, Y, and Z) in its parent's coordinate system. More...
 
virtual Vec3 getPosition3D () const
 returns the position (X,Y,Z) in its parent's coordinate system More...
 
virtual void setPositionZ (float positionZ)
 Sets the 'z' coordinate in the position. More...
 
local setPositionZ ( local positionZ)
 Sets the 'z' coordinate in the position. More...
 
virtual void setVertexZ (float vertexZ)
var setVertexZ ( var vertexZ)
local setVertexZ ( local vertexZ)
virtual float getPositionZ () const
 Gets position Z coordinate of this node. More...
 
virtual float getVertexZ () const
var getVertexZ ()
virtual void setSkewX (float skewX)
 Changes the X skew angle of the node in degrees. More...
 
local setSkewX ( local skewX)
 Changes the X skew angle of the node in degrees. More...
 
virtual float getSkewX () const
 Returns the X skew angle of the node in degrees. More...
 
virtual void setSkewY (float skewY)
 Changes the Y skew angle of the node in degrees. More...
 
var setSkewY ( var skewY)
 Changes the Y skew angle of the node in degrees. More...
 
local setSkewY ( local skewY)
 Changes the Y skew angle of the node in degrees. More...
 
virtual float getSkewY () const
 Returns the Y skew angle of the node in degrees. More...
 
virtual void setAnchorPoint (const Vec2 &anchorPoint)
 Sets the anchor point in percent. More...
 
local setAnchorPoint ( local anchorPoint)
 Sets the anchor point in percent. More...
 
virtual const Vec2getAnchorPoint () const
 Returns the anchor point in percent. More...
 
virtual const Vec2getAnchorPointInPoints () const
 Returns the anchorPoint in absolute pixels. More...
 
virtual void setContentSize (const Size &contentSize)
 Sets the untransformed size of the node. More...
 
local setContentSize ( local contentSize)
 Sets the untransformed size of the node. More...
 
virtual const SizegetContentSize () const
 Returns the untransformed size of the node. More...
 
local getContentSize ()
 Returns the untransformed size of the node. More...
 
virtual void setVisible (bool visible)
 Sets whether the node is visible. More...
 
local setVisible ( local visible)
 Sets whether the node is visible. More...
 
virtual bool isVisible () const
 Determines if the node is visible. More...
 
virtual void setRotation (float rotation)
 Sets the rotation (angle) of the node in degrees. More...
 
var setRotation ( var rotation)
 Sets the rotation (angle) of the node in degrees. More...
 
local setRotation ( local rotation)
 Sets the rotation (angle) of the node in degrees. More...
 
virtual float getRotation () const
 Returns the rotation of the node in degrees. More...
 
virtual void setRotation3D (const Vec3 &rotation)
 Sets the rotation (X,Y,Z) in degrees. More...
 
local setRotation3D ( local rotation)
 Sets the rotation (X,Y,Z) in degrees. More...
 
virtual Vec3 getRotation3D () const
 returns the rotation (X,Y,Z) in degrees. More...
 
virtual void setRotationSkewX (float rotationX)
 Sets the X rotation (angle) of the node in degrees which performs a horizontal rotational skew. More...
 
virtual void setRotationX (float rotationX)
virtual float getRotationSkewX () const
 Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew. More...
 
var getRotationSkewX ()
 Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew. More...
 
local getRotationSkewX ()
 Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew. More...
 
virtual float getRotationX () const
virtual void setRotationSkewY (float rotationY)
 Sets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
local setRotationSkewY ( local rotationY)
 Sets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
virtual void setRotationY (float rotationY)
virtual float getRotationSkewY () const
 Gets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
local getRotationSkewY ()
 Gets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
virtual float getRotationY () const
void setOrderOfArrival (int orderOfArrival)
 Sets the arrival order when this node has a same ZOrder with other children. More...
 
int getOrderOfArrival () const
 Returns the arrival order, indicates which children is added previously. More...
 
void setGLServerState (int serverState)
int getGLServerState () const
virtual void ignoreAnchorPointForPosition (bool ignore)
 Sets whether the anchor point will be (0,0) when you position this node. More...
 
local ignoreAnchorPointForPosition ( local ignore)
 Sets whether the anchor point will be (0,0) when you position this node. More...
 
virtual bool isIgnoreAnchorPointForPosition () const
 Gets whether the anchor point will be (0,0) when you position this node. More...
 
virtual void addChild (Node *child)
 Adds a child to the container with z-order as 0. More...
 
local addChild ( local child)
 Adds a child to the container with z-order as 0. More...
 
virtual void addChild (Node *child, int localZOrder)
 Adds a child to the container with a local z-order. More...
 
local addChild ( local child, local localZOrder)
 Adds a child to the container with a local z-order. More...
 
virtual NodegetChildByTag (int tag) const
 Gets a child from the container with its tag. More...
 
var getChildByTag ( var tag)
 Gets a child from the container with its tag. More...
 
local getChildByTag ( local tag)
 Gets a child from the container with its tag. More...
 
virtual NodegetChildByName (const std::string &name) const
 Gets a child from the container with its name. More...
 
var getChildByName ( var name)
 Gets a child from the container with its name. More...
 
local getChildByName ( local name)
 Gets a child from the container with its name. More...
 
template<typename T >
getChildByName (const std::string &name) const
 Gets a child from the container with its name that can be cast to Type T. More...
 
virtual void enumerateChildren (const std::string &name, std::function< bool(Node *node)> callback) const
 Search the children of the receiving node to perform processing for nodes which share a name. More...
 
virtual Vector< Node * > & getChildren ()
 Returns the array of the node's children. More...
 
local getChildren ()
 Returns the array of the node's children. More...
 
virtual const Vector< Node * > & getChildren () const
local getChildren ()
virtual ssize_t getChildrenCount () const
 Returns the amount of children. More...
 
virtual void setParent (Node *parent)
 Sets the parent node. More...
 
local setParent ( local parent)
 Sets the parent node. More...
 
virtual NodegetParent ()
 Returns a pointer to the parent node. More...
 
virtual const NodegetParent () const
local getParent ()
virtual void removeFromParent ()
 Removes this node itself from its parent node with a cleanup. More...
 
virtual void removeFromParentAndCleanup (bool cleanup)
 Removes this node itself from its parent node. More...
 
local removeFromParent ( local cleanup)
 Removes this node itself from its parent node. More...
 
virtual void removeChildByTag (int tag, bool cleanup=true)
 Removes a child from the container by tag value. More...
 
local removeChildByTag ( local tag, local true)
 Removes a child from the container by tag value. More...
 
virtual void removeChildByName (const std::string &name, bool cleanup=true)
 Removes a child from the container by tag value. More...
 
var removeChildByName ( var name, var true)
 Removes a child from the container by tag value. More...
 
local removeChildByName ( local name, local true)
 Removes a child from the container by tag value. More...
 
virtual void removeAllChildren ()
 Removes all children from the container with a cleanup. More...
 
var removeAllChildren ()
 Removes all children from the container with a cleanup. More...
 
local removeAllChildren ()
 Removes all children from the container with a cleanup. More...
 
virtual int getTag () const
 Returns a tag that is used to identify the node easily. More...
 
local getTag ()
 Returns a tag that is used to identify the node easily. More...
 
virtual void setTag (int tag)
 Changes the tag that is used to identify the node easily. More...
 
local setTag ( local tag)
 Changes the tag that is used to identify the node easily. More...
 
virtual std::string getName () const
 Returns a string that is used to identify the node. More...
 
local getName ()
 Returns a string that is used to identify the node. More...
 
virtual void setName (const std::string &name)
 Changes the name that is used to identify the node easily. More...
 
local setName ( local name)
 Changes the name that is used to identify the node easily. More...
 
virtual void * getUserData ()
 Returns a custom user data pointer. More...
 
virtual const void * getUserData () const
virtual void setUserData (void *userData)
 Sets a custom user data pointer. More...
 
virtual RefgetUserObject ()
 Returns a user assigned Object. More...
 
virtual const RefgetUserObject () const
virtual void setUserObject (Ref *userObject)
 Returns a user assigned Object. More...
 
local setUserObject ( local userObject)
 Returns a user assigned Object. More...
 
GLProgramgetGLProgram () const
 Return the GLProgram (shader) currently used for this node. More...
 
var getGLProgram ()
 Return the GLProgram (shader) currently used for this node. More...
 
local getGLProgram ()
 Return the GLProgram (shader) currently used for this node. More...
 
GLProgramgetShaderProgram () const
var getShaderProgram ()
local getShaderProgram ()
GLProgramStategetGLProgramState () const
var getGLProgramState ()
local getGLProgramState ()
virtual void setGLProgramState (GLProgramState *glProgramState)
virtual void setGLProgram (GLProgram *glprogram)
 Sets the shader program for this node. More...
 
var setGLProgram ( var glprogram)
 Sets the shader program for this node. More...
 
local setGLProgram ( local glprogram)
 Sets the shader program for this node. More...
 
void setShaderProgram (GLProgram *glprogram)
var setShaderProgram ( var glprogram)
local setShaderProgram ( local glprogram)
virtual void onEnter ()
 Event callback that is invoked every time when Node enters the 'stage'. More...
 
virtual void onEnterTransitionDidFinish ()
 Event callback that is invoked when the Node enters in the 'stage'. More...
 
virtual void onExit ()
 Event callback that is invoked every time the Node leaves the 'stage'. More...
 
virtual void onExitTransitionDidStart ()
 Event callback that is called every time the Node leaves the 'stage'. More...
 
virtual void setActionManager (ActionManager *actionManager)
 Sets the ActionManager object that is used by all actions. More...
 
local setActionManager ( local actionManager)
 Sets the ActionManager object that is used by all actions. More...
 
virtual ActionManagergetActionManager ()
 Gets the ActionManager object that is used by all actions. More...
 
local getActionManager ()
 Gets the ActionManager object that is used by all actions. More...
 
virtual const ActionManagergetActionManager () const
local getActionManager ()
ActionrunAction (Action *action)
 Executes an action, and returns the action that is executed. More...
 
void stopAllActions ()
 Stops and removes all actions from the running action list . More...
 
var stopAllActions ()
 Stops and removes all actions from the running action list . More...
 
local stopAllActions ()
 Stops and removes all actions from the running action list . More...
 
void stopAction (Action *action)
 Stops and removes an action from the running action list. More...
 
var stopAction ( var action)
 Stops and removes an action from the running action list. More...
 
local stopAction ( local action)
 Stops and removes an action from the running action list. More...
 
void stopActionByTag (int tag)
 Removes an action from the running action list by its tag. More...
 
void stopAllActionsByTag (int tag)
 Removes all actions from the running action list by its tag. More...
 
var stopAllActionsByTag ( var tag)
 Removes all actions from the running action list by its tag. More...
 
local stopAllActionsByTag ( local tag)
 Removes all actions from the running action list by its tag. More...
 
ActiongetActionByTag (int tag)
 Gets an action from the running action list by its tag. More...
 
ssize_t getNumberOfRunningActions () const
 Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays). More...
 
local getNumberOfRunningActions ()
 Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays). More...
 
ssize_t numberOfRunningActions () const
var numberOfRunningActions ()
local numberOfRunningActions ()
virtual void setScheduler (Scheduler *scheduler)
 Sets a Scheduler object that is used to schedule all "updates" and timers. More...
 
virtual SchedulergetScheduler ()
 Gets a Sheduler object. More...
 
local getScheduler ()
 Gets a Sheduler object. More...
 
virtual const SchedulergetScheduler () const
local getScheduler ()
bool isScheduled (SEL_SCHEDULE selector)
 Checks whether a selector is scheduled. More...
 
bool isScheduled (const std::string &key)
 Checks whether a lambda function is scheduled. More...
 
void scheduleUpdate (void)
 Schedules the "update" method. More...
 
void scheduleUpdateWithPriority (int priority)
 Schedules the "update" method with a custom priority. More...
 
void unscheduleUpdate (void)
var unscheduleUpdate ()
local unscheduleUpdate ()
void schedule (SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay)
 Schedules a custom selector. More...
 
void schedule (SEL_SCHEDULE selector, float interval)
 Schedules a custom selector with an interval time in seconds. More...
 
void scheduleOnce (SEL_SCHEDULE selector, float delay)
 Schedules a selector that runs only once, with a delay of 0 or larger. More...
 
void scheduleOnce (const std::function< void(float)> &callback, float delay, const std::string &key)
 Schedules a lambda function that runs only once, with a delay of 0 or larger. More...
 
void schedule (SEL_SCHEDULE selector)
 Schedules a custom selector, the scheduled selector will be ticked every frame. More...
 
void schedule (const std::function< void(float)> &callback, const std::string &key)
 Schedules a lambda function. More...
 
var schedule ( var callback, var key)
 Schedules a lambda function. More...
 
void schedule (const std::function< void(float)> &callback, float interval, const std::string &key)
 Schedules a lambda function. More...
 
void schedule (const std::function< void(float)> &callback, float interval, unsigned int repeat, float delay, const std::string &key)
 Schedules a lambda function. More...
 
void unschedule (SEL_SCHEDULE selector)
 Unschedules a custom selector. More...
 
void unschedule (const std::string &key)
 Unschedules a lambda function. More...
 
void unscheduleAllCallbacks ()
 Unschedule all scheduled selectors and lambda functions: custom selectors, and the 'update' selector and lambda functions Actions are not affected by this method. More...
 
void unscheduleAllSelectors ()
var unscheduleAllSelectors ()
local unscheduleAllSelectors ()
virtual void resume (void)
 Resumes all scheduled selectors, actions and event listeners. More...
 
var resume ()
 Resumes all scheduled selectors, actions and event listeners. More...
 
local resume ()
 Resumes all scheduled selectors, actions and event listeners. More...
 
virtual void pause (void)
 Pauses all scheduled selectors, actions and event listeners. More...
 
var pause ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
local pause ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
void resumeSchedulerAndActions ()
 Resumes all scheduled selectors, actions and event listeners. More...
 
void pauseSchedulerAndActions ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
virtual void update (float delta)
var update ( var delta)
local update ( local delta)
virtual void updateTransform ()
 Calls children's updateTransform() method recursively. More...
 
var updateTransform ()
 Calls children's updateTransform() method recursively. More...
 
local updateTransform ()
 Calls children's updateTransform() method recursively. More...
 
virtual const Mat4getNodeToParentTransform () const
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
local getNodeToParentTransform ()
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
virtual AffineTransform getNodeToParentAffineTransform () const
local getNodeToParentAffineTransform ()
virtual void setNodeToParentTransform (const Mat4 &transform)
 Sets the Transformation matrix manually. More...
 
local setNodeToParentTransform ( local transform)
 Sets the Transformation matrix manually. More...
 
virtual AffineTransform nodeToParentTransform () const
local nodeToParentTransform ()
virtual const Mat4getParentToNodeTransform () const
 Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates. More...
 
virtual AffineTransform getParentToNodeAffineTransform () const
local getParentToNodeAffineTransform ()
virtual AffineTransform parentToNodeTransform () const
local parentToNodeTransform ()
virtual Mat4 getNodeToWorldTransform () const
 Returns the world affine transform matrix. More...
 
var getNodeToWorldTransform ()
 Returns the world affine transform matrix. More...
 
local getNodeToWorldTransform ()
 Returns the world affine transform matrix. More...
 
virtual AffineTransform getNodeToWorldAffineTransform () const
local getNodeToWorldAffineTransform ()
virtual AffineTransform nodeToWorldTransform () const
local nodeToWorldTransform ()
virtual Mat4 getWorldToNodeTransform () const
 Returns the inverse world affine transform matrix. More...
 
var getWorldToNodeTransform ()
 Returns the inverse world affine transform matrix. More...
 
local getWorldToNodeTransform ()
 Returns the inverse world affine transform matrix. More...
 
virtual AffineTransform getWorldToNodeAffineTransform () const
local getWorldToNodeAffineTransform ()
virtual AffineTransform worldToNodeTransform () const
local worldToNodeTransform ()
Vec2 convertToNodeSpace (const Vec2 &worldPoint) const
 Converts a Vec2 to node (local) space coordinates. More...
 
var convertToNodeSpace ( var worldPoint)
 Converts a Vec2 to node (local) space coordinates. More...
 
local convertToNodeSpace ( local worldPoint)
 Converts a Vec2 to node (local) space coordinates. More...
 
Vec2 convertToWorldSpace (const Vec2 &nodePoint) const
 Converts a Vec2 to world space coordinates. More...
 
var convertToWorldSpace ( var nodePoint)
 Converts a Vec2 to world space coordinates. More...
 
local convertToWorldSpace ( local nodePoint)
 Converts a Vec2 to world space coordinates. More...
 
Vec2 convertToNodeSpaceAR (const Vec2 &worldPoint) const
 Converts a Vec2 to node (local) space coordinates. More...
 
Vec2 convertToWorldSpaceAR (const Vec2 &nodePoint) const
 Converts a local Vec2 to world space coordinates.The result is in Points. More...
 
Vec2 convertTouchToNodeSpace (Touch *touch) const
 convenience methods which take a Touch instead of Vec2 More...
 
Vec2 convertTouchToNodeSpaceAR (Touch *touch) const
 converts a Touch (world coordinates) into a local coordinate. More...
 
var convertTouchToNodeSpaceAR ( var touch)
 converts a Touch (world coordinates) into a local coordinate. More...
 
local convertTouchToNodeSpaceAR ( local touch)
 converts a Touch (world coordinates) into a local coordinate. More...
 
void setAdditionalTransform (Mat4 *additionalTransform)
 Sets an additional transform matrix to the node. More...
 
var setAdditionalTransform ( var additionalTransform)
 Sets an additional transform matrix to the node. More...
 
local setAdditionalTransform ( local additionalTransform)
 Sets an additional transform matrix to the node. More...
 
void setAdditionalTransform (const AffineTransform &additionalTransform)
var setAdditionalTransform ( var additionalTransform)
local setAdditionalTransform ( local additionalTransform)
ComponentgetComponent (const std::string &name)
 gets a component by its name More...
 
local getComponent ( local name)
 gets a component by its name More...
 
virtual bool addComponent (Component *component)
 adds a component More...
 
local addComponent ( local component)
 adds a component More...
 
virtual bool removeComponent (const std::string &name)
 removes a component by its name More...
 
local removeComponent ( local name)
 removes a component by its name More...
 
virtual bool removeComponent (Component *component)
 removes a component by its pointer More...
 
var removeComponent ( var component)
 removes a component by its pointer More...
 
local removeComponent ( local component)
 removes a component by its pointer More...
 
virtual void removeAllComponents ()
 removes all components More...
 
var removeAllComponents ()
 removes all components More...
 
local removeAllComponents ()
 removes all components More...
 
- Public Member Functions inherited from Ref
void retain ()
 Retains the ownership. More...
 
void release ()
 Releases the ownership immediately. More...
 
Refautorelease ()
 Releases the ownership sometime soon automatically. More...
 
unsigned int getReferenceCount () const
 Returns the Ref's current reference count. More...
 
local getReferenceCount ()
 Returns the Ref's current reference count. More...
 
virtual ~Ref ()
- Public Member Functions inherited from TextureProtocol
virtual ~TextureProtocol ()
- Public Member Functions inherited from BlendProtocol
virtual ~BlendProtocol ()

Static Public Member Functions

static SpriteBatchNodecreateWithTexture (Texture2D *tex, ssize_t capacity=DEFAULT_CAPACITY)
 creates a SpriteBatchNode with a texture2d and capacity of children. More...
 
var createWithTexture ( var tex, var DEFAULT_CAPACITY)
 creates a SpriteBatchNode with a texture2d and capacity of children. More...
 
local createWithTexture ( local tex, local DEFAULT_CAPACITY)
 creates a SpriteBatchNode with a texture2d and capacity of children. More...
 
static SpriteBatchNodecreate (const std::string &fileImage, ssize_t capacity=DEFAULT_CAPACITY)
 creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children. More...
 
- Static Public Member Functions inherited from Node
static Nodecreate ()
 Allocates and initializes a node. More...
 

Public Attributes

CC_CONSTRUCTOR_ACCESS __pad0__: SpriteBatchNode()
- Public Attributes inherited from Node
CC_CONSTRUCTOR_ACCESS __pad0__: Node()

Protected Member Functions

void updateQuadFromSprite (Sprite *sprite, ssize_t index)
 Updates a quad at a certain index into the texture atlas. More...
 
var updateQuadFromSprite ( var sprite, var index)
 Updates a quad at a certain index into the texture atlas. More...
 
local updateQuadFromSprite ( local sprite, local index)
 Updates a quad at a certain index into the texture atlas. More...
 
void updateAtlasIndex (Sprite *sprite, ssize_t *curIndex)
local updateAtlasIndex ( local sprite, local curIndex)
void swap (ssize_t oldIndex, ssize_t newIndex)
var swap ( var oldIndex, var newIndex)
local swap ( local oldIndex, local newIndex)
void updateBlendFunc ()
var updateBlendFunc ()
local updateBlendFunc ()
- Protected Member Functions inherited from Node
void childrenAlloc (void)
 lazy allocs More...
 
var childrenAlloc ()
 lazy allocs More...
 
local childrenAlloc ()
 lazy allocs More...
 
void insertChild (Node *child, int z)
 helper that reorder a child More...
 
var insertChild ( var child, var z)
 helper that reorder a child More...
 
local insertChild ( local child, local z)
 helper that reorder a child More...
 
void detachChild (Node *child, ssize_t index, bool doCleanup)
 Removes a child, call child->onExit(), do cleanup, remove it from children array. More...
 
Vec2 convertToWindowSpace (const Vec2 &nodePoint) const
 Convert cocos2d coordinates to UI windows coordinate. More...
 
Mat4 transform (const Mat4 &parentTransform)
var transform ( var parentTransform)
local transform ( local parentTransform)
uint32_t processParentFlags (const Mat4 &parentTransform, uint32_t parentFlags)
var processParentFlags ( var parentTransform, var parentFlags)
local processParentFlags ( local parentTransform, local parentFlags)
virtual void updateCascadeOpacity ()
var updateCascadeOpacity ()
local updateCascadeOpacity ()
virtual void disableCascadeOpacity ()
local disableCascadeOpacity ()
virtual void updateCascadeColor ()
local updateCascadeColor ()
virtual void disableCascadeColor ()
var disableCascadeColor ()
local disableCascadeColor ()
virtual void updateColor ()
var updateColor ()
local updateColor ()
bool doEnumerate (std::string name, std::function< bool(Node *)> callback) const
var doEnumerate ( var name, var callback)
local doEnumerate ( local name, local callback)
bool doEnumerateRecursive (const Node *node, const std::string &name, std::function< bool(Node *)> callback) const
var doEnumerateRecursive ( var node, var name, var callback)
local doEnumerateRecursive ( local node, local name, local callback)
bool isVisitableByVisitingCamera () const
var isVisitableByVisitingCamera ()
local isVisitableByVisitingCamera ()
void updatePhysicsBodyTransform (Scene *layer)
var updatePhysicsBodyTransform ( var layer)
local updatePhysicsBodyTransform ( local layer)
virtual void updatePhysicsBodyPosition (Scene *layer)
local updatePhysicsBodyPosition ( local layer)
virtual void updatePhysicsBodyRotation (Scene *layer)
var updatePhysicsBodyRotation ( var layer)
local updatePhysicsBodyRotation ( local layer)
virtual void updatePhysicsBodyScale (Scene *scene)
var updatePhysicsBodyScale ( var scene)
local updatePhysicsBodyScale ( local scene)
- Protected Member Functions inherited from Ref
 Ref ()
 Constructor. More...
 
 Ref ()
 Constructor. More...
 

Protected Attributes

TextureAtlas_textureAtlas
BlendFunc _blendFunc
local _blendFunc
BatchCommand _batchCommand
local _batchCommand
std::vector< Sprite * > _descendants
var _descendants
local _descendants
- Protected Attributes inherited from Node
float _rotationX
 rotation on the X-axis More...
 
local _rotationX
 rotation on the X-axis More...
 
float _rotationY
 rotation on the Y-axis More...
 
var _rotationY
 rotation on the Y-axis More...
 
local _rotationY
 rotation on the Y-axis More...
 
float _rotationZ_X
 rotation angle on Z-axis, component X More...
 
var _rotationZ_X
 rotation angle on Z-axis, component X More...
 
local _rotationZ_X
 rotation angle on Z-axis, component X More...
 
float _rotationZ_Y
 rotation angle on Z-axis, component Y More...
 
var _rotationZ_Y
 rotation angle on Z-axis, component Y More...
 
local _rotationZ_Y
 rotation angle on Z-axis, component Y More...
 
float _scaleX
 scaling factor on x-axis More...
 
var _scaleX
 scaling factor on x-axis More...
 
local _scaleX
 scaling factor on x-axis More...
 
float _scaleY
 scaling factor on y-axis More...
 
var _scaleY
 scaling factor on y-axis More...
 
local _scaleY
 scaling factor on y-axis More...
 
float _scaleZ
 scaling factor on z-axis More...
 
var _scaleZ
 scaling factor on z-axis More...
 
local _scaleZ
 scaling factor on z-axis More...
 
Vec2 _position
 position of the node More...
 
var _position
 position of the node More...
 
local _position
 position of the node More...
 
float _positionZ
 OpenGL real Z position. More...
 
var _positionZ
 OpenGL real Z position. More...
 
local _positionZ
 OpenGL real Z position. More...
 
Vec2 _normalizedPosition
var _normalizedPosition
local _normalizedPosition
bool _usingNormalizedPosition
var _usingNormalizedPosition
local _usingNormalizedPosition
bool _normalizedPositionDirty
var _normalizedPositionDirty
local _normalizedPositionDirty
float _skewX
 skew angle on x-axis More...
 
var _skewX
 skew angle on x-axis More...
 
local _skewX
 skew angle on x-axis More...
 
float _skewY
 skew angle on y-axis More...
 
var _skewY
 skew angle on y-axis More...
 
local _skewY
 skew angle on y-axis More...
 
Vec2 _anchorPointInPoints
 anchor point in points More...
 
var _anchorPointInPoints
 anchor point in points More...
 
local _anchorPointInPoints
 anchor point in points More...
 
Vec2 _anchorPoint
 anchor point normalized (NOT in points) More...
 
var _anchorPoint
 anchor point normalized (NOT in points) More...
 
local _anchorPoint
 anchor point normalized (NOT in points) More...
 
Size _contentSize
 untransformed size of the node More...
 
var _contentSize
 untransformed size of the node More...
 
local _contentSize
 untransformed size of the node More...
 
bool _contentSizeDirty
 whether or not the contentSize is dirty More...
 
var _contentSizeDirty
 whether or not the contentSize is dirty More...
 
local _contentSizeDirty
 whether or not the contentSize is dirty More...
 
Mat4 _modelViewTransform
 ModelView transform of the Node. More...
 
var _modelViewTransform
 ModelView transform of the Node. More...
 
local _modelViewTransform
 ModelView transform of the Node. More...
 
Mat4 _transform
 transform More...
 
var _transform
 transform More...
 
local _transform
 transform More...
 
bool _transformDirty
 transform dirty flag More...
 
var _transformDirty
 transform dirty flag More...
 
local _transformDirty
 transform dirty flag More...
 
Mat4 _inverse
 inverse transform More...
 
var _inverse
 inverse transform More...
 
local _inverse
 inverse transform More...
 
bool _inverseDirty
 inverse transform dirty flag More...
 
var _inverseDirty
 inverse transform dirty flag More...
 
local _inverseDirty
 inverse transform dirty flag More...
 
Mat4 _additionalTransform
 transform More...
 
var _additionalTransform
 transform More...
 
local _additionalTransform
 transform More...
 
bool _useAdditionalTransform
 The flag to check whether the additional transform is dirty. More...
 
var _useAdditionalTransform
 The flag to check whether the additional transform is dirty. More...
 
local _useAdditionalTransform
 The flag to check whether the additional transform is dirty. More...
 
bool _transformUpdated
 Whether or not the Transform object was updated since the last frame. More...
 
var _transformUpdated
 Whether or not the Transform object was updated since the last frame. More...
 
local _transformUpdated
 Whether or not the Transform object was updated since the last frame. More...
 
int _localZOrder
 Local order (relative to its siblings) used to sort the node. More...
 
var _localZOrder
 Local order (relative to its siblings) used to sort the node. More...
 
local _localZOrder
 Local order (relative to its siblings) used to sort the node. More...
 
float _globalZOrder
 Global order used to sort the node. More...
 
var _globalZOrder
 Global order used to sort the node. More...
 
local _globalZOrder
 Global order used to sort the node. More...
 
Vector< Node * > _children
 array of children nodes More...
 
var _children
 array of children nodes More...
 
local _children
 array of children nodes More...
 
Node_parent
 weak reference to parent node More...
 
var _parent
 weak reference to parent node More...
 
local _parent
 weak reference to parent node More...
 
int _tag
 a tag. Can be any number you assigned just to identify this node More...
 
var _tag
 a tag. Can be any number you assigned just to identify this node More...
 
local _tag
 a tag. Can be any number you assigned just to identify this node More...
 
std::string _name
 a string label, an user defined string to identify this node More...
 
var _name
 a string label, an user defined string to identify this node More...
 
local _name
 a string label, an user defined string to identify this node More...
 
size_t _hashOfName
 hash value of _name, used for speed in getChildByName More...
 
var _hashOfName
 hash value of _name, used for speed in getChildByName More...
 
local _hashOfName
 hash value of _name, used for speed in getChildByName More...
 
void * _userData
 A user assingned void pointer, Can be point to any cpp object. More...
 
var _userData
 A user assingned void pointer, Can be point to any cpp object. More...
 
local _userData
 A user assingned void pointer, Can be point to any cpp object. More...
 
Ref_userObject
 A user assigned Object. More...
 
var _userObject
 A user assigned Object. More...
 
local _userObject
 A user assigned Object. More...
 
GLProgramState_glProgramState
 OpenGL Program State. More...
 
var _glProgramState
 OpenGL Program State. More...
 
local _glProgramState
 OpenGL Program State. More...
 
int _orderOfArrival
 used to preserve sequence while sorting children with the same localZOrder More...
 
Scheduler_scheduler
 scheduler used to schedule timers and updates More...
 
var _scheduler
 scheduler used to schedule timers and updates More...
 
local _scheduler
 scheduler used to schedule timers and updates More...
 
ActionManager_actionManager
 a pointer to ActionManager singleton, which is used to handle all the actions More...
 
EventDispatcher_eventDispatcher
 event dispatcher used to dispatch all kinds of events More...
 
var _eventDispatcher
 event dispatcher used to dispatch all kinds of events More...
 
local _eventDispatcher
 event dispatcher used to dispatch all kinds of events More...
 
bool _running
 is running More...
 
var _running
 is running More...
 
local _running
 is running More...
 
bool _visible
 is this node visible More...
 
var _visible
 is this node visible More...
 
local _visible
 is this node visible More...
 
bool _ignoreAnchorPointForPosition
 true if the Anchor Vec2 will be (0,0) when you position the Node, false otherwise. More...
 
var _ignoreAnchorPointForPosition
 true if the Anchor Vec2 will be (0,0) when you position the Node, false otherwise. More...
 
local _ignoreAnchorPointForPosition
 true if the Anchor Vec2 will be (0,0) when you position the Node, false otherwise. More...
 
bool _reorderChildDirty
 children order dirty flag More...
 
var _reorderChildDirty
 children order dirty flag More...
 
local _reorderChildDirty
 children order dirty flag More...
 
bool _isTransitionFinished
 flag to indicate whether the transition was finished More...
 
var _isTransitionFinished
 flag to indicate whether the transition was finished More...
 
local _isTransitionFinished
 flag to indicate whether the transition was finished More...
 
ComponentContainer_componentContainer
 Dictionary of components. More...
 
var _componentContainer
 Dictionary of components. More...
 
local _componentContainer
 Dictionary of components. More...
 
PhysicsBody_physicsBody
 the physicsBody the node have More...
 
var _physicsBody
 the physicsBody the node have More...
 
local _physicsBody
 the physicsBody the node have More...
 
float _physicsScaleStartX
 the scale x value when setPhysicsBody More...
 
var _physicsScaleStartX
 the scale x value when setPhysicsBody More...
 
local _physicsScaleStartX
 the scale x value when setPhysicsBody More...
 
float _physicsScaleStartY
 the scale y value when setPhysicsBody More...
 
var _physicsScaleStartY
 the scale y value when setPhysicsBody More...
 
local _physicsScaleStartY
 the scale y value when setPhysicsBody More...
 
GLubyte _displayedOpacity
GLubyte _realOpacity
var _realOpacity
local _realOpacity
Color3B _displayedColor
var _displayedColor
local _displayedColor
Color3B _realColor
var _realColor
local _realColor
bool _cascadeColorEnabled
var _cascadeColorEnabled
local _cascadeColorEnabled
bool _cascadeOpacityEnabled
var _cascadeOpacityEnabled
local _cascadeOpacityEnabled
unsigned short _cameraMask
var _cameraMask
local _cameraMask
std::function< void()> _onEnterCallback
var _onEnterCallback
local _onEnterCallback
std::function< void()> _onExitCallback
var _onExitCallback
local _onExitCallback
std::function< void()> _onEnterTransitionDidFinishCallback
var _onEnterTransitionDidFinishCallback
local _onEnterTransitionDidFinishCallback
std::function< void()> _onExitTransitionDidStartCallback
- Protected Attributes inherited from Ref
unsigned int _referenceCount
 count of references More...
 
local _referenceCount
 count of references More...
 

Additional Inherited Members

- Public Types inherited from Node
enum  { FLAGS_TRANSFORM_DIRTY = (1 << 0), FLAGS_CONTENT_SIZE_DIRTY = (1 << 1), FLAGS_DIRTY_MASK = (FLAGS_TRANSFORM_DIRTY | FLAGS_CONTENT_SIZE_DIRTY) }
 
- Static Public Attributes inherited from Node
static const int INVALID_TAG = -1
 Default tag used for all the nodes. More...
 
var INVALID_TAG = -1
 Default tag used for all the nodes. More...
 
local INVALID_TAG = -1
 Default tag used for all the nodes. More...
 
- Static Protected Attributes inherited from Node
static int s_globalOrderOfArrival
var s_globalOrderOfArrival
local s_globalOrderOfArrival

Detailed Description

SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call (often known as "batch draw").

A SpriteBatchNode can reference one and only one texture (one image file, one texture atlas). Only the Sprites that are contained in that texture can be added to the SpriteBatchNode. All Sprites added to a SpriteBatchNode are drawn in one OpenGL ES draw call. If the Sprites are not added to a SpriteBatchNode then an OpenGL ES draw call will be needed for each one, which is less efficient.

Limitations:

  • The only object that is accepted as child (or grandchild, grand-grandchild, etc...) is Sprite or any subclass of Sprite. eg: particles, labels and layer can't be added to a SpriteBatchNode.
  • Either all its children are Aliased or Antialiased. It can't be a mix. This is because "alias" is a property of the texture, and all the sprites share the same texture.
Since
v0.7.1

Constructor & Destructor Documentation

virtual ~SpriteBatchNode ( )
virtual

Member Function Documentation

virtual void addChild ( Node child,
int  localZOrder,
int  tag 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
tagAn integer to identify the node easily. Please refer to setTag(int)

Please use addChild(Node* child, int localZOrder, const std::string &name) instead.

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

var addChild ( var  child,
var  localZOrder,
var  tag 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
tagAn integer to identify the node easily. Please refer to setTag(int)

Please use addChild(Node* child, int localZOrder, const std::string &name) instead.

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

local addChild ( local  child,
local  localZOrder,
local  tag 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
tagAn integer to identify the node easily. Please refer to setTag(int)

Please use addChild(Node* child, int localZOrder, const std::string &name) instead.

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

virtual void addChild ( Node child,
int  localZOrder,
const std::string &  name 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
nameA string to identify the node easily. Please refer to setName(int)

Reimplemented from Node.

var addChild ( var  child,
var  localZOrder,
var  name 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
nameA string to identify the node easily. Please refer to setName(int)

Reimplemented from Node.

local addChild ( local  child,
local  localZOrder,
local  name 
)
overridevirtual

Adds a child to the container with z order and tag.

If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately.

Parameters
childA child node
zOrderZ order for drawing priority. Please refer to setLocalZOrder(int)
nameA string to identify the node easily. Please refer to setName(int)

Reimplemented from Node.

SpriteBatchNode*
addSpriteWithoutQuad
( Sprite child,
int  z,
int  aTag 
)
var addSpriteWithoutQuad ( var  child,
var  z,
var  aTag 
)
local addSpriteWithoutQuad ( local  child,
local  z,
local  aTag 
)
void appendChild ( Sprite sprite)
var appendChild ( var  sprite)
local appendChild ( local  sprite)
ssize_t atlasIndexForChild ( Sprite sprite,
int  z 
)
var atlasIndexForChild ( var  sprite,
var  z 
)
local atlasIndexForChild ( local  sprite,
local  z 
)
static SpriteBatchNode* create ( const std::string &  fileImage,
ssize_t  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

var create ( var  fileImage,
var  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

local create ( local  fileImage,
local  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

static SpriteBatchNode*
createWithTexture
( Texture2D tex,
ssize_t  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

var createWithTexture ( var  tex,
var  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

local createWithTexture ( local  tex,
local  capacity = DEFAULT_CAPACITY 
)
static

creates a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

virtual void draw ( Renderer renderer,
const Mat4 transform,
uint32_t  flags 
)
overridevirtual

Override this method to draw your own node.

The following GL states will be enabled by default:

  • glEnableClientState(GL_VERTEX_ARRAY);
  • glEnableClientState(GL_COLOR_ARRAY);
  • glEnableClientState(GL_TEXTURE_COORD_ARRAY);
  • glEnable(GL_TEXTURE_2D); AND YOU SHOULD NOT DISABLE THEM AFTER DRAWING YOUR NODE But if you enable any other GL state, you should disable it after drawing your node.

Reimplemented from Node.

Reimplemented in Label.

var draw ( var  renderer,
var  transform,
var  flags 
)
overridevirtual

Override this method to draw your own node.

The following GL states will be enabled by default:

  • glEnableClientState(GL_VERTEX_ARRAY);
  • glEnableClientState(GL_COLOR_ARRAY);
  • glEnableClientState(GL_TEXTURE_COORD_ARRAY);
  • glEnable(GL_TEXTURE_2D); AND YOU SHOULD NOT DISABLE THEM AFTER DRAWING YOUR NODE But if you enable any other GL state, you should disable it after drawing your node.

Reimplemented from Node.

Reimplemented in Label.

local draw ( local  renderer,
local  transform,
local  flags 
)
overridevirtual

Override this method to draw your own node.

The following GL states will be enabled by default:

  • glEnableClientState(GL_VERTEX_ARRAY);
  • glEnableClientState(GL_COLOR_ARRAY);
  • glEnableClientState(GL_TEXTURE_COORD_ARRAY);
  • glEnable(GL_TEXTURE_2D); AND YOU SHOULD NOT DISABLE THEM AFTER DRAWING YOUR NODE But if you enable any other GL state, you should disable it after drawing your node.

Reimplemented from Node.

Reimplemented in Label.

virtual const BlendFunc&
getBlendFunc
( ) const
overridevirtual

Returns the blending function that is currently being used.

Returns
A BlendFunc structure with source and destination factor which specified pixel arithmetic.

Implements BlendProtocol.

const std::vector<Sprite*>
& getDescendants
( ) const
inline

returns an array with the descendants (children, gran children, etc.).

This is specific to BatchNode. In order to use the children, use getChildren() instead

var getDescendants ( )
inline

returns an array with the descendants (children, gran children, etc.).

This is specific to BatchNode. In order to use the children, use getChildren() instead

local getDescendants ( )
inline

returns an array with the descendants (children, gran children, etc.).

This is specific to BatchNode. In order to use the children, use getChildren() instead

virtual std::string getDescription ( ) const
overridevirtual

Gets the description string.

It makes debugging easier.

Returns
A string

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

var getDescription ( )
overridevirtual

Gets the description string.

It makes debugging easier.

Returns
A string

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

local getDescription ( )
overridevirtual

Gets the description string.

It makes debugging easier.

Returns
A string

Reimplemented from Node.

Reimplemented in Label, and TMXLayer.

virtual Texture2D* getTexture ( ) const
overridevirtual

Returns the currently used texture.

Returns
The texture that is currenlty being used.

Implements TextureProtocol.

var getTexture ( )
overridevirtual

Returns the currently used texture.

Returns
The texture that is currenlty being used.

Implements TextureProtocol.

local getTexture ( )
overridevirtual

Returns the currently used texture.

Returns
The texture that is currenlty being used.

Implements TextureProtocol.

TextureAtlas* getTextureAtlas ( void  )
inline

returns the TextureAtlas object

var getTextureAtlas (   )
inline

returns the TextureAtlas object

local getTextureAtlas (   )
inline

returns the TextureAtlas object

ssize_t highestAtlasIndexInChild ( Sprite sprite)
var highestAtlasIndexInChild ( var  sprite)
local highestAtlasIndexInChild ( local  sprite)
void increaseAtlasCapacity ( )
var increaseAtlasCapacity ( )
local increaseAtlasCapacity ( )
bool init ( )
virtual

Reimplemented from Node.

var init ( )
virtual

Reimplemented from Node.

local init ( )
virtual

Reimplemented from Node.

bool initWithFile ( const std::string &  fileImage,
ssize_t  capacity 
)

initializes a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and a capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

var init ( var  fileImage,
var  capacity 
)

initializes a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and a capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

local init ( local  fileImage,
local  capacity 
)

initializes a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and a capacity of children.

The capacity will be increased in 33% in runtime if it run out of space. The file will be loaded using the TextureMgr.

bool initWithTexture ( Texture2D tex,
ssize_t  capacity 
)

initializes a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

var initWithTexture ( var  tex,
var  capacity 
)

initializes a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

local initWithTexture ( local  tex,
local  capacity 
)

initializes a SpriteBatchNode with a texture2d and capacity of children.

The capacity will be increased in 33% in runtime if it run out of space.

void insertQuadFromSprite ( Sprite sprite,
ssize_t  index 
)

Inserts a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

var insertQuadFromSprite ( var  sprite,
var  index 
)

Inserts a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

local insertQuadFromSprite ( local  sprite,
local  index 
)

Inserts a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

ssize_t lowestAtlasIndexInChild ( Sprite sprite)
var lowestAtlasIndexInChild ( var  sprite)
local lowestAtlasIndexInChild ( local  sprite)
ssize_t rebuildIndexInOrder ( Sprite parent,
ssize_t  index 
)
var rebuildIndexInOrder ( var  parent,
var  index 
)
local rebuildIndexInOrder ( local  parent,
local  index 
)
virtual void
removeAllChildrenWithCleanup
( bool  cleanup)
overridevirtual

Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter.

Parameters
cleanuptrue if all running actions on all children nodes should be cleanup, false oterwise.

Reimplemented from Node.

var removeAllChildrenWithCleanup ( var  cleanup)
overridevirtual

Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter.

Parameters
cleanuptrue if all running actions on all children nodes should be cleanup, false oterwise.

Reimplemented from Node.

local removeAllChildrenWithCleanup ( local  cleanup)
overridevirtual

Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter.

Parameters
cleanuptrue if all running actions on all children nodes should be cleanup, false oterwise.

Reimplemented from Node.

virtual void removeChild ( Node child,
bool  cleanup 
)
overridevirtual

Removes a child from the container.

It will also cleanup all running actions depending on the cleanup parameter.

Parameters
childThe child node which will be removed.
cleanuptrue if all running actions and callbacks on the child node will be cleanup, false otherwise.

Reimplemented from Node.

Reimplemented in TMXLayer.

var removeChild ( var  child,
var  cleanup 
)
overridevirtual

Removes a child from the container.

It will also cleanup all running actions depending on the cleanup parameter.

Parameters
childThe child node which will be removed.
cleanuptrue if all running actions and callbacks on the child node will be cleanup, false otherwise.

Reimplemented from Node.

Reimplemented in TMXLayer.

local removeChild ( local  child,
local  cleanup 
)
overridevirtual

Removes a child from the container.

It will also cleanup all running actions depending on the cleanup parameter.

Parameters
childThe child node which will be removed.
cleanuptrue if all running actions and callbacks on the child node will be cleanup, false otherwise.

Reimplemented from Node.

Reimplemented in TMXLayer.

void removeChildAtIndex ( ssize_t  index,
bool  doCleanup 
)

removes a child given a certain index.

It will also cleanup the running actions depending on the cleanup parameter.

Warning
Removing a child from a SpriteBatchNode is very slow
var removeChildAtIndex ( var  index,
var  doCleanup 
)

removes a child given a certain index.

It will also cleanup the running actions depending on the cleanup parameter.

Warning
Removing a child from a SpriteBatchNode is very slow
local removeChildAtIndex ( local  index,
local  doCleanup 
)

removes a child given a certain index.

It will also cleanup the running actions depending on the cleanup parameter.

Warning
Removing a child from a SpriteBatchNode is very slow
void removeSpriteFromAtlas ( Sprite sprite)
var removeSpriteFromAtlas ( var  sprite)
local removeSpriteFromAtlas ( local  sprite)
void reorderBatch ( bool  reorder)
var reorderBatch ( var  reorder)
local reorderBatch ( local  reorder)
virtual void reorderChild ( Node child,
int  localZOrder 
)
overridevirtual

Reorders a child according to a new z value.

Parameters
childAn already added child node. It MUST be already added.
localZOrderZ order for drawing priority. Please refer to setLocalZOrder(int)

Reimplemented from Node.

var reorderChild ( var  child,
var  localZOrder 
)
overridevirtual

Reorders a child according to a new z value.

Parameters
childAn already added child node. It MUST be already added.
localZOrderZ order for drawing priority. Please refer to setLocalZOrder(int)

Reimplemented from Node.

local reorderChild ( local  child,
local  localZOrder 
)
overridevirtual

Reorders a child according to a new z value.

Parameters
childAn already added child node. It MUST be already added.
localZOrderZ order for drawing priority. Please refer to setLocalZOrder(int)

Reimplemented from Node.

virtual void setBlendFunc ( const BlendFunc blendFunc)
overridevirtual
*When this function bound into js or lua,the parameter will be changed
*In js: var setBlendFunc(var src, var dst)

Implements BlendProtocol.

Reimplemented in Label.

var setBlendFunc ( var  blendFunc)
overridevirtual
*When this function bound into js or lua,the parameter will be changed
*In js: var setBlendFunc(var src, var dst)

Implements BlendProtocol.

Reimplemented in Label.

virtual void setTexture ( Texture2D texture)
overridevirtual

Sets a new texuture.

It will be retained.

Parameters
textureA valid Texture2D object, which will be applied to this sprite object.

Implements TextureProtocol.

var setTexture ( var  texture)
overridevirtual

Sets a new texuture.

It will be retained.

Parameters
textureA valid Texture2D object, which will be applied to this sprite object.

Implements TextureProtocol.

local setTexture ( local  texture)
overridevirtual

Sets a new texuture.

It will be retained.

Parameters
textureA valid Texture2D object, which will be applied to this sprite object.

Implements TextureProtocol.

void setTextureAtlas ( TextureAtlas textureAtlas)
inline

sets the TextureAtlas object

var setTextureAtlas ( var  textureAtlas)
inline

sets the TextureAtlas object

local setTextureAtlas ( local  textureAtlas)
inline

sets the TextureAtlas object

virtual void sortAllChildren ( )
overridevirtual

Sorts the children array once before drawing, instead of every time when a child is added or reordered.

This appraoch can improves the performance massively.

Note
Don't call this manually unless a child added needs to be removed in the same frame

Reimplemented from Node.

Reimplemented in Label.

var sortAllChildren ( )
overridevirtual

Sorts the children array once before drawing, instead of every time when a child is added or reordered.

This appraoch can improves the performance massively.

Note
Don't call this manually unless a child added needs to be removed in the same frame

Reimplemented from Node.

Reimplemented in Label.

local sortAllChildren ( )
overridevirtual

Sorts the children array once before drawing, instead of every time when a child is added or reordered.

This appraoch can improves the performance massively.

Note
Don't call this manually unless a child added needs to be removed in the same frame

Reimplemented from Node.

Reimplemented in Label.

void swap ( ssize_t  oldIndex,
ssize_t  newIndex 
)
protected
var swap ( var  oldIndex,
var  newIndex 
)
protected
local swap ( local  oldIndex,
local  newIndex 
)
protected
void updateAtlasIndex ( Sprite sprite,
ssize_t curIndex 
)
protected
var updateAtlasIndex ( var  sprite,
var  curIndex 
)
protected
local updateAtlasIndex ( local  sprite,
local  curIndex 
)
protected
void updateBlendFunc ( )
protected
var updateBlendFunc ( )
protected
local updateBlendFunc ( )
protected
void updateQuadFromSprite ( Sprite sprite,
ssize_t  index 
)
protected

Updates a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

var updateQuadFromSprite ( var  sprite,
var  index 
)
protected

Updates a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

local updateQuadFromSprite ( local  sprite,
local  index 
)
protected

Updates a quad at a certain index into the texture atlas.

The Sprite won't be added into the children array. This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont)

virtual void visit ( Renderer renderer,
const Mat4 parentTransform,
uint32_t  parentFlags 
)
overridevirtual

Visits this node's children and draw them recursively.

Reimplemented from Node.

Reimplemented in Label, and TextFieldTTF.

var visit ( var  renderer,
var  parentTransform,
var  parentFlags 
)
overridevirtual

Visits this node's children and draw them recursively.

Reimplemented from Node.

Reimplemented in Label, and TextFieldTTF.

local visit ( local  renderer,
local  parentTransform,
local  parentFlags 
)
overridevirtual

Visits this node's children and draw them recursively.

Reimplemented from Node.

Reimplemented in Label, and TextFieldTTF.

Member Data Documentation

var __pad0__
local __pad0__
BatchCommand _batchCommand
protected
var _batchCommand
protected
local _batchCommand
protected
BlendFunc _blendFunc
protected
var _blendFunc
protected
local _blendFunc
protected
std::vector<Sprite*> _descendants
protected
var _descendants
protected
local _descendants
protected
TextureAtlas* _textureAtlas
protected
var _textureAtlas
protected
local _textureAtlas
protected

The documentation for this class was generated from the following file: