Question

Je travaille avec une équipe qui construit un moteur pour une variété de mini-jeux 2D et éventuellement 3D. Le problème auquel nous sommes confrontés est une API solide, multi-plateforme et solide. De toute évidence, DirectX est hors de question en raison de nos besoins en capacités multiplates-formes. SDL est agréable et fonctionne très bien, mais soyons honnête. SDL_Mixer est un peu limité dans ses possibilités. Nous l'utilisons actuellement, mais lorsque nous développerons éventuellement la 3D, ce sera un problème.

Je me suis amusé avec OpenAL, mais la plupart de la documentation que j'ai trouvée est relativement obsolète et ne semble pas fonctionner très bien. Je suis disposé à apprendre OpenAL et à me frayer un chemin à travers elle, mais j'aimerais être un peu plus sûr que je ne perds pas mon temps. Hormis les tutoriels DevMaster, je n’ai pas vu beaucoup de documentation qui m’a bouleversé. Si quelqu'un a du meilleur matériel que ce que j'ai trouvé, ce serait génial.

J'ai également vu des projets tels que FMOD, qui semble décent malgré les licences. Cependant, comme OpenAL, ils ont une documentation presque inexistante. Bien sûr, je peux utiliser le code pour en déduire mes options, mais cela me semble un peu pénible étant donné que je pourrais éventuellement payer pour cela.

Quoi qu'il en soit, pensées, commentaires, préoccupations? Merci beaucoup!

Était-ce utile?

La solution

(note: j'ai de l'expérience avec FMOD, BASS, OpenAL et DirectSound; et bien que j'énumère d'autres bibliothèques ci-dessous, je ne les ai pas utilisées).

BASS et FMOD sont bons (et en fait j’ai beaucoup aimé la documentation de FMOD; pourquoi diriez-vous qu’elle est" non existante "). Il existe également un système audio Miles , Wwise , irrKlang et d'autres packages de middleware.

OpenAL est supposé être multiplate-forme, et sur chaque plate-forme, il a ses propres défauts. Ce n'est pas exactement "ouvert" non plus. Et je ne suis pas sûr de l'avenir. il semble que cela se soit bloqué lorsque Creative l'a saisie. Des efforts récents ont toutefois été déployés pour construire la mise en œuvre à partir de zéro: OpenAL Soft .

Ensuite, il y a les API de plate-forme native, telles que DirectSound ou XAudio2 pour Windows, Core Audio pour OS X, ALSA pour Linux, les API propriétaires pour les consoles, etc. Je pense que l'utilisation d'API natives sur chaque plate-forme est très utile; il vous suffit de résumer sous l’interface commune dont vous avez besoin et d’avoir des implémentations différentes sur chaque plate-forme. Bien sûr, cela représente plus de travail que de simplement utiliser OpenAL, mais OpenAL n’est même pas disponible sur certaines plates-formes et présente des problèmes sur d’autres plates-formes que vous ne pouvez même pas corriger (car il n’ya pas de code source que vous pouvez corriger). Octroyer une licence à une bibliothèque commerciale telle que FMOD ou Miles est une option dans la mesure où tout ce travail dépendant de la plate-forme est déjà effectué pour vous.

Nous utilisons OpenAL au travail à l’heure actuelle, mais nous envisageons de nous en détourner, car cela ne va tout simplement pas et nous ne pouvons pas régler les problèmes. Donc, bien qu’OpenAL soit facile à démarrer, mon vote n’est pas une bonne option.

Autres conseils

J'ai utilisé DirectX, FMOD et Wwise sur diverses plates-formes de jeux. Je ne parlerai pas de DirectX ici car d’autres personnes auront beaucoup de commentaires ici ;-)

