Existe-t-il des conventions et / ou des méthodes les plus connues autour des systèmes de coordonnées dans les cartes de jeu? L'origine est-elle généralement positionnée au centre de la carte? Ou vit-elle dans un coin et la carte est-elle construite dans un seul octant de l'espace 3D?
tilemap
maps
level-design
TaylorE
la source
la source
Réponses:
La plupart des jeux placent l'origine de la carte dans un coin. La raison principale en est que les tilemaps sont souvent stockés en interne dans des tableaux bidimensionnels, et la plupart des langages de programmation n'autorisent pas les index de tableau négatifs. Il y a beaucoup de discussions sur quel coin doit être à l'origine, mais je ne considère aucun des arguments particulièrement fort. En fin de compte, c'est juste une préférence personnelle. Je recommanderais simplement d'utiliser le même coin que votre API graphique utilise pour minimiser les maux de tête.
Les exceptions sont souvent des jeux qui permettent des cartes qui grandissent à l'infini dans toutes les directions. Cela ne fonctionne pas correctement sans index négatifs, donc un simple tableau 2d est hors de question. Vous devrez stocker vos données cartographiques dans une structure de données plus complexe. Dans cette situation, il est généralement plus judicieux de placer l'origine à la position de départ.
la source
En théorie, l'emplacement de l'origine n'a pas d'importance. Toutes les opérations mathématiques que vous effectuez lorsque la carte est rendue ou lorsque des objets se déplacent sur la carte fonctionnent correctement, peu importe où l'origine est réellement.
Cependant, dans la pratique, il existe une raison pour laquelle vous souhaiterez peut-être faire du centre de la carte l'origine - c'est la précision limitée des valeurs à virgule flottante.
Avec des nombres à virgule flottante, plus vous vous éloignez de 0, moins il y a de précision dans les petits chiffres.
En travaillant sur un jeu en monde ouvert qui avait une très grande carte, nous avons en fait rencontré des problèmes où la physique et d'autres choses commençaient à tomber en panne lorsque vous vous éloigniez de l'origine.
Le correctif consistait à faire une ruse où l'origine était toujours assez proche du joueur, en téléportant intelligemment des choses (le joueur, les tuiles de carte, la caméra, etc.) autour pour ne pas trop s'éloigner de l'origine.
la source
Ça n'a pas vraiment d'importance. Ce que certaines personnes changent dans leur système de coordonnées est souvent l'axe des y. Au lieu d'avoir (0,0) en haut à gauche, ils préfèrent l'avoir en bas à gauche pour une physique plus facile.
la source