Dans le cadre de mon cadre de développement de jeu Ruby 2D simple, mes objets de jeu ont une position (valeurs x et y) et une taille (largeur et hauteur).
class MyGameObject
attr_accessor :x
attr_accessor :y
attr_accessor :width
attr_accessor :height
...
Une autre approche que j'ai vue consistait à traiter la position comme une Point
structure et la taille comme une Size
structure:
Point = Struct.new(:x, :y)
Size = Struct.new(:width,:height)
class MyGameObject
attr_accessor :position # Point instance
attr_accessor :size # Size instance
...
Certains frameworks utilisent le premier (je pense que GDX, Gosu ...). D'autres utilisent ce dernier (cocos2d-iphone). Le problème est qu'il n'est pas entièrement clair pour moi les avantages et les inconvénients des deux comportements (dans le développement de jeux) - je ne sais pas pourquoi certains frameworks ont choisi l'un et pas l'autre.
Y a-t-il des différences importantes à considérer?
la source