Alors voila, je suis actuellement entrain de faire un système de map 2D, à l'aide du scroll view, sur un monde plat.
Mon scroll view contient donc une image de la carte (qui est un dessin), ainsi qu'une icône du joueur et de la quête principale.
Afin de repérer ou est le joueur sur cette carte j'ai tout d'abords placé sur chaque bords du monde un cube (en créant une plane avec l'image de la carte proportionnelle au monde).
Ces cubes me permettent de calculer la distance entre chaque bords, pour ensuite calculer le ratio (longueur / largeur) avec la taille de l'image ( width / Height ).
J'utilise ces deux ratios en les multipliant à la positions du joueur pour savoir ou l'afficher sur ma carte.
Le scroll view : Transform : 300 / 0 / 0 Width / height : 1200 / 983 Le content : Transform : -600 / 491.5 Width / height : 1200 / 983 image size : 2682 / 2200 ratio environ : 2.6 / 2.4Ma carte à une rotation de -90°, du coup j'ai du changé ma valeur Y en -Y.
J'ai maintenant deux problèmes:
- Mon premier et que j'ai besoin d'ajouter une correction ( qui change en fonction de la taille du scroll view / content) sur la position de l'icone du joueur pour qu'il soit la ou il doit être sur la carte (si je bouge le personnage, l'icone du joueur suit bien le mouvement sur la Map).
Mais du coup j'ai pas réussi à trouver d'ou proviens ce chiffre ( dans ce cas la c'est 660 / 700 et 55 / 220 pour la l'icone de la quete), si c'est pars que j'ai du rotate ma carte ou autre ?
- Mon deuxième problème c'est que si la rotation de la carte n'est pas la même par rapport a d'autre carte, ben ça foire, du coup j'ai voulu adapter la position du joueur en fonction de l'orientation de la carte, mais impossible je trouve pas.
Voila voila, si jamais quelqu'un à des pistes sur quoi je pourrais me diriger ça serait vraiment cool.
Si manque des infos, n'hésitez pas.
J'espère que mes explications sont assez claire pour qu'on me comprenne ^^".
Merci !