IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Génération Aléatoire de Terrains : Heightmap et 3D


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 699
    Points
    8 699
    Billets dans le blog
    43
    Par défaut Génération Aléatoire de Terrains : Heightmap et 3D
    Bonjour à tous !

    Cet article est une introduction à la génération aléatoire de terrains en 3D à l'aide d'une heightmap. Il aborde un algorithme de génération, le Diamond Square, et un filtre de lissage, le Box Blur.

    N'hésitez pas à faire part de vos remarques, commentaires ou propositions d'améliorations !

    Génération aléatoire de terrains
    Tutoriels et FAQ TypeScript

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 072
    Points : 7 974
    Points
    7 974
    Par défaut
    Interessant article, mais tiens ca ressemble un peu à http://hiko-seijuro.developpez.com/a...iamond-square/ ? (bon y'a la partie 3D en plus certes).
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 699
    Points
    8 699
    Billets dans le blog
    43
    Par défaut
    Je tiens à rappeler que je mentionne l'article cité :
    Pour ceux qui souhaitent rentrer dans le détail du fonctionnement de l'algorithme, il existe un très bon article en français rédigé par Hiko Seijuro.
    Aussi, à défaut d'être révolutionnaire, mais ce n'était pas mon but, je pense que mon article a sa propre originalité sur plusieurs points :
    1. Je propose un algorithme du Diamond Square in extenso intégré à l'article.
    2. L'algorithme du Diamond Square que je présente est itératif à contrario de celui que tu cites.
    3. Je propose une implémentation TypeScript/JavaScript de l'algorithme du Diamond Square pour une utilisation Web.
    4. Mon article présente la structure de codage d'une heightmap 8 bits.
    5. Je présente une implémentation pour un rendu en 3D, comme tu le soulignes.
    6. Je présente un algorithme de lissage, le Box Blur, indépendant du Diamond Square ce que ne fait pas l'article que tu cites.
    Tutoriels et FAQ TypeScript

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 072
    Points : 7 974
    Points
    7 974
    Par défaut
    Mon message ne se voulait pas critique et effectivement je n'avais pas pris certains point que tu cites en compte (donc la version itérative qui me semble un point important)
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 699
    Points
    8 699
    Billets dans le blog
    43
    Par défaut
    Aucune méprise de mon côté. Mais c'était juste pour préciser pour d'autres. Je n'ai pas fait de plagiat
    Tutoriels et FAQ TypeScript

  6. #6
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 567
    Points : 56 572
    Points
    56 572
    Billets dans le blog
    40
    Par défaut
    Bonjour,

    Ton article m'a grandement inspiré au point de proposer un petit projet à des élèves de Terminale :


    Un générateur d'étapes de montagne pour course cycliste

    Bravo pour la qualité de tes articles

  7. #7
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 699
    Points
    8 699
    Billets dans le blog
    43
    Par défaut
    Ça me fait plaisir que mon article a pu être utile à quelqu'un

    Je n'aurai pas pensé par contre qu'un tel sujet puisse être abordé en Terminale. C'est audacieux !
    Vu la vidéo, tu as l'air d'avoir réussi ton pari. Vraiment sympa comme résultat.

    Par curiosité, quelles consignes as-tu donnés aux élèves ? Avaient-ils déjà à disposition un programme ou devaient-ils programmer aussi ?
    Tutoriels et FAQ TypeScript

  8. #8
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 567
    Points : 56 572
    Points
    56 572
    Billets dans le blog
    40
    Par défaut
    Ce sont des élèves de Terminale ISN, des ch'tis gars motivés.

    Mais je dois t'avouer que la vidéo de mon message précédent est un prototype que j'ai moi-même réalisé vite fait histoire d'étudier la faisabilité mais j'espère bien qu'ils arriveront à un résultat similaire à la fin de leur projet dans deux mois (voire même en poussant davantage vers la 2D, on verra).

    Au départ, beaucoup de discussions et de réflexion sur l'algorithme (midpoint displacement), le principe de la méthode n'étant pas très compliquée. Nous sommes partis sur une méthode récursive.

  9. #9
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 699
    Points
    8 699
    Billets dans le blog
    43
    Par défaut
    Bon proof of concept dans ce cas.
    Les élèves n'ont plus qu'à ^^
    J'espère qu'on aura un débrief de ce projet de ta part
    Tutoriels et FAQ TypeScript

  10. #10
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 567
    Points : 56 572
    Points
    56 572
    Billets dans le blog
    40
    Par défaut
    Citation Envoyé par yahiko
    J'espère qu'on aura un débrief de ce projet de ta part
    sans faute, le projet se termine début juin.

Discussions similaires

  1. Génération d'un terrain à partir d'un quadtree
    Par Premium dans le forum Développement 2D, 3D et Jeux
    Réponses: 12
    Dernier message: 22/11/2006, 20h46
  2. génération aléatoire
    Par acewb00 dans le forum MFC
    Réponses: 1
    Dernier message: 02/12/2005, 10h46
  3. génération aléatoire de couleur claire
    Par jiraiya dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 25/02/2004, 20h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo