Als Teil meines einfachen Ruby 2D-Spieleentwicklungsframeworks haben meine Spielobjekte Position (x- und y-Werte) und Größe (Breite und Höhe).
class MyGameObject
attr_accessor :x
attr_accessor :y
attr_accessor :width
attr_accessor :height
...
Ein anderer Ansatz, den ich gesehen habe, war, die Position als Point
Struktur und die Größe als Size
Struktur zu behandeln:
Point = Struct.new(:x, :y)
Size = Struct.new(:width,:height)
class MyGameObject
attr_accessor :position # Point instance
attr_accessor :size # Size instance
...
Einige Frameworks verwenden das erstere (ich denke GDX, Gosu ...). Andere verwenden letzteres (cocos2d-iphone). Das Problem ist, dass mir die Vor- und Nachteile beider Verhaltensweisen (in der Spieleentwicklung) nicht ganz klar sind - ich weiß nicht, warum einige Frameworks das eine und nicht das andere gewählt haben.
Gibt es signifikante Unterschiede, die ich berücksichtigen sollte?