【问题标题】:iphone MVC game design questioniphone MVC游戏设计问题
【发布时间】:2010-06-22 11:02:11
【问题描述】:

我有一个关于 iphone 游戏的模型视图控制器 (MVC) 设计模式的问题。

假设我有一个使用 ViewController 的简单游戏。所以这个视图控制器有一个关联的窗口/视图,并在这个视图上接受按钮滑块等的玩家输入。

现在我还有一个 ViewController 主窗口/视图的子视图,实际上我在这个子视图中对各种多边形进行了一些动画处理。我也想在这个子视图中进行触摸事件。

我的问题是,在子视图中,我有所有的用户触摸代码和动画代码,因为玩家的触摸输入会影响动画直接改变旋转等。我的子视图类中有很多变量。 我是否违反了 MVC 设计?我应该将这些东西委托给另一个类还是视图控制器?

非常感谢

【问题讨论】:

    标签: iphone


    【解决方案1】:

    这取决于你想要完成什么。

    假设您希望您的游戏在普通 PC 和 iPhone 上运行。

    显然,您希望隔离所有特定于 iPhone 的代码,包括触摸。我假设您希望游戏的两个版本都有动画,所以这将是控制器的一部分,或者可能是模型的一部分。渲染动画将是视图的一部分。

    确定哪些函数属于视图以及哪些函数属于控制器的最简单方法是想象将您的应用程序移植到两个不同的查看器。它不必是 PC 和 iPhone。它可以是 Android 和 iPhone。 :-)

    【讨论】:

    • 很酷,谢谢。更具体地说,如果我的自定义子视图有 touchesBegan 等回调,我如何使这些与我的控制器类通信?
    • 想想触摸完成了哪些概念。我不知道您的特定应用程序,但我会想到放大、缩小、上一张图像和下一张图像等一般概念。您的视图与触摸有关。您的控制器处理适用于您的应用程序的概念。
    猜你喜欢
    • 2018-01-02
    • 2012-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多