JeuWeb - Crée ton jeu par navigateur
Module de carte héxagonale 2D - 3D Iso avec relief - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Module de carte héxagonale 2D - 3D Iso avec relief (/showthread.php?tid=4044)

Pages : 1 2 3 4 5 6 7


RE: Module de carte héxagonale 2D - 3D Iso avec relief - comg - 13-06-2009

Merci encore Roworll

Bon je ne crois pas que je vais changer mon système de repère finalement, pour plusieurs raisons :
- Plus difficile d'avoir des cartes carrées, au profit des cartes "rondes" (ce que je ne veux pas)
- implique presque nécessairement des coordonnees négatives, hors j'ai basé mon système d'information sur des array de type cases[x][y]... Ici il y a sans doute une erreur de méthode...

J'aimerai votre avis : Quel serait pour vous l'utilisation la plus simple et pratique d'utiliser un tel module ?
Plusieurs idees de modeles :

Code :
$carte = new carte();

// Cas 1
$carte->nouvelleCarte($nom,$tailleX,$tailleY);
$carte->setCase($array_de_case_avec_infos);
// Cas 2
$carte->loadCarte($id);

Generation de la carte
Code :
$carte->genererCarte($xcentre, $ycentre, $taillex, $tailley);
$carte->afficherCarte($mode,$zoom,$angle)
ou
Code :
// Sans séparation
$carte->setParamGeneration($xcentre,$ycentre,$taillex,$tailley);
$carte->SetParamAffichage($mode,$zoom,$angle);
//Avec séparation
$carte->setCentreAffichage($xcentre,$ycentre);
$carte->setTailleAffichage($taillex,$tailley);
$carte->setZoom($zoom);
$carte->setMode($mode);
$carte->setAgle($angle);

$carte->GenererCarte();
$carte->AfficherCarte();

Quelles méthodes vous semblent indispensables ensuite pour l'édition et l'affichage de carte ?


RE: Module de carte héxagonale 2D - 3D Iso avec relief - wild-D - 13-06-2009

et pourquoi pas un $carte->setParam($array) avec array contenant uniquement les param qu'on veut modifier ^^


RE: Module de carte héxagonale 2D - 3D Iso avec relief - comg - 13-06-2009

Aussi, mais cela implique de devoir creer un tableau avant :p
Mais pourquoi pas !

Je pensai aussi mettre un système de condition pour les liens sur la carte... Ex :

distance : <= : 1 : "?action=deplacement&x=%x&y=%y"

Qui s'interpretera comme : Tout les cases dont la distance au joueur est inferieur ou egal à 1 auront comme lien ?action=deplacement&x='.$x.'&y='.$y.'

Pour que chacun puisse customiser sans aller retoucher le code.


RE: Module de carte héxagonale 2D - 3D Iso avec relief - comg - 13-06-2009

Et voici mon premier essai avec des tuiles en 2Diso complètes avec relief...
C'est moche, je vous l'accord, mais l'idée est là !

Par contre je sais pas comment je vais me debrouiller pour les textures :/

[Image: map.tif]


RE: Module de carte héxagonale 2D - 3D Iso avec relief - hit - 14-06-2009

Applique une texture uniforme sur toute la tuile (qui ne prend pas en compte la pente) et ensuite tu change juste la luminosité pour l'impression de pente. Je ne pense pas qu'étirer la texture rende bien mieux :/
Amuse toi bien ^^


RE: Module de carte héxagonale 2D - 3D Iso avec relief - wild-D - 14-06-2009

ça dépend des textures, mais pour certaine faudra les étirer: genre route ou chemin (si on considère le cas ou une route aurait la largeur d'un coté, donc irait d'un coté à l'opposé ça nous fait un gros rectangle, reste 2 triangles qui sont du décor verdure). On pourrait difficilement laisser la texture telle quelle pour une tuile en pente.

moi j'ai un petit soucis pour voir comment tu gère les "terrains accidenté". Y se passe quoi si on a plus de relief ? je veux dire si au lieu d'avoir des colline d'altitude 1, je veux avoir une "montagne" qui culmine à altitude 3.


RE: Module de carte héxagonale 2D - 3D Iso avec relief - comg - 14-06-2009

hit : C'est déjà le principe en 2D (la tuile de "structure" a des cotés assombris (transparence)) cependant dans ce cas ci, le problème c'est la forme de la tuile de texture, car les tuiles ici font 89x102 je crois, et si je met la texture sur toute la tuile -> Argh !

wild-D : Je n'ai géré que le relief de 1. Cependant en arrangeant le code pour qu'un relief 1 ne soit jamais adjacents à un relief supérieur, on pourrait imaginer des reliefs.

Je compre cependant gerer le relief -0.5 (eau), avec le passage de -0.5 à 1 (falaise) qui sont déjà compris dans la taille de la tuile.

Peut être avez vous de meilleures idées cependant ?


RE: Module de carte héxagonale 2D - 3D Iso avec relief - hit - 14-06-2009

Benh t'es obligé d'étirer la texture Wink
J'ai l'impression que tu n'a pas trop compris ma solution pas grave,
Bonne chance


RE: Module de carte héxagonale 2D - 3D Iso avec relief - comg - 14-06-2009

Je ne dois effectivement pas avoir saisi.
Tu sembles cependant avoir une idée derrière la tête. Une idée que je serai ravi d'explorer !


RE: Module de carte héxagonale 2D - 3D Iso avec relief - hit - 16-06-2009

Après réflexion ma méthode ne marche effectivement pas, désolé...
Tu peux toujours essayer de faire une impression de relief avec un jeu d'ombre et lumière :/