Don't Miss Out

Follow us now so you don't miss new releases!


Lightning Draw

labithiotis

52.494 seconds

Rockwell

53.214 seconds

megatronx

54.82 seconds

For the first 3 people to download this release!

Quick Draw

pedro.thiers

59.904 seconds

Yann

1m 16s

Guest

2m 48s

UberLou

2m 59s

walterlow

2m 11s

walterlow

2m 17s

walterlow

2m 19s

walterlow

2m 27s

serhazten

2m 29s

Be one of the first 15 people to download this release!

Construct 2 Release r121

There is a more up to date Stable Release! Download the latest Stable release instead here.
Download

108.9 mb, Windows 8/Windows 7/Vista/XP

Tuesday, March 05, 2013

New this build: new audio features, including effects! As well as some long-overdue new audio features like pausing and resuming, we've also introduced a whole set of effects. Here's a demo of some of them. They can be great for atmospheric or environmental effects to add a whole new depth to your game, and others are just cool for creative use. These depend on the Web Audio API being supported by the browser. Currently it's only supported in Chrome (for desktop), node-webkit (on all platforms, since it's based on Chromium) and iOS 6+. Firefox are also actively working on it and hopefully Chrome for Android will add support soon too. In future you can check quickly for Web Audio API support using ScirraMark, a page we've set up to score the browser based on HTML5 gaming features it supports.

Advanced audio

The advanced audio features involve adding effects and also the option of audio analysers (to get real-time frequency domain information). The actions will only work if the Advanced audio supported condition in the Audio object is true, since the condition checks for Web Audio API support. Multiple effects can be added to individual tags. Audio and signal processing are complex topics, and having prior experience in audio will allow you to make the most of these new features, but in summary the supported effects are:

  • Analyser: doesn't change the audio, but can report back frequency domain data
  • Compressor: automatically boost or reduce volume to even out the overall volume level
  • Convolution: an advanced effect using another sound as an impulse response to process the audio. This allows for real-world locations to be recorded and the environmental sound used in your games!
  • Delay: a feedback loop with a delay, making a sort of simple echo effect.
  • Filter: boost or reduce certain frequencies, such as a low-pass filter (which cuts out high frequencies). Useful for simple atmospherics, treble/bass adjustment, etc.
  • Flanger: delays the sound by a few milliseconds then mixes it back in with itself. By oscillating the delay time a strange sweeping effect is created
  • Gain: a simple volume control, which might be useful in longer effect chains
  • Phaser: phase-shifts the sound then mixes it back in with itself. By oscillating the phase shift another sweeping effect is created
  • Tremolo: automatically oscillates the volume up and down, better known as amplitude modulation. Some interesting amplitude modulation effects can be created by moving the modulation frequency in to the audible range (above 20 Hz).

If advanced audio is not supported, adding effects will do nothing, so you'll just hear unprocessed audio. That means you can easily add all sorts of environmental effects, and if advanced audio is not supported the user will simply hear the unprocessed audio.

The convolution effect is especially interesting, but it requires some technical knowledge and professional equipment to properly record impulse responses. There may be libraries of pre-recorded impulse responses available somewhere, but I haven't checked. Still, the possibilities it opens for immersive audio in games is exciting!

These new features will require a fair bit of documentation, which as usual will come around the next stable release. However I might write a blog post going in to more detail, since it's a subject I'm personally very interested in, and some deeper explanation of the effects involved could be useful.

The Audio object is very complicated since it supports four separate audio engines (audio element, Web Audio API, PhoneGap media and appMobi (Intel?) sound), and the new features have made it even more so. Much of the Audio code has been revised, so please listen out for any new bugs, issues or differences, especially between different platforms.

Changelog

Feature

Audio: effects system, including analysing audio frequency data

Add

Two new audio examples in the Start dialog: 'Audio analyser' and 'Audio effects'

Add

Audio: actions 'Set paused', 'Seek'

Add

