从哪里拉出精灵纹理

时间:2012-09-13 10:14:42

标签: oop design-patterns 2d-games

因此,在制作2D游戏时,有一种常见的模式,即创建对象并为每个对象设置精灵。有些对象有很多精灵,有些只有1。

有两种明显的方法可以解决这个问题。

  1. 创建一个SpriteManager类来拉入所有精灵并将它们发送到每个类。
  2. 这种方法的问题似乎是你必须为每个类创建唯一的接口来传递sprite,因为每个都可以使用任意数量的sprite。

    1. 向每个类发送一个引用它所需的资源来引入它自己的纹理并处理类中的所有内容。
    2. 这样做可以扩展一个基本的精灵类,只需要一个精灵设定函数来编写并由所有孩子继承,从而节省自己的时间。

      所以我的问题是哪个更好,为什么?

1 个答案:

答案 0 :(得分:0)

要回答我自己的问题,最好创建一些知道所有精灵的精灵管理器。

向对象发送加载纹理所需的工具的问题是,如果您有多个对象实例,则最终可能会多次加载相同的纹理。