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

Projets Discussion :

ProjectW: some top down multiplayer sandbox game


Sujet :

Projets

  1. #21
    Membre éprouvé
    Avatar de Gregouar
    Profil pro
    Chercheur en mathématiques
    Inscrit en
    Décembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur en mathématiques

    Informations forums :
    Inscription : Décembre 2007
    Messages : 246
    Points : 901
    Points
    901
    Par défaut
    J'ai mis en place une première version basique de la génération de Points d'intérêts. Du coup, voilà une petite vidéo où je me promène dans le monde et en découvre un:

  2. #22
    Membre éprouvé
    Avatar de Gregouar
    Profil pro
    Chercheur en mathématiques
    Inscrit en
    Décembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur en mathématiques

    Informations forums :
    Inscription : Décembre 2007
    Messages : 246
    Points : 901
    Points
    901
    Par défaut
    Et pour continuer, génération de chemin entre les points d'intérêts, en utilisant une version modifiée de l'algorithme de Kruskal, du bruit de Perlin et A*.

    Nom : pathGeneration6bis.jpg
Affichages : 196
Taille : 181,6 Ko

    Et en jeu, ça donne ça:


  3. #23
    Membre éprouvé
    Avatar de Gregouar
    Profil pro
    Chercheur en mathématiques
    Inscrit en
    Décembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur en mathématiques

    Informations forums :
    Inscription : Décembre 2007
    Messages : 246
    Points : 901
    Points
    901
    Par défaut
    Un petit apercu de ce sur quoi je travail, utilisant la même base que le reste:

    Nom : randomDungeon3.png
Affichages : 149
Taille : 970,5 Ko

    Avec un zoom sur la torche parce c'est moi qui l'a fait tout seul comme un grand



    Vous pouvez aussi voir du coup que j'ai ajouté du bloom.

  4. #24
    Membre éprouvé
    Avatar de Gregouar
    Profil pro
    Chercheur en mathématiques
    Inscrit en
    Décembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur en mathématiques

    Informations forums :
    Inscription : Décembre 2007
    Messages : 246
    Points : 901
    Points
    901
    Par défaut
    Pour ceux que ça manquait de Alag, j'ai repris l'idée de faire des contact shadows/ambient occlusion en calculant les bent normals. Il y a encore pas mal de boulot à tweaker les paramètres pour améliorer le résultat mais ça ressemble déjà à quelque chose:


    Voilà une comparaison, sans et avec (vous pouvez voir des artefacts au niveau du mur d'ailleurs):
    Nom : bentNormalsComparison.gif
Affichages : 136
Taille : 747,5 Ko

    Techniquement parlant, au moment de calculer l'occlusion en screen space pour le SSAO, je fais aussi la moyenne des rayons des rayons qui ne sont pas occludé. Cela me donne une idée de la direction "la moins occludée". Du coup, je le fais en half résolution:
    Nom : BentNormalsHalf.png
Affichages : 113
Taille : 314,9 Ko

    Avec upscale & blur intelligent (basé sur le gbuffer de position):
    Nom : BentNormalsUpscaled.jpg
Affichages : 126
Taille : 81,2 Ko
    (Au passage, noté les artefacts de banding, ça montre bien que je dois encore améliorer mon sampling).

    Finalement, quand je calcule le lighting, je mixe entre le NdotL (produit scalaire de vecteur normal et vecteur de direction d'éclairage) et le produit scalaire de la bent normal et du vecteur d'éclairage, en fonction de la quantité d'occlusion (qui est aussi utilisée pour l'occlusion de l'éclairage ambiant, mais sans tenir compte des bent normals). J'utilise le minimum entre ce nouveau résultat et l'ancien NdotL comme nouveau NdotL pour calculer mon shading. Cela a pour effet que le côté exposé à la lumière reste inchangé par rapport à avant (donc éclairé), alors que l'autre côté n'est pas éclairé puisque la bent normal pointe dans la direction opposée.

    Ce n'est clairement pas aussi précis que des ombres projetées sur une shadowmap, mais le gros avantage c'est que ça a un coût fixe, qui rentre plus ou moins déjà dans le budget du SSAO (je dirais juste qu'il faut lancer un peu plus de rayons que d'habitude pour avoir un résultat "correct"). Vu le nombre de lumières qui peuvent influencer l'écran en même temps (j'atteins facilement plus de 50 avec toutes mes torches dans les environs), je pense que ça ne serait pas raisonnable de calculer une shadowmap pour chacune d'entre elles. En plus, ça m'épargne la peine de devoir commencer à allouer/libérer les shadowmaps quand les lumières arrivent ou sortent de la zone d'affichage.
    Bien sûr, en contrepartie, ça vient avec tout un tas de désavantages. Notamment, le fait que c'est beaucoup moins précis et n'affiche des ombres que proches de l'obstacle (d'où le fait que je parle plutôt de "contact shadow").

    Je ne sais pas si on s'en rend vraiment compte sur les screen & gifs, mais ça donne quand-même vraiment plus de profondeur à l'image, et surtout du dynamisme (ça fait toujours plaisir quand on voit des ombres bougés alors qu'on passe devant une lumière.
    Nom : screenLightingDungon.png
Affichages : 117
Taille : 687,7 Ko

    En bonus, je vous poste un gif de l'animation des torches qui s'allument quand on passe. L'idée serait que ça aiderait le joueur à savoir les salles/couloirs qu'il a déjà visité (désolé pour la qualité un peu moisie):

Discussions similaires

  1. Approches top-down et hybride
    Par nandy.c dans le forum Conception/Modélisation
    Réponses: 3
    Dernier message: 08/01/2014, 14h29
  2. [Projet en cours] XENOID MAZE - top down shooter pour PC
    Par Joint Loic dans le forum Projets
    Réponses: 54
    Dernier message: 03/07/2012, 16h53
  3. Réponses: 0
    Dernier message: 21/12/2011, 20h53
  4. Différence entre un webservice bottom up et top down?
    Par SiX-P4cK dans le forum Services Web
    Réponses: 2
    Dernier message: 18/07/2011, 08h51

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