gpt4 book ai didi

ios - Cocos2D 2.x - 从 CCDirector 获取 framerate_ 值

转载 作者:行者123 更新时间:2023-11-28 20:26:10 25 4
gpt4 key购买 nike

我想使用在 CCDirector 类的“showStats”方法中计算的 ivar“framerate_”值。目前我已经在 CCDirector.m/h 文件中添加了一个方法来访问值,例如......

CCDirecor.h:

-(ccTime)getCCFrameRate;

CCDirecor.m:

-(ccTime)getCCFrameRate {
return frameRate_;
}

...所以我现在可以像这样获得值:

ccTime frameRateOutput = [[MyDirector sharedDirector] getCCFrameRate];

这可行,但我宁愿不要“破解”Cocos2D 框架代码。我试过对 CCDirector 进行子类化,但遇到了一些问题。感谢任何有关获得此“framerate_”ivar 而不会弄乱框架代码的最佳方法的建议。谢谢

最佳答案

你可以像这样得到任何对象的任何ivar:

Ivar iv = object_getInstanceVariable(obj, "_framerate");
void *ivp = (char *)obj + ivar_getOffset(iv);
TYPE framerate = *(TYPE *)ivp;

但是,在我看来,这比扩展框架更像是一种 hack。

关于ios - Cocos2D 2.x - 从 CCDirector 获取 framerate_ 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13889832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com