Voici ce que vous devez prendre en compte:

  • Licence, je mets cela en premier parce que cela pourrait prendre votre décision à votre place. Demandez à votre avocat de les examiner et assurez-vous de bien comprendre les coûts et les restrictions.

  • API - FMOD possède une API très propre et minimale, très facile à maîtriser. Wwise offre un peu plus de fonctionnalités, mais son API semble beaucoup plus volumineuse et encombrante, avec des concepts difficiles à comprendre.

  • Outils - Wwise dispose d’outils très sophistiqués, conçus pour les concepteurs audio plutôt que pour les programmeurs. Si vous souhaitez donner aux concepteurs audio beaucoup de contrôle direct et d’expérimentation, Wwise est peut-être la solution. FMOD rattrape son retard dans le département outillage mais ses outils sont plus destinés aux programmeurs, je pense.

  • Performance - C’est quelque chose que vous devez évaluer vous-même. Vous ne pouvez pas dire que l’un est meilleur que l’autre, cela dépend de votre plate-forme et de votre type de jeu. Vous pouvez obtenir des statistiques sur les performances - prenez-les avec un grain de sel, elles pourraient bien être idéalisées d’une manière ou d’une autre. Déterminez votre budget de performances (par exemple, 2 ms par image pour le son, le nombre de canaux X, le nombre de flux X) et effectuez de nombreux tests pour différents formats de sons, fréquences d'échantillonnage et profondeurs de bits - tracez ces graphes sous forme graphique.

  • Support technique - FMOD et Wwise ont tous deux de très bons canaux de support technique, de bons techniciens. Vérifiez si les coûts d'assistance sont en sus.

Si vous me demandez d’en choisir un. FMOD - c’est vraiment un très bon produit, ces gars-là font un excellent travail.

J'ai récemment travaillé sur un titre AAA PC utilisant FMOD. Notre programmeur audio a adoré ça et a été très productif, alors je donne un coup de pouce à FMOD. Nous utilisons uniquement FMOD sous Windows, je ne peux donc pas en parler du tout sur plusieurs plates-formes.

La bibliothèque Bass fonctionne sur Mac et Windows et dispose d'une bonne documentation et d'exemples de SDK:

http://www.un4seen.com/

J'ai livré deux jeux PC avec Miles Sound System et cela a très bien fonctionné. MSS est facile à intégrer, rapide et stable. Le support que vous obtenez de RAD Game Tools est excellent. Cette bibliothèque a été utilisée dans plus de 4500 jeux, ce qui la rend solide comme un roc. C'est pas cher aussi!

D'autre part, MSS est une bibliothèque de bas niveau comparée à FMOD ou WWise. La bibliothèque n'offre aucun moyen au concepteur sonore de contrôler les volumes sonores, l'atténuation, la randomisation, l'atténuation ou à peu près tout ce qui n'est pas stocké dans le fichier son lui-même. Vous devrez écrire vous-même ces caractéristiques de haut niveau.

C'est pourquoi j'évalue WWise pour mon prochain match. Il a un ensemble d’outils beaucoup plus développé que Miles. Cela a pris plus de temps pour être opérationnel, mais cela fonctionne bien jusqu'à présent. Je ne suis pas assez avancé dans son utilisation pour vraiment proposer une recommandation dans un sens ou dans l'autre.

Wwise est probablement la solution la plus complète pour un développement sain en termes de flux de travail. La façon dont il a été conçu vous fait vraiment gagner du temps de programmation et vous donne plus de possibilités d'expérimenter et de construire des structures sonores complexes. Avec Wwise, nous avons pu organiser le projet pour notre équipe.

Personnellement, j'aime beaucoup leur système de musique interactif. Il est flexible et permet à votre musique de réagir en douceur aux entrées de votre jeu.

De plus, le soutien d’Audiokinetic est également très net. Toujours rapide et prêt à aider.

Je recommande.

Je peux également me porter garant pour FMOD, qui est très utilisé dans le développement de jeux en raison de ses outils et de son excellent support multiplate-forme. C'est un plaisir de travailler avec les concepteurs. Le problème est que cela nécessite une licence coûteuse pour le développement commercial.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top