Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

DarKDinDoN

7
Posts
A member registered Jun 21, 2021

Recent community posts

Hi, thank you for the release. Didn't have much time to test it. Will do soon :)

(1 edit)

Hi,

- Ok thanks for the tip.

- That's weird, I can't reproduce this issue today. Next time I see this, I'll upload a screenshot here.

- Yes, loading all sounds of all categories at once. I found that each library correspond to a set of scenes. Those are all connected and need to be available (loaded) to be played as soon as possible to keep the ambiance alive.
It's honestly just a very small UX improvement.

As for the last bullet point "stacking of window". I was thinking that a side pane might be a solution.
Instead of windows that obfuscate the background, a side pane (on the right) might be better for the overall user experience. The user could freely click on any element and the configuration would be displayed on this pane. No need to open and close windows.
The pane would take almost the entire height, with a simple scrollbar if needed.
Also, that pane could be extended in width (vertical split) to reflect the configuration of an embedded element (in case of a sound within an instruction).

I think it's worth exploring the idea.

(9 edits)

Hello,

First of all, I'd like to thank you for your work on the atmospheres.

I'd like to suggest a second wave of improvements. I've written the following as a to-do list, because it's easier for me. This explains the imperative tone of the following lines, for which I apologize.

1. Bugs:

  • Exporting a library doesn't export the sound files referenced only in the instructions (and not in the library itself as direct buttons). 

  • Deleting a library from the library navigation menu does not work. Upon restart, deleted libraries are still displayed. However, exporting/importing the general configuration will do the trick.

  • The duration displayed on soundtracks does not change colour. It is not visible on darker tones.

  • The search menu for a sound within an instruction displays search results, but the titles of these search results are not visible.

2. Features:

  • Being able to configure a sound directly in an instruction. This should solve the problem of sound duplication. If two instructions use the same sound, they are both dependent on the same sound's settings (sound level, pan, start, end, etc.), forcing the user to duplicate the sound to have a different configuration.

    I think there are two approaches to the problem:

    - Either by allowing to store sounds directly within an instruction. The sound doesn't really exist as a standalone button in the library. Instructions allow for editing a stored sound and all its settings.
    In this case, a nice to have is being able to drag and drop sound files (from OS explorer) directly within the instructions' pane.
    I'm not sure if that's the best approach, to be honest.

    - Or by creating sounds the classic way, but when it is dragged into an instruction, the user still has the option to override most of the sound settings without modifying the original sound settings.
    In this case, the instruction doesn't store the sound itself, but rather a copy of the sound settings. Settings that have not been override within the instruction should default to the original sound settings.

    As en example of this feature: let's assume two scenes that take place in a forest. The first scene is near a waterfall, the other is further away from the waterfall. Both scenes use the same sounds, except the volume of the waterfall sound change. In the first scene the waterfall is louder than in the second scene.

    Note : this is somewhat related to the first bug. Either a sound can exist as a stored file within an instruction (first approach) and should be exported with the rest of the sound files. Or a sound must first be created in the library before it can be imported into an instruction (second approach), in which case a sound that exists in an instruction should not be deleted from the library.

  • Spatialization of sounds, part I. I think this is already possible with the "pan" setting.
    However, it would be nice to have a random spatialization angle (between two values). This way, the sound and each subsequent loop would be played back at a random angle.

    This is very interesting for repeating sounds (like a bird sound). It gives the illusion that the sound doesn't always come from the same point in space, and greatly enhances the realism of an atmosphere.

  • Spatialization of sounds, part II. Same idea as the previous bullet point but with a random volume, further increasing the realism of an atmosphere.
    Might not be just a "volume" thing. It's the concept of distance, and I'm not sure the usual algorithms for that are just adjusting the volume (there might be some "muted" effect also).

  • Having a mechanism in an instruction to launch the instruction while stopping all other sounds and instructions.

    At the moment, I'm setting a cross-fade on the first element played in each instruction. This stops all sounds previously playing. However, it doesn't stop the ongoing instructions (especially those with sounds set to loop with a random delay).

    When building atmospheres, we often have several buttons for several atmospheres. Generally (but not necessarily), launching an atmosphere (instruction) must stop all sounds and instructions currently playing (with a fade).

  • The favourites bar is too small and should be able to hold more buttons. It should be expandable (more rows) or scrollable (but that's not very handy).

3. UX Improvements:

  • The configuration window of a sound/instruction is quite small. It would be nice if the height and width of the configuration window could adjust itself according to the main window size.

  • Add a button to load all sounds at once.

  • Drag and drop rows in an instruction to reorganize them.

  • Add a button for creating an instruction from the sounds currently playing, retaining all settings (looping, volume, etc.).

  • Being able to configure the general stop button to stop all instructions as well.

  • Although I don't have a solution in mind to solve this issue, I think it's possible to improve the stacking of windows when the user edits a sound within an instruction.

Thanks!

I'll check that soon for possibles bugs. And if you are OK, I'll send another wave of features improvements for atmos & ambients.

(11 edits)

Hello,

Sorry, this message kinda duplicates the previous one. I thought it would be interesting to give a big picture about instructions and atmospheres.

Here's what it would be nice to have to be able to create beautiful ambiences (I'm sure many of these elements can be reused for live mixes):

