:p_hello: bonjour, vu que je suis nouveau sur le forum, quelques lignes de descritpions. J'ai 16 ans, je suis en première S, fan de jeux video et de mangas. Je fait beaucoup de design et un peu de développement pour mettre en forme mes idées. J'ai déjà quelques dizaines de moteurs de jeux 2D sous le coude. Je travaille sur la version 5.0 de gm, et je compte pas en changer parcequ'elle me convient parfaitement. Maintenant, mon problème: je suis en train d'essayer de développer un jeu en 3D. Mais de la fausse 3D, c'est à dire avec des sprites pré définis. J'ai essayé le moteur développé par Damintreg. Mais j'ai trouvé ça trop compliqué pour pouvoir le retoucher moi même. J'ai alors essayé de développer mon propre moteur 3D, mais je me suis confronté à un problème, à plusieurs en fait. Alors voilà mon code source, j'ai du mal à comprendre ou est le problème. Ca ne me dessine pas les bons objets au bon endroit, enfin ça déconne pas mal quoi:
dans le step du l'objet dessiné:
{
rotot=0;
scale=200-point_distance(self.x,self.y,cam.x,cam.y);
posx=global.rotation-point_direction(cam.x,cam.y,self.x,self.y);
rotat=round((global.rotation+rotot)/10);
if point_direction(cam.x,cam.y,self.x,self.y)<global.rotation+45
{
if (point_direction(cam.x,cam.y,self.x,self.y)>global.rotation-45){dra=1} else {dra=0};
}
}
dans le draw de l'objet dessiné:
{
if (dra=1){draw_sprite_scaled(sprite2,rotat,posx,100,scale/100)};
}
rotot c'est l'angle original du l'objet
posx est la position sur x ou dessiner l'objet
rotat est censé permettre de choisir la bonne image pour ce qu'il a a dessiner (NB: j'essaie de dessiner un mur)
cam c'est lobjet caméra par rapport à lequelle il dessine.
Voilà, j'espère avoir été claire dans mon problème, et merci de m'aider à le résoudre pour enfin faire des jeux plus intérressants.