|
@@ -104,6 +104,7 @@ static _TrackEntryListeners* getListeners (spTrackEntry* entry) {
|
|
|
_state->listener = animationCallback;
|
|
|
|
|
|
_spAnimationState* stateInternal = (_spAnimationState*)_state;
|
|
|
+ _updatedOnce = false;
|
|
|
}
|
|
|
|
|
|
- (id) initWithData:(spSkeletonData*)skeletonData ownsSkeletonData:(bool)ownsSkeletonData {
|
|
@@ -156,6 +157,7 @@ static _TrackEntryListeners* getListeners (spTrackEntry* entry) {
|
|
|
if (_preUpdateWorldTransformsListener) _preUpdateWorldTransformsListener(self);
|
|
|
spSkeleton_updateWorldTransform(_skeleton);
|
|
|
if (_postUpdateWorldTransformsListener) _postUpdateWorldTransformsListener(self);
|
|
|
+ _updatedOnce = true;
|
|
|
}
|
|
|
|
|
|
- (void) setAnimationStateData:(spAnimationStateData*)stateData {
|
|
@@ -276,4 +278,9 @@ static _TrackEntryListeners* getListeners (spTrackEntry* entry) {
|
|
|
getListeners(entry)->eventListener = [listener copy];
|
|
|
}
|
|
|
|
|
|
+-(void)draw:(CCRenderer *)renderer transform:(const GLKMatrix4 *)transform {
|
|
|
+ if (!_updatedOnce) [self update:0];
|
|
|
+ [super draw:renderer transform:transform];
|
|
|
+}
|
|
|
+
|
|
|
@end
|