Cocos2d-x  v3.17
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator 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...

Inherits Node, and TextureProtocol.

Inherited by TMXLayer.

Public Member Functions

TextureAtlasgetTextureAtlas ()
 Returns the TextureAtlas object. More...
 
var getTextureAtlas ()
 Returns the TextureAtlas object. More...
 
local getTextureAtlas ()
 Returns the TextureAtlas object. More...
 
void setTextureAtlas (TextureAtlas *textureAtlas)
 Sets the TextureAtlas object. More...
 
var setTextureAtlas ( var 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...
 
void increaseAtlasCapacity ()
 Increase the Atlas Capacity. More...
 
void removeChildAtIndex (ssize_t index, bool doCleanup)
 Removes a child given a certain index. More...
 
void appendChild (Sprite *sprite)
 Append the child. More...
 
void removeSpriteFromAtlas (Sprite *sprite)
 Remove a sprite from Atlas. More...
 
local removeSpriteFromAtlas ( local sprite)
 Remove a sprite from Atlas. More...
 
ssize_t rebuildIndexInOrder (Sprite *parent, ssize_t index)
 Rebuild index with a sprite all child. More...
 
var rebuildIndexInOrder ( var parent, var index)
 Rebuild index with a sprite all child. More...
 
local rebuildIndexInOrder ( local parent, local index)
 Rebuild index with a sprite all child. More...
 
ssize_t highestAtlasIndexInChild (Sprite *sprite)
 Get the Max image block index,in all child. More...
 
var highestAtlasIndexInChild ( var sprite)
 Get the Max image block index,in all child. More...
 
local highestAtlasIndexInChild ( local sprite)
 Get the Max image block index,in all child. More...
 
ssize_t lowestAtlasIndexInChild (Sprite *sprite)
 Get the Min image block index,in all child. More...
 
local lowestAtlasIndexInChild ( local sprite)
 Get the Min image block index,in all child. More...
 
ssize_t atlasIndexForChild (Sprite *sprite, int z)
 Get the nearest index from the sprite in z. More...
 
virtual void setBlendFunc (const BlendFunc &blendFunc) override
virtual void visit (Renderer *renderer, const Mat4 &parentTransform, uint32_t parentFlags) override
 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...
 
local addChild ( local child, local zOrder, local tag)
 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...
 
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...
 
var reorderChild ( var child, var zOrder)
 Reorders a child according to a new z value. More...
 
local reorderChild ( local child, local zOrder)
 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...
 
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...
 
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...
 
virtual std::string getDescription () const override
 Gets the description string. More...
 
void insertQuadFromSprite (Sprite *sprite, ssize_t index)
 Inserts a quad at a certain index into the texture atlas. More...
 
void reserveCapacity (ssize_t newCapacity)
 reserves capacity for the batch node. More...
 
var reserveCapacity ( var newCapacity)
 reserves capacity for the batch node. More...
 
local reserveCapacity ( local newCapacity)
 reserves capacity for the batch node. More...
 
- 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.
 
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)
 Set event dispatcher for scene. More...
 
var setEventDispatcher ( var dispatcher)
 Set event dispatcher for scene. More...
 
local setEventDispatcher ( local dispatcher)
 Set event dispatcher for scene. More...
 
virtual EventDispatchergetEventDispatcher () const
 Get the event dispatcher of scene. More...
 
local getEventDispatcher ()
 Get the event dispatcher of scene. More...
 
virtual GLubyte getOpacity () const
 Return the node's opacity. More...
 
local getOpacity ()
 Return the node's opacity. More...
 
virtual GLubyte getDisplayedOpacity () const
 Return the node's display opacity. More...
 
local getDisplayedOpacity ()
 Return the node's display opacity. More...
 
virtual void setOpacity (GLubyte opacity)
 Change node opacity. More...
 
virtual void updateDisplayedOpacity (GLubyte parentOpacity)
 Update the displayed opacity of node with it's parent opacity;. More...
 
virtual bool isCascadeOpacityEnabled () const
 Whether cascadeOpacity is enabled or not. More...
 
var isCascadeOpacityEnabled ()
 Whether cascadeOpacity is enabled or not. More...
 
local isCascadeOpacityEnabled ()
 Whether cascadeOpacity is enabled or not. More...
 
virtual void setCascadeOpacityEnabled (bool cascadeOpacityEnabled)
 Change node's cascadeOpacity property. More...
 
local setCascadeOpacityEnabled ( local cascadeOpacityEnabled)
 Change node's cascadeOpacity property. More...
 
