Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 为cocos2d重用动画的最佳方法是什么?_Iphone_Animation_Cocos2d Iphone - Fatal编程技术网

Iphone 为cocos2d重用动画的最佳方法是什么?

Iphone 为cocos2d重用动画的最佳方法是什么?,iphone,animation,cocos2d-iphone,Iphone,Animation,Cocos2d Iphone,我希望能够分配一些操作,以便可以在我想要的任何目标节点上反复使用和重用它们。我假设我可以在init中用一个泛型NSObject类加载它们,然后在nessicary从方法中调用它们时调用它们,但无法执行 我只是在尝试时表现不佳,还是有更优雅的解决方案 @implementation Animation @synthesize animation; -(id) init { if ( (self=[super init]) ) { animation = [CCScal

我希望能够分配一些操作,以便可以在我想要的任何目标节点上反复使用和重用它们。我假设我可以在init中用一个泛型NSObject类加载它们,然后在nessicary从方法中调用它们时调用它们,但无法执行

我只是在尝试时表现不佳,还是有更优雅的解决方案

@implementation Animation

@synthesize animation;

-(id) init 
{
    if ( (self=[super init]) ) {
        animation = [CCScaleTo actionWithDuration: 0.15 scale: 2.0];
    }
    return self;
}

- (id) myAnimation
{
    return animation;
}

[targetCCNode runAction:[Animation myAnimation]];

创造一个动作是非常快的。我认为这不合理。如果您只想使用一些常见的配置创建操作,那么我建议您创建或使用一个现有的类,并使用静态方法创建此操作。如果在创建操作时需要一些上下文,也可以使用非静态方法的单例

谢谢,这很有意义。我想我是想得太多了,尽量多地预装所有东西,即使没有必要。@Sup:如果你的游戏使用了很多资源,那么不可能将它们全部预装在一起,因为在这种情况下,你会使用很多内存。我觉得你正在使用cocos现金,如果你将预加载到更多,他们会自动释放旧资源