Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [Résolu]sf::Listener  (Lu 3431 fois)

0 Membres et 1 Invité sur ce sujet

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
[Résolu]sf::Listener
« le: Juillet 05, 2015, 02:00:42 am »
Bonjour, j'ai un jeu avec écran splitté , j'utilise la spatialisation des sons , avec l'effet doppler , je gère aussi des camera , une pour chaque vue ( 4 dans mon cas ) , chaque camera possède un deque contenant les instances du son pour géré l'effet doppler lors des scroll ou des mouvement de mes acteurs , jusque là pas de problème , tout marche bien , chaque camera possède donc ses propres sons , chaque camera marche donc impeccablement toute seule , dès lors qu'il y en a 2 , j'ai pensé naïvement changé le listener de position et de "switché" entre les camera , mais c'est la cata , je dois "muté" toutes mes camera et en gardé une seule qui "emet" du son. si je désactive la spatialisation ( plus besoin de listener donc ) , comment je pourrais jouer sur la balance du son , (pour mon rendu stéréo & géré moi même le fadeout) , aucune méthode ne me le permet.
« Modifié: Juillet 05, 2015, 03:50:58 pm par Cpl.Bator »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : sf::Listener
« Réponse #1 le: Juillet 05, 2015, 11:41:40 am »
Personnellement, j'ai rien compris.
Laurent Gomila - SFML developer

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re : sf::Listener
« Réponse #2 le: Juillet 05, 2015, 12:26:25 pm »
- jeu a écran splitté

- le son peu être émis sur chaque camera , exemple : d'un coté on voit un tireur , de l'autre la cible , vu que le monde est plus grand que l'écran , les camera ne sont donc pas à la même position.  d'ou le split.

- le tireur tir, donc émet un son.

- la cible explose, elle émet un son aussi.
mais je peu utilisé qu'un seul listener... si mon listener est sur la camera du tireur , on entend pas le son de l'explosion , si le listener est sur la cible, on entend pas le tireur... , si je switche la position du listener entre les 2 , plus rien ne fonctionne. le son est cracra. 

- la solution , désactivé "la spatialisation" , problème : plus de stéréo , plus de fadeout du son suivant sa distance d'émission. manque des méthode pour jouer sur la balance d'un son non spatialisé , ou même la possibilité d'avoir plusieurs listener ( ca impliquera d'avoir plusieurs contexte et de loader autant de fois le bufer qu'il y a de contexte )

j'éspère avoir été clair , j'ai pas picolé pourtant...

kimci86

  • Full Member
  • ***
  • Messages: 123
    • Voir le profil
Re : sf::Listener
« Réponse #3 le: Juillet 05, 2015, 12:58:46 pm »
D'après ce que j'ai compris, on peut reformuler le problème ainsi :
Si on représente une caméra par une sf::View (capteur photographique) et un sf::Listener (microphone), alors on ne peut avoir qu'une seule caméra car on ne dispose que d'un unique sf::Listener.

La question est alors de savoir comment passer outre cette limitation.

D'après quelques recherches, il y a au moins ces deux méthodes :
  • créer plusieurs contextes OpenAL. (forum Orgre3D)
  • ruser en gardant un unique listener fixe et en translatant tous le émetteurs. (forum OpenAL)

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re : sf::Listener
« Réponse #4 le: Juillet 05, 2015, 01:27:59 pm »
Citer
ruser en gardant un unique listener fixe et en translatant tous le émetteurs. (forum OpenAL)

  ca ne fonctionne absolument pas , ou alors , j'ai pas compris comment le translaté sans affecté les autres sons des autres caméra.

Citer
créer plusieurs contextes OpenAL. (forum Orgre3D)

Oui, mais je casse le principe de la SFML et de la gestion des sons ?

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re : sf::Listener
« Réponse #5 le: Juillet 05, 2015, 01:30:47 pm »
Citer
  ca ne fonctionne absolument pas , ou alors , j'ai pas compris comment le translaté sans affecté les autres sons des autres caméra.

En fait , je laisse le listener en 0,0,0 , et je déplace tout mes sons relativement à sa position , et non pas à celle des cameras , je vais faire des test et voir si c'est concluant.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : sf::Listener
« Réponse #6 le: Juillet 05, 2015, 01:51:22 pm »
Oui, la vraie bonne solution serait en effet de créer plusieurs contextes, mais SFML ne permet pas de le faire.
Laurent Gomila - SFML developer

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re : sf::Listener
« Réponse #7 le: Juillet 05, 2015, 03:50:39 pm »
D'après mes test, dès lors que l'on veut plus d'un sf::Listener , il faut donc le positionner en 0,0,0 , puis de déplacé les sons relativement au listener  , une sorte de listener "partagé" par toute mes vues.
@Kimci86 Merci de m'avoir redonner le lien du forum d'openAL , j'ai pu relire à tête reposé ^^