virtual const Color3BgetColor () const
 Query node's color value. More...
 
local getColor ()
 Query node's color value. More...
 
virtual const Color3BgetDisplayedColor () const
 Query node's displayed color. More...
 
local getDisplayedColor ()
 Query node's displayed color. More...
 
virtual void setColor (const Color3B &color)
 Change the color of node. More...
 
var setColor ( var color)
 Change the color of node. More...
 
local setColor ( local color)
 Change the color of node. More...
 
virtual void updateDisplayedColor (const Color3B &parentColor)
 Update node's displayed color with its parent color. More...
 
local updateDisplayedColor ( local parentColor)
 Update node's displayed color with its parent color. More...
 
virtual bool isCascadeColorEnabled () const
 Query whether cascadeColor is enabled or not. More...
 
var isCascadeColorEnabled ()
 Query whether cascadeColor is enabled or not. More...
 
local isCascadeColorEnabled ()
 Query whether cascadeColor is enabled or not. More...
 
virtual void setCascadeColorEnabled (bool cascadeColorEnabled)
 If you want node's color affect the children node's color, then set it to true. More...
 
virtual void setOpacityModifyRGB (bool value)
 If you want the opacity affect the color property, then set to true. More...
 
local setOpacityModifyRGB ( local value)
 If you want the opacity affect the color property, then set to true. More...
 
virtual bool isOpacityModifyRGB () const
 If node opacity will modify the RGB color value, then you should override this method and return true. More...
 
void setOnEnterCallback (const std::function< void()> &callback)
 Set the callback of event onEnter. More...
 
const std::function< void()> & getOnEnterCallback () const
 Get the callback of event onEnter. More...
 
void setOnExitCallback (const std::function< void()> &callback)
 Set the callback of event onExit. More...
 
var setOnExitCallback ( var callback)
 Set the callback of event onExit. More...
 
local setOnExitCallback ( local callback)
 Set the callback of event onExit. More...
 
const std::function< void()> & getOnExitCallback () const
 Get the callback of event onExit. More...
 
local getOnExitCallback ()
 Get the callback of event onExit. More...
 
void setonEnterTransitionDidFinishCallback (const std::function< void()> &callback)
 Set the callback of event EnterTransitionDidFinish. More...
 
var setonEnterTransitionDidFinishCallback ( var callback)
 Set the callback of event EnterTransitionDidFinish. More...
 
local setonEnterTransitionDidFinishCallback ( local callback)
 Set the callback of event EnterTransitionDidFinish. More...
 
const std::function< void()> & getonEnterTransitionDidFinishCallback () const
 Get the callback of event EnterTransitionDidFinish. More...
 
void setonExitTransitionDidStartCallback (const std::function< void()> &callback)
 Set the callback of event ExitTransitionDidStart. More...
 
var setonExitTransitionDidStartCallback ( var callback)
 Set the callback of event ExitTransitionDidStart. More...
 
local setonExitTransitionDidStartCallback ( local callback)
 Set the callback of event ExitTransitionDidStart. More...
 
const std::function< void()> & getonExitTransitionDidStartCallback () const
 Get the callback of event ExitTransitionDidStart. More...
 
unsigned short getCameraMask () const
 get & set camera mask, the node is visible by the camera whose camera flag & node's camera mask is true
 
virtual void setCameraMask (unsigned short mask, bool applyChildren=true)
 Modify the camera mask for current node. More...
 
local setCameraMask ( local mask, local true)
 Modify the camera mask for current node. More...
 
virtual void setLocalZOrder (std::int32_t localZOrder)
 LocalZOrder is the 'key' used to sort the node relative to its siblings. More...
 
virtual void setZOrder (std::int32_t localZOrder)
virtual void _setLocalZOrder (std::int32_t z)
local _setLocalZOrder ( local z)
void updateOrderOfArrival ()
 !!! ONLY FOR INTERNAL USE Sets the arrival order when this node has a same ZOrder with other children. More...
 
virtual std::int32_t getLocalZOrder () const
 Gets the local Z order of this node. More...
 
virtual std::int32_t getZOrder () const
var getZOrder ()
local getZOrder ()
virtual void setGlobalZOrder (float globalZOrder)
 Defines the order in which the nodes are renderer. More...
 
local setGlobalZOrder ( local globalZOrder)
 Defines the order 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...
 
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...
 