1. Several instructions should be able to stack on top of each other. This would make it possible to compose moods on the fly (example: office building + people chattering + random thriller music).
For the moment, launching an instruction stops the previous one.

2. An instruction must be able to play several types of sound:

  1. A sound that plays once and then stops <- implemented
  2. A sound that plays once and then stops, but with a fixed or random delay (between min and max)  <- implemented
  3. A sound that loops without delay <- implemented
  4. A sound that loops, but with a fixed or random delay between each loop (between min and max) <- implemented, but a nested instruction is necessary

3. The sounds in an instruction must be playable:

  1. Sequentially  <- implemented, but nested instructions don't loop
  2. Simultaneously  <- implemented, but nested instructions don't loop
  3. Randomly <- implemented, but nested instructions don't loop

4. An instruction must be able to read another nested instruction:

  1. With or without delay  <- implemented
  2. Looping or not

______________________

Here's an example of what can be achieved with these features:

I want to create an office atmosphere. I know in advance that I need two separate instructions:

  1. An instruction for the ambience itself
  2. An instruction that adds atmosphere and plot elements when needed.

1. Office ambient (all elements of the instruction are played simultaneously):

  1. A sound that plays a typical empty office noise (white noise, fans, ringing telephones, etc.). Looping without delay.
  2. Several printer and chair sounds played randomly and with a random delay between each track to add substance to the ambience.
  3. A bell sound followed by an announcement played randomly and with a random delay. Note that this bell sound can be played at the same time as the rest of the other sounds, which is why it is not included in 2.
  4. Road traffic sounds in the background for added realism. As for 2: randomly and with a random delay.


2. Atmosphere:

  1. A continuous sound loop to add tension
  2. Random sounds played with a random delay to add plot elements


At first, the office atmosphere is played. Then, as the scene becomes tense, atmosphere is added on top.

______________________

Not mentioning other SoundShow capabilities that are awesome. Like the fact that instructions can hold before going to the next step. Not really mandatory for ambients and atmos, but still very useful.
This post is first and foremost about minimum tooling to build ambients. A lot more can be said about that subject, but SoundShow is very close to make this possible.

(1 edit)

Hello, here is another potential issue:

Given an instruction that plays sounds randomly in a loop (auto start: true, random: true, loops: 1000).

If this instruction is played, everything works correctly. The sounds (auto start: true) are played in a loop and in random order.

On the other hand, if this same instruction is played from another instruction (auto start: true, loops: 1000, Max instructions: 1000), then it never loops.
Once all sounds have been played, the nested instruction stops, regardless of the number of loops on the parent or child instructions.


EDIT: would be nice to have an “infinite” option rather than specifying a high value in the "loop" and "max instructions" fields. A button or maybe the value "-1"


Hello. There is a problem when exporting a library. If it contains an instruction with sounds and these sounds are not themselves included in the library (in the form of buttons), then when exporting the library, the instruction's sounds are not exported.

To reproduce :
- Import some sounds
- Create an instruction and import previous sounds into the instruction
- Delete the sounds (but keep the instruction)
- Everything works as expected, and it is now possible to execute the instruction that will play back the previously deleted sounds
- After exporting the library, the folder containing the audio files does not contain the deleted sounds