Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.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
C++ 为什么我们更喜欢使用;CCFollow“;而不是",;CCCamera";在cocos2d中?_C++_Ios_Cocos2d Iphone - Fatal编程技术网

C++ 为什么我们更喜欢使用;CCFollow“;而不是",;CCCamera";在cocos2d中?

C++ 为什么我们更喜欢使用;CCFollow“;而不是",;CCCamera";在cocos2d中?,c++,ios,cocos2d-iphone,C++,Ios,Cocos2d Iphone,在我的例子中,我正在制作一个2D游戏,相机总是跟随我的角色,但会有场景限制,所以当他接近场景边界时,我必须停止跟随他。我还必须处理相机比例,所以我必须决定是使用CCFollow::actionWithTarget()还是CCCamera 在CCCamera.h中,它表示: 限制: 最后一句很有趣,为什么只在3D特效中使用?似乎CCCamera不被其生产商推荐。我知道这是处理相机移动的快捷方式,但我不知道为什么最好不要在2D游戏中使用它。如果您注意到,CCCamera.h文件还显示: Useful

在我的例子中,我正在制作一个2D游戏,相机总是跟随我的角色,但会有场景限制,所以当他接近场景边界时,我必须停止跟随他。我还必须处理相机比例,所以我必须决定是使用CCFollow::actionWithTarget()还是CCCamera

在CCCamera.h中,它表示:

限制:


最后一句很有趣,为什么只在3D特效中使用?似乎CCCamera不被其生产商推荐。我知道这是处理相机移动的快捷方式,但我不知道为什么最好不要在2D游戏中使用它。

如果您注意到,CCCamera.h文件还显示:

Useful to look at the object from different views.
The OpenGL gluLookAt() function is used to locate the
camera.
OpenGL红皮书中有一篇关于相机工作原理的好文章。我的理解是,相机是用来设置初始方向的,然后你通过更新模型矩阵来移动世界(我猜CCFollow就是这么做的)。如果您仍然想使用相机,这里有一个答案可能会有所帮助:


您是否找到人对此进行澄清?我也有类似的疑问,如果你能解决这些疑问,我将不胜感激。。
Useful to look at the object from different views.
The OpenGL gluLookAt() function is used to locate the
camera.