私の単純なRuby 2Dゲーム開発フレームワークの一部として、私のゲームオブジェクトには位置(xとyの値)とサイズ(幅と高さ)があります。
class MyGameObject
attr_accessor :x
attr_accessor :y
attr_accessor :width
attr_accessor :height
...
私が見た別のアプローチは、位置をPoint
構造として扱い、サイズを構造として扱うことでしたSize
:
Point = Struct.new(:x, :y)
Size = Struct.new(:width,:height)
class MyGameObject
attr_accessor :position # Point instance
attr_accessor :size # Size instance
...
一部のフレームワークでは前者を使用します(GDX、Gosuなどだと思います)。他のユーザーは後者(cocos2d-iphone)を使用します。問題は、(ゲーム開発における)両方の動作の長所と短所が完全に明確ではないことです。一部のフレームワークが一方を選択し、もう一方を選択しない理由がわかりません。
考慮すべき重要な違いはありますか?