I played around with the creation of a cycle as described in the designer documentation. It works good when it’s done as described, but shows some errors when I try to extend it.
I want the loop section (in the middle) to start only when the start section is done, so I set the Start mode of the looped sound to "Wait for previous". When the key off is sent, I want the loop to play to its end and then stop, so I choose "Loop and play to end" as the loop mode. Finally, the stop section should start only when the loop is finished, so I set its start mode to "Wait for previous". The event itself is defined as a oneshot event in the event property tab, because I want it to automatically stop playing when it’s finished.
When I play this event in the designer, it works as expected in most cases. That means, sometimes, the looping sound does not finish playing, instead, the loop starts as soon as the cursor reaches its region (it doesn’t wait for the start sound to finish), then, when I press key off, the end sound starts as soon as the cursor reaches it, too, but the loop sound simply continues playing till infinity – or I press stop.
When I play it in the event player, I get strange behaviours, too. In most cases, it works, but when I start pressing the keyoff button quickly after I started the event, it breaks, sometimes the cursor sticks at some position 25% from the end, sometimes it plays through to the end, and from then on, each time I press play, I can only hear the start sound (loop and end are gone somehow) and cannot get it back running properly until I unload and reopen the project.
I tested further using the 3dDemo project provided with the programmers API, where I get the same effects as in the designer tool, but in 100% of the cases: I start the event using Event::Start(). The start sound is being played, the loop begins too early. I call keyOff() on the loop cursor param. The stop sound is being played immediately instead of waiting for the loop to finish, the loop continues playing, even if I explicitly stop the event using Event::Stop().
Has anyone else experienced this?
Greetings and thanks for your patient reading 😉 ,
- Agrokonz asked 12 years ago
- You must login to post comments