• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

107 Neutral

About Iveco

  • Rank

Personal Information

  • Location
  1. Thank you very much for you reply. Getting help with native XAudio2 implementations is rare, and knowledge is golden (or kept like secrets) in this area. >> I mean do you directly start and stop your source voices with a new buffer for each sound? << Correct. I've attached the FXMasterLimiter to the MasterVoice with initialstate set to true and I am playing all SourceVoices directly with a newly created buffer for each sound, while the SourceVoices are pre-created on game start and only a fixed amount of them exists with preconfigured wave format settings. >> If you are stopping the voice you might want to use the XAUDIO2_PLAY_TAILS flag to make sure the playing buffer is not truncated which could potentially produce pops/clicks. << I've tried this, but it did not have any effect. I think it's used for Reverb effects and co. and would make sense to use there, but it didn't help with my particular problem. I've even tried delaying the Stop() for a few frames or using OperationIDs to delay the stopping proccess, but this didn't help. I also played around with the FXMasterLimitere EffectParamers (Loudness and Release) but no combination helped. >> Do the sounds you are submitting always start and end with silence? << Here you got me on the right track. The soundeffect I was playing didn't have a silence on the end. After adding a minor silence at the end, I've got rid of the glitch after stopping the SourceVoice. I am stopping the SourceVoices as soon as the BuffersQueued is zero and the pCurrentBufferContext is NULL. ---------------- Thank you very much for your piece of information which helped me finding this problem. I will keep sure the mastered non-loopable sound assets will have a short silence on start and beginning. Do you know which length at the end would make sense best? Is there any standard for this? Regards from Germany, Iveco
  2. Hello, I am using XAudio2 2.6 and I noticed many of my sounds are having slight glitches at the end. When I disabled my FXMasteringLimiter all clipping and glitches/clicks/pops at the end of the sounds were gone. But I need to have a compressor/limiter to prevent the peaks when too many sounds are playing. Quote from someone: "The mastering limiter applies a dynamic volume-adjusting algorithm that helps ensure that mixing lots of sounds never clips, and therefore avoids the distortion. On one project of mine, it completely cured some horrible distortion when a lot was going on." So how come the internal XAudio2 XAPO is so weak that it actutally does produce glitches when being used? I am doing something wrong? Regards, Iveco
  3. You can use XAudio2 callbacks or use the bufferstate of the SourceVoice directly, and check if this is empty. [code] XAUDIO2_VOICE_STATE state; sourcevoice->GetState(&state); if (state.pCurrentBufferContext == NULL && state.BuffersQueued == 0) { // SOUND FINISHED } [/code] When you shutdown the game, you can stop all you running SourceVoices and delete them afterwards (prior shutting down XAudio2). Obviously this will produce glitches, lower the volumes for a few frames (fadeoff) until destroying it.
  4. Thank you very much for your detailed answer!
  5. I need a small help with volume curves & distances. It works fine I can hear a difference in the loudness when I am near or far from the object, but the problem is the volume never goes really down to zero even if DSPSettings.pMatrixCoefficients[0] and DSPSettings.pMatrixCoefficients[1] are both 0.0 (correct with the right CurveDistanceScaleFactor) (I am using the default linear curve) - so that I can still hear the object in thousands of meters away. It works fine in the 3DExample, but I followed it explicitly and when I have 0.0 & 0.0 pMatrixCoefficients I still hear the sound. What can be the reason for this? My Curve is: 0.0, 1.0, 1.0, 0.0 and the matrixcoef's are correctly to 0.0 at my wished distance but I can still hear a sound. Edit: The problem has been solved. I noticed that a change via SourceVoice->SetChannelVolumes() (with the values from pMatrixCoefficients) worked fine. After further investigation, I found out that the problem was the SourceVoice's sendlist. After using a correct sendlist I was able to use SetOutputMatrix() again. [Edited by - Iveco on September 15, 2009 6:30:30 AM]
  6. Hello, I am using XAudio2 and have two questions about the built-in effects. 1) XAudio2 built-in effect: "Volume Meter". For what reason can this be useful or needed (in a game)? This can just display volume levels? 2) In XAPO, there is a XAPOFX class having a few more effects. I do understand these except one: "FXMasteringLimiter" -> A volume limiter. For what reason should I use a volume limiter, if I can control the volumes manually on each SourceVoice? What kind of reason should I have to put this on a MasteringVoice? What kind of goal can I reach with this? Last but not least: Does someone have experiences with volumecurves in XAudio2 (especially X3DAudio) to control the volume rolloffs per distances? How do I set the maximum volume distance per each emitter, does every emitter need to have it's own volumecurve then? The CurveDistanceScaler factor shouldn't be changed, when it's correctly setup? Thanks for any help. Regards, Iveco