Ebauche d'un moteur 3d isométrique

Description

Bonjour,
J'ai pas mal galéré à obtenir le modeste résultat ci-joint.
Peu importe, je propose ici une petite source (rien de bien méchant) pour les débutants qui souhaiteraient comprendre comment réaliser un moteur 3D Isométrique en utilisant uniquement la librairie GDI+ intégrée à Visual Studio.
Il n'est bien sur pas encore complet; il manque l'application des textures un point sur lequel je reste bloqué ainsi que la rotation de la carte.
Cette application ouvre un fichier .map (fichier texte dans lequel on stocke les dimensions de la carte ainsi que "l'altitude" des points qui la composent).

Son fonctionnement est simple à comprendre, malheureusement moins à expliquer:
On construit un rectangle composé lui-même d'un quadrillage de carrés;
en effet le fichier .map contient autant de valeurs qu'il doit y avoir de points sur la carte. Ces points sont reliés pour créer un quadrillage.
Ensuite, on créé l'illusion de la 3D (la fameuse 3D isométrique) en réduisant les coordonnées Y (ordonnées) de chaque point de moitié et en décalant les coordonnées X (abscisses) auxquelles on ajoute la valeur Y/2.
Pour donner l'illusion de relief on ajoute à chaque coordonnée Y de chaque point sa valeur de hauteur (contenue dans le fichier .map) multipliée par un coefficient qui n'est autre que le format de chaque carré divisé par 2...

Je suis conscient que mon code mérite d'être révisé et mieux commenté, donc.. à vous de juger.

Cordialement,
Anz.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.