Audio: Duration, PlaybackTime and Volume expressions (to get information from currently playing sounds)

Add

Audio: 'Set master volume' action, 'MasterVolume' expression

Add

Audio: 'Is silent', 'Is any playing', 'Is tag playing' conditions

Change

Exporting with PNG recompression set to 'None' now ignores any images set to PNG-8 and still exports them as PNG-32. It also skips some memory optimisation processing. Overall export times should now be semi-instant with this option, but don't use it for real production releases, since it skips a lot of very useful optimisations.

Change

Possibly breaking change: Sin behavior now updates position just before the events run, rather than just after. This allows for objects using set position to follow without lag. However this means events can now override the position which could cause existing projects to work differently. Please watch out for anything breaking.

Change

Possibly breaking change: Platform behavior now should follow moving platforms using the Sine behavior without any lag. However since the sequence it runs has changed, it may also cause existing projects to work differently; please watch out for anything breaking.

Change

SCML importer: updated to support some upcoming Spriter features

Bug Fix

Audio: no longer restarts sound effects when switching back to the tab in Chrome (sounds resume from where they left off)

Bug Fix

Possible issue with suspending and resuming on CocoonJS

Bug Fix

Platform: possible issue cutting jumps short when jumping up on to platforms

Bug Fix

9-patch: javascript error when some patches had zero size

Bug Fix

Deleting an event sheet with global variables did not always remove all references to the global variable

Bug Fix

Browser 'Vibrate' action may not have always worked. It now definitely works on Firefox for Android and CocoonJS.

Bug Fix

Constant expressions evaluating to NaN or infinity could cause javascript errors

Bug Fix

Possible strange results using a Bullet family behavior with other behaviors

Bug Fix

Possible issue with viewport being incorrect for first tick in scaling fullscreen modes


Comments

4
EnglishAcorn 16.5k rep

Great work guys.

Tuesday, March 05, 2013 at 7:12:49 PM
2
mltreadway 6,114 rep

Once again, AWESOME!!!

Tuesday, March 05, 2013 at 7:15:10 PM
1
labithiotis 5,029 rep

Can't wait to play with audio features after your demoing of it.

Tuesday, March 05, 2013 at 7:15:36 PM
1
CrudeMik 7,194 rep

Amazing! Really good work!

Tuesday, March 05, 2013 at 7:16:25 PM
1
NotionGames 12.8k rep

love it. always great to see a new release

Tuesday, March 05, 2013 at 7:17:29 PM
1
Squid 5,560 rep

Bug squishing time.

Tuesday, March 05, 2013 at 7:20:48 PM
1
edisone 18.3k rep

supergood !!! ^^

Tuesday, March 05, 2013 at 7:23:30 PM
1
mmoDust 3,972 rep

Yay for audio effects I was looking for some last month.
Boo for IE10 not supporting them which means Windows 8 Apps will not as well =(

Tuesday, March 05, 2013 at 7:26:03 PM
1
danny 5,988 rep

Thanks guys.

Tuesday, March 05, 2013 at 7:29:54 PM
1
Animate 10.9k rep

Awesome work. The Audio Pause feature will be a time saver. Will start testing the Audio Effects...

Tuesday, March 05, 2013 at 7:35:03 PM
1
WilB 4,322 rep

Thank you so much! As always amazing work!

Tuesday, March 05, 2013 at 7:36:55 PM
1
facecjf 7,915 rep

Thanks guys! This update looks SWEET!

Tuesday, March 05, 2013 at 7:44:32 PM
1
Paradox 38.8k rep

Excellent.

Tuesday, March 05, 2013 at 7:45:24 PM
1
sdemch 1,521 rep

Cool! Keep going! In C2 we trust ;)

Tuesday, March 05, 2013 at 7:47:53 PM
1
czar 5,967 rep

Nice update!

Tuesday, March 05, 2013 at 7:55:42 PM

Leave a comment

Everyone is welcome to leave their thoughts! Register a new account or login.