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

Algorithmes et structures de données Discussion :

Calcul d'ombrage avec une lumiere de type spot


Sujet :

Algorithmes et structures de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Calcul d'ombrage avec une lumiere de type spot
    Bonjour,

    Je développe un éditeur de scène. Pour le moment, je suis en mesure de créer des lumières simple. Mais je suis a la recherche de documentations sur les lumières de type spot

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Quel type d'environnement de création s'agit-il ? (lancer de rayon ?)

    Qu'entends-tu également par lumière simple ? (ponctuelle et omnidirectionnelle ?)

    Sinon, un spot typiquement, c'est une lumière directionnelle selon un cône donné. Si tu veux un réalisme plus grand, tu peux avoir deux cônes un pour la lumière et un pour le cône de l'affaiblissement (pour avoir une pénombre progressive)

  3. #3
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par PRomu@ld
    Sinon, un spot typiquement, c'est une lumière directionnelle selon un cône donné. Si tu veux un réalisme plus grand, tu peux avoir deux cônes un pour la lumière et un pour le cône de l'affaiblissement (pour avoir une pénombre progressive)
    +1

    Spot = Position + Direction + Angle_lumiere_max (radius) + Angle_lumiere_zero (falloff)

    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    1) J'utilise le lancer de rayon
    2) la lumière actuelle et ponctuelle

    3) mon spot est bien une lumière directionnelle selon deux cônes.

  5. #5
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    et bien dans ce cas:

    Pour un spot défini par:
    - Source (point 3d)
    - Direction (vecteur 3d)
    - Radius (cosinus de l'angle)
    - Falloff (cosinus de l'angle angle)

    et pour un point d'intersection Rayon/Objet "P" (point 3d)

    1. tu calcules le vecteur normalisé (Source,P) qu'on appelera "U"
    2. tu fais le produit scalaire (U,Direction), ca te donne le cosinus de l'angle entre les 2 vecteurs qu'on appelera "CosAngle"
    3. tu calcules le coeficient d'eclairement "coef" suivant l'angle

    si CosAngle>Radius alors coef=1 (eclairement maximum, dans le 1er cône)
    si CosAngle<Falloff alors coef=0 (eclairement nul, au dela du 2n cône)
    sinon coef = (CosAngle-Falloff) / (Radius-Falloff) (lineaire entre les 2 cones)

    4. tu utilises ce coef pour attenuer l'intensité lumineuse du spot. Par exemple en multipliant l'intensité par "coef" ou par "coef^t" (t = constante, comme dans le modele spéculaire de phong).
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Merci pour l'info

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    cela fonctionne
    Images attachées Images attachées  

  8. #8
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Cool. J'ai pas trop perdu la main en raytracing....
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/11/2006, 13h28
  2. Réponses: 3
    Dernier message: 22/10/2006, 23h15
  3. Calculer la longueur d'une variable de type entier
    Par juliendeparis dans le forum C
    Réponses: 13
    Dernier message: 08/06/2006, 13h44
  4. [MySQL] Tester une égalité avec une donnée de type PASSWORD
    Par tiyolx dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 12/03/2006, 16h06
  5. Calculer cos(x) avec une série
    Par Évariste Galois dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 23/08/2005, 15h47

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