【问题标题】:Layer or Scene?图层还是场景?
【发布时间】:2012-08-24 12:03:35
【问题描述】:

学习cocos2d/kobold2d,被场景和层次所迷惑。据我了解,场景通常包含图层,其中图层包含 UI 元素,如按钮和所有逻辑。

我的第一个项目是基于 kobold2d helloworld 示例,我看到该层是从 CCLayer 而不是 CCScene 子类化的。在搜索这个主题时,我看到 helloworld 示例是从 CCScene 派生的层。无论如何,为什么 helloworld 示例不是从 CCScene 派生的,而它以前显然是从 CCScene 派生的?

我查看了一些其他示例(涂鸦和弹球),其中还使用了 CCLayer,而不是 CCScene。

是否有关于场景和图层的权威指南? kobold2d 是否只使用图层进行推广,或者我应该如何看待这个?

问候,

罗伯

【问题讨论】:

    标签: cocos2d-iphone kobold2d


    【解决方案1】:

    在 Kobold2D 中,如果您的第一个类派生自 CCLayer 而不是 CCScene,Kobold2D 会默默地将其包装在 CCScene 对象中。这样您就不必再编写 +(id) 场景方法了。

    这对于只使用单层、编写更少代码的场景非常有用。您仍然可以通过将它们添加到图层的父级(即场景)来向场景添加更多图层:[self.parent addChild:..]

    顺便说一句,如果你的第一个类确实是一个 CCScene 类或者它实现了 +(id) 场景方法,那么就会使用那个场景。

    【讨论】:

    • 谢谢!这解释了一些事情..这在文档中的某处提到了吗?我可以将第一层的实现改回ccscene吗? +(id) 场景方法的好处/用途是什么?
    猜你喜欢
    • 1970-01-01
    • 2012-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多