Moved scheduleUpdate to onEnter, added unscheduleUpdate onExit.

closes #230
This commit is contained in:
NathanSweet 2014-11-19 17:56:44 +01:00
parent abb3782e27
commit 60d724b7c4
2 changed files with 12 additions and 1 deletions

View File

@ -75,7 +75,6 @@ void SkeletonRenderer::initialize () {
setOpacityModifyRGB(true); setOpacityModifyRGB(true);
setGLProgram(ShaderCache::getInstance()->getGLProgram(GLProgram::SHADER_NAME_POSITION_TEXTURE_COLOR)); setGLProgram(ShaderCache::getInstance()->getGLProgram(GLProgram::SHADER_NAME_POSITION_TEXTURE_COLOR));
scheduleUpdate();
} }
void SkeletonRenderer::setSkeletonData (spSkeletonData *skeletonData, bool ownsSkeletonData) { void SkeletonRenderer::setSkeletonData (spSkeletonData *skeletonData, bool ownsSkeletonData) {
@ -370,6 +369,16 @@ bool SkeletonRenderer::getDebugBonesEnabled () const {
return _debugBones; return _debugBones;
} }
void SkeletonRenderer::onEnter () {
Node::onEnter();
scheduleUpdate();
}
void SkeletonRenderer::onExit () {
Node::onExit();
unscheduleUpdate();
}
// --- CCBlendProtocol // --- CCBlendProtocol
const BlendFunc& SkeletonRenderer::getBlendFunc () const { const BlendFunc& SkeletonRenderer::getBlendFunc () const {

View File

@ -49,6 +49,8 @@ public:
virtual void draw (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags) override; virtual void draw (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags) override;
virtual void drawSkeleton (const cocos2d::Mat4& transform, uint32_t transformFlags); virtual void drawSkeleton (const cocos2d::Mat4& transform, uint32_t transformFlags);
virtual cocos2d::Rect getBoundingBox () const override; virtual cocos2d::Rect getBoundingBox () const override;
virtual void onEnter () override;
virtual void onExit () override;
spSkeleton* getSkeleton(); spSkeleton* getSkeleton();