var setScale ( var 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 setPositionNormalized (const Vec2 &position)
 Sets the position (x,y) using values between 0 and 1. More...
 
virtual void setNormalizedPosition (const Vec2 &position)
local setNormalizedPosition ( local position)
virtual const Vec2getPosition () const
 Gets the position (x,y) of the node in its parent's coordinate system. More...
 
local getPosition ()
 Gets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual const Vec2getPositionNormalized () const
 Returns the normalized position. More...
 
virtual const Vec2getNormalizedPosition () const
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...
 
var setPositionX ( var x)
 Gets/Sets x or y coordinate individually for position. More...
 
local setPositionX ( local x)
 Gets/Sets x or y coordinate individually for position. More...
 
virtual float getPositionX (void) const
 Gets the x coordinate of the node in its parent's coordinate system. More...
 
virtual void setPositionY (float y)
 Sets the y coordinate of the node in its parent's coordinate system. More...
 
local setPositionY ( local y)
 Sets the y coordinate of the node in its parent's coordinate system. More...
 
virtual float getPositionY (void) const
 Gets the y coordinate of the node in its parent's coordinate system. More...
 
var getPositionY ()
 Gets the y coordinate of the node in its parent's coordinate system. More...
 
local getPositionY ()
 Gets the y coordinate of the node in its parent's coordinate system. More...
 
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...
 
local getPosition3D ()
 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...
 
var setVertexZ ( var 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
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...
 
local getSkewX ()
 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...
 
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 Size & getContentSize () const
 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...
 
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 setRotationQuat (const Quaternion &quat)
 Set rotation by quaternion. More...
 
virtual Quaternion getRotationQuat () const
 Return the rotation by quaternion, Note that when _rotationZ_X == _rotationZ_Y, the returned quaternion equals to RotationZ_X * RotationY * RotationX, it equals to RotationY * RotationX otherwise. More...
 
local getRotationQuat ()
 Return the rotation by quaternion, Note that when _rotationZ_X == _rotationZ_Y, the returned quaternion equals to RotationZ_X * RotationY * RotationX, it equals to RotationY * RotationX otherwise. 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)
local setRotationX ( local rotationX)
virtual float getRotationSkewX () const
 Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew. More...
 
virtual float getRotationX () const
var getRotationX ()
local getRotationX ()
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)
var setRotationY ( var rotationY)
local setRotationY ( local 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 setGLServerState (int)
var setGLServerState ( var int)
int getGLServerState () const
virtual void setIgnoreAnchorPointForPosition (bool ignore)
 Sets whether the anchor point will be (0,0) when you position this node. More...
 
local setIgnoreAnchorPointForPosition ( local ignore)
 Sets whether the anchor point will be (0,0) when you position this node. More...
 
virtual void ignoreAnchorPointForPosition (bool ignore)
local ignoreAnchorPointForPosition ( local ignore)
virtual bool isIgnoreAnchorPointForPosition () const
 Gets whether the anchor point will be (0,0) when you position this node. More...
 
virtual int getTag () const
 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 const 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...
 
var getUserObject ()
 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 ()
virtual void setGLProgram (GLProgram *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)
GLProgramStategetGLProgramState () const
 Return the GLProgramState currently used for this node. More...
 
var getGLProgramState ()
 Return the GLProgramState currently used for this node. More...
 
local getGLProgramState ()
 Return the GLProgramState currently used for this node. More...
 
virtual void setGLProgramState (GLProgramState *glProgramState)
 Set the GLProgramState for this node. More...
 
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...
 
var 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...
 
var setActionManager ( var 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
virtual ActionrunAction (Action *action)
 Executes an action, and returns the action that is executed. More...
 
local runAction ( local action)
 Executes an action, and returns the action that is executed. More...
 
void stopAllActions ()
 Stops and removes all actions from the running action list .
 
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...
 
void stopActionsByFlags (unsigned int flags)
 Removes all actions from the running action list by its flags. 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...
 
ssize_t getNumberOfRunningActionsByTag (int tag) const
 Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays) with a specific tag. More...
 
local getNumberOfRunningActionsByTag ( local tag)
 Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays) with a specific tag. More...
 
ssize_t numberOfRunningActions () const
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 Scheduler object. More...
 
local getScheduler ()
 Gets a Scheduler object. More...
 
virtual const SchedulergetScheduler () const
local getScheduler ()
bool isScheduled (SEL_SCHEDULE selector) const
 Checks whether a selector is scheduled. More...
 
bool isScheduled (const std::string &key) const
 Checks whether a lambda function is scheduled. More...
 
void scheduleUpdate (void)
 Schedules the "update" method. More...
 
