Commit Graph

65 Commits

Author SHA1 Message Date
S Handley
b7ce91fead Move music under audio
Also add some blank time after each track so that we get some silence
between tracks.
2020-02-03 11:55:32 +00:00
Marcel Märtens
dae31ae5b6 apply new rustfmt - touching alot of files 2020-02-01 21:39:39 +01:00
S Handley
b44955ba30 Remove currently unused audio assets
This clears out about 56MB of unused audio files.

There were also some unused methods in the audio modules which
referenced a file, which has also been removed.
2020-01-20 15:07:30 +00:00
S Handley
309834df1b fix: Prevent dispatching Run SFX if an entity is not moving
This adds the entity's velocity as an argument when mapping the
movement state to an SFX event, and prevents the run SFX from being
returned if the velocity is below a threshold.

This will prevent hearing the run sfx when stuck in a corner, or running
into a surface where the character is not actually moving their feet.
2020-01-18 18:49:17 +00:00
S Handley
00c1493548 Play the Run SFX when a character lands after jumping or falling
This is a small detail but makes a noticable difference.
2020-01-12 16:35:20 +00:00
S Handley
2644e29484 Refactor and Rename for clarity
Implements a potential structure for splitting the SFX event mapping
into smaller individual files for maintainability.

- Remove inventory events for now: For a later commit.
- No longer panic when there is a failure parsing the sfx file: log the error and not play sfx.
2020-01-01 02:55:48 +00:00
Imbris
d341073a44 Upgrade to specs 0.15.1 2019-12-20 22:48:14 -05:00
S Handley
8c5320d20f Update title music and temporarily remove attack sfx
- Updated title music with a version provided by aeronic which fades out
more gracefully
- Removed attack SFX as it was included in the movement processing, but
will return later as part of a similar chunk of code which processes
combat sfx independent of movement.
2019-12-20 04:04:05 +00:00
S Handley
da2d36ed76 (fix) Set the music and sfx volumes immediately after initialising the
audio frontend.

Fixes #373
2019-12-10 14:02:51 +00:00
Adam Whitehurst
20575e0aab Update controller 2019-12-09 14:45:10 +00:00
S Handley
56f9c5d35f Fix the glider_close sfx event
This was failing to trigger since we now have a MovementState::Fall, but
the sfx mapper was still trying to work this out itself based on
velocity. We no longer need to track velocity as a result and can use
the MovementState.

Also silenced warnings resulting from unused vars when running tests.
2019-12-09 09:50:14 +00:00
Adam Whitehurst
92d99af53c feat: weapon-type dependent wield and attack durations
also some controller.rs cleanup
2019-12-03 06:30:08 +00:00
S Handley
ea2e0d17de SFX system
This is an event based approach to SFX sounds. There is a specific
character sound event mapper which determines sfx to play based on
character or NPC state, as well as emitting sfx events for
non-character-triggers such as levelling up.
2019-11-23 08:26:39 +00:00
Brian Lewis
86619d4192 Fix crashing due to error in Alsa.
This uses a more recent version of cpal (a dependency of rodio hence the
rodio change) which seems to have fixed a crash due to
'device not available: "Invalid argument"' coming from Alsa.

The change in cpal also made some functions now return `Result` instead
of a bare type which I dealt with by using `expect` to minimize how far
these changes fan out into the code but maybe this isn't ideal.