var scheduleUpdate ()
 Schedules the "update" method. More...
 
void scheduleUpdateWithPriority (int priority)
 Schedules the "update" method with a custom priority. More...
 
var scheduleUpdateWithPriority ( var 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. 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...
 
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...
 
var pauseSchedulerAndActions ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
local pauseSchedulerAndActions ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
virtual void update (float delta)
 Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live". More...
 
var update ( var delta)
 Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live". More...
 
local update ( local delta)
 Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live". More...
 
virtual void 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...
 
virtual AffineTransform getNodeToParentAffineTransform () const
local getNodeToParentAffineTransform ()
virtual Mat4 getNodeToParentTransform (Node *ancestor) const
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
var getNodeToParentTransform ( var ancestor)
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
local getNodeToParentTransform ( local ancestor)
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
virtual AffineTransform getNodeToParentAffineTransform (Node *ancestor) const
 Returns the affine transform matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
local getNodeToParentAffineTransform ( local ancestor)
 Returns the affine transform matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
virtual void setNodeToParentTransform (const Mat4 &transform)
 Sets the transformation matrix manually. More...
 
var setNodeToParentTransform ( var transform)
 Sets the transformation matrix manually. More...
 
local setNodeToParentTransform ( local transform)
 Sets the transformation matrix manually. More...
 
virtual AffineTransform nodeToParentTransform () const
virtual const Mat4getParentToNodeTransform () const
 Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates. More...
 
var getParentToNodeTransform ()
 Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates. More...
 
local getParentToNodeTransform ()
 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...
 
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...
 
var convertToWorldSpaceAR ( var nodePoint)
 Converts a local Vec2 to world space coordinates.The result is in Points. More...
 
local convertToWorldSpaceAR ( local nodePoint)
 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...
 
local convertTouchToNodeSpace ( local touch)
 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...
 
void setAdditionalTransform (const Mat4 *additionalTransform)
 Sets an additional transform matrix to the node. More...
 
void setAdditionalTransform (const Mat4 &additionalTransform)
var setAdditionalTransform ( var additionalTransform)
local setAdditionalTransform ( local additionalTransform)
void setAdditionalTransform (const AffineTransform &additionalTransform)
var setAdditionalTransform ( var additionalTransform)
local setAdditionalTransform ( local additionalTransform)
Component * getComponent (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...
 
local removeComponent ( local component)
 Removes a component by its pointer. More...
 
virtual void removeAllComponents ()
 Removes all components.
 
virtual void addChild (Node *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...
 
local getChildByTag ( local tag)
 Gets a child from the container with its tag. More...
 
template<typename T >
getChildByTag (int tag) const
 Gets a child from the container with its tag that can be cast to Type T. More...
 
virtual NodegetChildByName (const std::string &name) const
 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...
 
template<typename T >
var getChildByName ( var name)
 Gets a child from the container with its name that can be cast to Type T. More...
 
template<typename T >
local getChildByName ( local name)
 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
var getChildren ()
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...
 
var removeChildByTag ( var tag, var 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...
 
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...
 
- Public Member Functions inherited from Ref
void retain ()
 Retains the ownership. More...
 
void release ()
 Releases the ownership immediately. More...
 
local 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 ()
 Destructor. More...
 

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...
 
var create ( var fileImage, var DEFAULT_CAPACITY)
 Creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children. More...
 
local create ( local fileImage, local 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...
 
var create ()
 Allocates and initializes a node. More...
 
local create ()
 Allocates and initializes a node. More...
 
static int getAttachedNodeCount ()
 Gets count of nodes those are attached to scene graph.
 
var getAttachedNodeCount ()
 Gets count of nodes those are attached to scene graph.
 
local getAttachedNodeCount ()
 Gets count of nodes those are attached to scene graph.
 
template<typename _T >
static void sortNodes (cocos2d::Vector< _T * > &nodes)
 Sorts helper function. More...
 

Protected Member Functions

bool initWithTexture (Texture2D *tex, ssize_t capacity=DEFAULT_CAPACITY)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
var initWithTexture ( var tex, var DEFAULT_CAPACITY)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
local initWithTexture ( local tex, local DEFAULT_CAPACITY)
 initializes a SpriteBatchNode with a texture2d and capacity of children. More...
 
bool initWithFile (const std::string &fileImage, ssize_t capacity=DEFAULT_CAPACITY)
 initializes a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and a capacity of children. More...
 

Additional Inherited Members

- Public Attributes inherited from Ref
unsigned int _ID
 object id, ScriptSupport need public _ID
 
local _ID
 object id, ScriptSupport need public _ID
 
int _luaID
 Lua reference id.
 
local _luaID
 Lua reference id.
 
void * _scriptObject
 scriptObject, support for swift
 
local _scriptObject
 scriptObject, support for swift
 
bool _rooted
 When true, it means that the object was already rooted.
 
local _rooted
 When true, it means that the object was already rooted.
 
- Static Public Attributes inherited from Node
static const int INVALID_TAG = -1
 Default tag used for all the nodes.
 
var INVALID_TAG = -1
 Default tag used for all the nodes.
 
local INVALID_TAG = -1
 Default tag used for all the nodes.
 

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

Member Function Documentation

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 runs out of space.

Parameters
texA texture2d.
capacityThe capacity of children.
Returns
Return an autorelease object.
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 runs out of space.

Parameters
texA texture2d.
capacityThe capacity of children.
Returns
Return an autorelease object.
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 runs out of space.

Parameters
texA texture2d.
capacityThe capacity of children.
Returns
Return an autorelease object.
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 runs out of space. The file will be loaded using the TextureMgr.

Parameters
fileImageA file image (.png, .jpeg, .pvr, etc).
capacityThe capacity of children.
Returns
Return an autorelease object.
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 runs out of space. The file will be loaded using the TextureMgr.

Parameters
fileImageA file image (.png, .jpeg, .pvr, etc).
capacityThe capacity of children.
Returns
Return an autorelease object.
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 runs out of space. The file will be loaded using the TextureMgr.

Parameters
fileImageA file image (.png, .jpeg, .pvr, etc).
capacityThe capacity of children.
Returns
Return an autorelease object.
TextureAtlas* getTextureAtlas ( )
inline

Returns the TextureAtlas object.

Returns
The TextureAtlas object.
var getTextureAtlas ( )
inline

Returns the TextureAtlas object.

Returns
The TextureAtlas object.
local getTextureAtlas ( )
inline

Returns the TextureAtlas object.

Returns
The TextureAtlas object.
void setTextureAtlas ( TextureAtlas textureAtlas)
inline

Sets the TextureAtlas object.

Parameters
textureAtlasThe TextureAtlas object.
var setTextureAtlas ( var  textureAtlas)
inline

Sets the TextureAtlas object.

Parameters
textureAtlasThe TextureAtlas object.
local setTextureAtlas ( local  textureAtlas)
inline

Sets the TextureAtlas object.

Parameters
textureAtlasThe TextureAtlas object.
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.

Returns
An array with the descendants (children, gran children, etc.).
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.

Returns
An array with the descendants (children, gran children, etc.).
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.

Returns
An array with the descendants (children, gran children, etc.).
void increaseAtlasCapacity ( )

Increase the Atlas Capacity.

var increaseAtlasCapacity ( )

Increase the Atlas Capacity.

local increaseAtlasCapacity ( )

Increase the Atlas Capacity.

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.

Parameters
indexA certain index.
doCleanupWhether or not to cleanup the running actions.
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.

Parameters
indexA certain index.
doCleanupWhether or not to cleanup the running actions.
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.

Parameters
indexA certain index.
doCleanupWhether or not to cleanup the running actions.
Warning
Removing a child from a SpriteBatchNode is very slow.
void appendChild ( Sprite sprite)

Append the child.

Parameters
spriteA Sprite.
var appendChild ( var  sprite)

Append the child.

Parameters
spriteA Sprite.
local appendChild ( local  sprite)

Append the child.

Parameters
spriteA Sprite.
void removeSpriteFromAtlas ( Sprite sprite)

Remove a sprite from Atlas.

Parameters
spriteA Sprite.
var removeSpriteFromAtlas ( var  sprite)

Remove a sprite from Atlas.

Parameters
spriteA Sprite.
local removeSpriteFromAtlas ( local  sprite)

Remove a sprite from Atlas.

Parameters
spriteA Sprite.
ssize_t rebuildIndexInOrder ( Sprite parent,
ssize_t  index 
)

Rebuild index with a sprite all child.

Parameters
parentThe parent sprite.
indexThe child index.
Returns
Index.
var rebuildIndexInOrder ( var  parent,
var  index 
)

Rebuild index with a sprite all child.

Parameters
parentThe parent sprite.
indexThe child index.
Returns
Index.
local rebuildIndexInOrder ( local  parent,
local  index 
)

Rebuild index with a sprite all child.

Parameters
parentThe parent sprite.
indexThe child index.
Returns
Index.
ssize_t highestAtlasIndexInChild ( Sprite sprite)

Get the Max image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
var highestAtlasIndexInChild ( var  sprite)

Get the Max image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
local highestAtlasIndexInChild ( local  sprite)

Get the Max image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
ssize_t lowestAtlasIndexInChild ( Sprite sprite)

Get the Min image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
var lowestAtlasIndexInChild ( var  sprite)

Get the Min image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
local lowestAtlasIndexInChild ( local  sprite)

Get the Min image block index,in all child.

Parameters
spriteThe parent sprite.
Returns
Index.
ssize_t atlasIndexForChild ( Sprite sprite,
int  z 
)

Get the nearest index from the sprite in z.

Parameters
spriteThe parent sprite.
zZ order for drawing priority.
Returns
Index.
var atlasIndexForChild ( var  sprite,
var  z 
)

Get the nearest index from the sprite in z.

Parameters
spriteThe parent sprite.
zZ order for drawing priority.
Returns
Index.
local atlasIndexForChild ( local  sprite,
local  z 
)

Get the nearest index from the sprite in z.

Parameters
spriteThe parent sprite.
zZ order for drawing priority.
Returns
Index.
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).
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).
virtual void visit ( Renderer *  renderer,
const Mat4 parentTransform,
uint32_t  parentFlags 
)
overridevirtual

Visits this node's children and draw them recursively.

Parameters
rendererA given renderer.
parentTransformA transform matrix.
parentFlagsRenderer flag.

Reimplemented from Node.

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

Visits this node's children and draw them recursively.

Parameters
rendererA given renderer.
parentTransformA transform matrix.
parentFlagsRenderer flag.

Reimplemented from Node.

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.
localZOrderZ 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 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.
localZOrderZ 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 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.
localZOrderZ 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 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.
localZOrderZ 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.
localZOrderZ 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.
localZOrderZ order for drawing priority. Please refer to setLocalZOrder(int).
nameA string to identify the node easily. Please refer to setName(int).

Reimplemented from Node.

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 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.

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 otherwise.

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 otherwise.

Reimplemented from Node.

virtual void sortAllChildren ( )
overridevirtual

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

This approach 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.

var sortAllChildren ( )
overridevirtual

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

This approach 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.

local sortAllChildren ( )
overridevirtual

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

This approach 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.

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.
Parameters
rendererA given renderer.
transformA transform matrix.
flagsRenderer flag.

Reimplemented from Node.

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.
Parameters
rendererA given renderer.
transformA transform matrix.
flagsRenderer flag.

Reimplemented from Node.

virtual std::string getDescription ( ) const
overridevirtual

Gets the description string.

It makes debugging easier.

Returns
A string

Reimplemented from Node.

Reimplemented in TMXLayer.

local getDescription ( )
overridevirtual

Gets the description string.

It makes debugging easier.

Returns
A string

Reimplemented from Node.

Reimplemented in TMXLayer.

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 AtlasSprite 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 AtlasSprite 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 AtlasSprite and when most of the Sprite won't be updated. For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont).

void reserveCapacity ( ssize_t  newCapacity)

reserves capacity for the batch node.

If the current capacity is bigger, nothing happens. otherwise, a new capacity is allocated

var reserveCapacity ( var  newCapacity)

reserves capacity for the batch node.

If the current capacity is bigger, nothing happens. otherwise, a new capacity is allocated

local reserveCapacity ( local  newCapacity)

reserves capacity for the batch node.

If the current capacity is bigger, nothing happens. otherwise, a new capacity is allocated

bool initWithTexture ( Texture2D tex,
ssize_t  capacity = DEFAULT_CAPACITY 
)
protected

initializes a SpriteBatchNode with a texture2d and capacity of children.

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

var initWithTexture ( var  tex,
var  capacity = DEFAULT_CAPACITY 
)
protected

initializes a SpriteBatchNode with a texture2d and capacity of children.

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

local initWithTexture ( local  tex,
local  capacity = DEFAULT_CAPACITY 
)
protected

initializes a SpriteBatchNode with a texture2d and capacity of children.

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

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

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 runs out of space. The file will be loaded using the TextureMgr.

var init ( var  fileImage,
var  capacity = DEFAULT_CAPACITY 
)
protected

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 runs out of space. The file will be loaded using the TextureMgr.

local init ( local  fileImage,
local  capacity = DEFAULT_CAPACITY 
)
protected

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 runs out of space. The file will be loaded using the TextureMgr.


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