Fixing https://gitlab.com/veloren/veloren/issues/280 - Crash with ALSA
2019-10-06 11:24:42 +02:00
Monty Marz
11a022abb3 Better stepping sounds (and minor voxel model fixes) 2019-09-27 16:04:22 +00:00
Shane Handley
ef3ad3519b Update previous references to 'volume' to prevent ambiguity. Update label for audio device selection in settings dialog. I don't think it is displayed, but maybe useful for documentation. 2019-09-25 01:25:24 +09:00
Shane Handley
8cf6546dec Add an additional SFX Volume control to the in-game settings dialog and supporting events. 2019-09-25 01:18:09 +09:00
Geno
247f0818c1 Footstep volume fix 2019-09-08 15:47:52 +00:00
timokoesters
9f83130466
Fix audio 2019-09-07 11:46:21 +02:00
Louis Pearson
02af86d2d6 Change ear pos to Vec3 2019-09-06 04:44:15 -06:00
Louis Pearson
675d72a3ce Code cleanup 2019-09-06 04:36:42 -06:00
Louis Pearson
57fe89e5c8 Fix warnings 2019-09-06 04:25:17 -06:00
Louis Pearson
8e5f993a5b Format files 2019-09-05 03:11:18 -06:00
Louis Pearson
2bca20cf69 Get sound effects working 2019-09-05 03:08:09 -06:00
Louis Pearson
529cb40dc4 Add soundcache
Still getting the stuttering. Time to rethink channels
2019-09-05 03:08:09 -06:00
Louis Pearson
65008f7d54 Adds proper 3d sound?
Looks like loading the footstep files every time a sound is played
becomes a problem rather quickly.
2019-09-05 03:08:09 -06:00
Louis Pearson
00830108e9 Add positional audio
Orientation needs to be set now
2019-09-05 03:08:09 -06:00
Louis Pearson
ad3bd0b2ce Add footstep sounds, implement crude footstep sounding
Sounds are played every tick, which is not good.
2019-09-05 03:08:09 -06:00
Louis Pearson
41cd20aaf8 Add play_music call to audiofrontend 2019-09-05 03:08:09 -06:00
Louis Pearson
132d108086 Remove audio/base.rs 2019-09-05 03:08:09 -06:00
Louis Pearson
447cfec19f Add support for fading sounds 2019-09-05 03:08:09 -06:00
Louis Pearson
9dc1f8f549 Revamp AudioFrontend
audio::base had a lot of unnescessary abstractions and constructs.
The current code simplifies the API in a way that makes sense and
that will allow sound effects and fading to be added in an incremental
way.
2019-09-05 03:08:09 -06:00
Acrimon
fda47fc322 [Voxygen] Switch mutexes to parking_lot and channels to crossbeam. 2019-08-16 00:07:09 +02:00
timokoesters
1227596406 Implement specifier syntax and cleanup 2019-08-06 08:31:48 +02:00
Sheldon Knuth
c2fa8bd615 [FIX] Callback hell of AudioDevice construction while opening audio settings window. 2019-07-23 09:54:41 +00:00
Songtronix
9007f4aa5a Adjust volume on startup 2019-07-07 14:12:28 +00:00
Songtronix
61d0474e6c comment out unused structs/functions in voxygen/audio 2019-07-04 14:27:28 +00:00
timokoesters
d7c159a4e1
Fix warnings all around voxygen 2019-07-04 14:08:01 +02:00
Sheldon Knuth
6d624e96a6 fix the missing set_playing(true) in AudioPlayer::load() to prevent infinity thread loop & adopt std::sync::{Mutex, Condvar} for accurate thread blocking. 2019-07-03 17:23:24 +00:00
Sheldon Knuth
c3671590e9 Loading no-audio mode from the game start without rodio crate initialisation completely 2019-07-02 18:35:40 +00:00
Joshua Barretto
6dae0c8cd2 Revamped asset loading system 2019-07-02 14:15:53 +01:00
Sheldon Knuth
0ec240ea8e Revamping the audio system for Voxygen from #163 2019-07-02 13:52:51 +01:00
Sheldon Knuth
de9d05999d Removed send_msg in Action::Load(path) => ... due to non-existed receiver. 2019-07-02 20:04:24 +08:00
Sheldon Knuth
cdda20a1e8 hotfix on assets_folder issue by increasing the depth to 3. 2019-07-02 19:43:38 +08:00
Sheldon Knuth
ee32f752a6 add no-audio feature while constructing AudioFrontend with no_audio(). 2019-07-02 11:45:28 +08:00
Sheldon Knuth
7f7d35fe7f fix audio thread by removing PopError but use customised block function instead. 2019-07-02 11:29:00 +08:00
Sheldon Knuth
d75d632279 Add mpmc support to audio-base. 2019-07-02 11:29:00 +08:00
Mckol
b5db5b8d3d Added error logging 2019-06-28 20:22:43 +02:00
Mckol
f1b1c41d92 Added catching audio panics
You can still make it panic by poisoning some variable if you try to change the audio device in settings after launch`
2019-06-28 20:22:43 +02:00
Cody
14ac5babd4 Removes most unused imports; changes some unused variables to underscores or provides a leading underscore; removes some unnecessary variables and mutable declarations; and performs other miscellaneous warning fixes. 2019-06-06 14:48:41 +00:00