diff --git a/core/core.vcxproj b/core/core.vcxproj
index bc6c3d8..ab247c4 100644
--- a/core/core.vcxproj
+++ b/core/core.vcxproj
@@ -607,6 +607,19 @@ del "$(TargetDir)\*.lib"
Document
data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
+
+
+
+
+ Document
+ data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
+
+
+ Document
+ data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
diff --git a/core/core.vcxproj.filters b/core/core.vcxproj.filters
index cb80605..e45223d 100644
--- a/core/core.vcxproj.filters
+++ b/core/core.vcxproj.filters
@@ -1633,5 +1633,11 @@
resources\audio
+
+ resources\audio
+
+
+ resources\audio
+
\ No newline at end of file
diff --git a/core/include/core_app.h b/core/include/core_app.h
index 6159126..a480308 100644
--- a/core/include/core_app.h
+++ b/core/include/core_app.h
@@ -52,6 +52,8 @@ class CoreApp : public ofBaseApp {
std::chrono::steady_clock::time_point transition_start_time;
ofSoundPlayer ambient_sound;
+ ofSoundPlayer transition_to_intro_sound;
+ ofSoundPlayer transition_to_tracking_sound;
bool show_debug_info = false;
};
diff --git a/core/resources/transition_to_intro.wav b/core/resources/transition_to_intro.wav
new file mode 100644
index 0000000..2cfd1af
Binary files /dev/null and b/core/resources/transition_to_intro.wav differ
diff --git a/core/resources/transition_to_tracking.wav b/core/resources/transition_to_tracking.wav
new file mode 100644
index 0000000..5fe667b
Binary files /dev/null and b/core/resources/transition_to_tracking.wav differ
diff --git a/core/src/core_app.cpp b/core/src/core_app.cpp
index d9832bd..337b529 100644
--- a/core/src/core_app.cpp
+++ b/core/src/core_app.cpp
@@ -38,6 +38,12 @@ void CoreApp::setup() {
ambient_sound.load("resources/audio/gruen_ambient.wav");
ambient_sound.play();
ambient_sound.setLoop(true);
+
+ transition_to_intro_sound.load("resources/audio/transition_to_intro.wav");
+ transition_to_intro_sound.setVolume(0.25f);
+
+ transition_to_tracking_sound.load("resources/audio/transition_to_tracking.wav");
+ transition_to_tracking_sound.setVolume(0.25f);
}
//--------------------------------------------------------------
@@ -55,10 +61,14 @@ void CoreApp::update() {
const auto &body_skeletons = kinect_device.getBodySkeletons();
- if ((current_scene == &intro_scene && !body_skeletons.empty()) ||
- (current_scene == &tracking_scene && body_skeletons.empty())) {
+ if (current_scene == &intro_scene && !body_skeletons.empty()) {
+ transition_to_tracking_sound.play();
+ transition_start_time = std::chrono::steady_clock::now();
+ current_scene = &tracking_scene;
+ } else if (current_scene == &tracking_scene && body_skeletons.empty()) {
+ transition_to_intro_sound.play();
transition_start_time = std::chrono::steady_clock::now();
- std::swap(current_scene, inactive_scene);
+ current_scene = &intro_scene;
}
current_scene->update();
diff --git a/tracking/include/collision_object.h b/tracking/include/collision_object.h
index 9ff92fe..e81e54a 100644
--- a/tracking/include/collision_object.h
+++ b/tracking/include/collision_object.h
@@ -35,6 +35,7 @@ class CollisionObject {
protected:
void play_random_pluck();
+ void play_random_noise_hit();
std::pair check_collision_with_bodies(std::vector &players, const ofEasyCam &camera);
std::pair check_collision_with_objects(const std::vector &objects);
@@ -51,7 +52,8 @@ class CollisionObject {
ofImage _image;
std::shared_ptr _effect_shader;
- std::vector puck_sounds;
+ std::vector _pluck_sounds;
+ std::vector _noise_sounds;
bool _can_collide_with_player;
bool _can_collide_with_object;
diff --git a/tracking/resources/audio/global_effect.wav b/tracking/resources/audio/global_effect.wav
new file mode 100644
index 0000000..e6cb896
Binary files /dev/null and b/tracking/resources/audio/global_effect.wav differ
diff --git a/tracking/resources/audio/gruen_globalEffect.wav b/tracking/resources/audio/gruen_globalEffect.wav
deleted file mode 100644
index 7b56c11..0000000
Binary files a/tracking/resources/audio/gruen_globalEffect.wav and /dev/null differ
diff --git a/tracking/resources/audio/gruen_pluck_b.wav b/tracking/resources/audio/gruen_pluck_b.wav
deleted file mode 100644
index 09b721e..0000000
Binary files a/tracking/resources/audio/gruen_pluck_b.wav and /dev/null differ
diff --git a/tracking/resources/audio/gruen_pluck_d.wav b/tracking/resources/audio/gruen_pluck_d.wav
deleted file mode 100644
index d208148..0000000
Binary files a/tracking/resources/audio/gruen_pluck_d.wav and /dev/null differ
diff --git a/tracking/resources/audio/gruen_pluck_e.wav b/tracking/resources/audio/gruen_pluck_e.wav
deleted file mode 100644
index bf6b307..0000000
Binary files a/tracking/resources/audio/gruen_pluck_e.wav and /dev/null differ
diff --git a/tracking/resources/audio/gruen_pluck_g.wav b/tracking/resources/audio/gruen_pluck_g.wav
deleted file mode 100644
index 00c3a03..0000000
Binary files a/tracking/resources/audio/gruen_pluck_g.wav and /dev/null differ
diff --git a/tracking/resources/audio/noise_hit_1.wav b/tracking/resources/audio/noise_hit_1.wav
new file mode 100644
index 0000000..d305222
Binary files /dev/null and b/tracking/resources/audio/noise_hit_1.wav differ
diff --git a/tracking/resources/audio/noise_hit_2.wav b/tracking/resources/audio/noise_hit_2.wav
new file mode 100644
index 0000000..e305c0d
Binary files /dev/null and b/tracking/resources/audio/noise_hit_2.wav differ
diff --git a/tracking/resources/audio/noise_hit_3.wav b/tracking/resources/audio/noise_hit_3.wav
new file mode 100644
index 0000000..a3545bc
Binary files /dev/null and b/tracking/resources/audio/noise_hit_3.wav differ
diff --git a/tracking/resources/audio/pluck_1.wav b/tracking/resources/audio/pluck_1.wav
new file mode 100644
index 0000000..40bcd00
Binary files /dev/null and b/tracking/resources/audio/pluck_1.wav differ
diff --git a/tracking/resources/audio/pluck_2.wav b/tracking/resources/audio/pluck_2.wav
new file mode 100644
index 0000000..b4be2c9
Binary files /dev/null and b/tracking/resources/audio/pluck_2.wav differ
diff --git a/tracking/resources/audio/pluck_3.wav b/tracking/resources/audio/pluck_3.wav
new file mode 100644
index 0000000..a72b6cd
Binary files /dev/null and b/tracking/resources/audio/pluck_3.wav differ
diff --git a/tracking/resources/audio/pluck_4.wav b/tracking/resources/audio/pluck_4.wav
new file mode 100644
index 0000000..af58f94
Binary files /dev/null and b/tracking/resources/audio/pluck_4.wav differ
diff --git a/tracking/src/collision_object.cpp b/tracking/src/collision_object.cpp
index 0b32a86..9051441 100644
--- a/tracking/src/collision_object.cpp
+++ b/tracking/src/collision_object.cpp
@@ -26,17 +26,27 @@ CollisionObject::CollisionObject(glm::vec2 position, glm::vec2 velocity, const s
_image.draw(_fbo_padding, _fbo_padding);
_fbo.end();
- auto audio_filenames = std::vector(
- {"gruen_pluck_b.wav", "gruen_pluck_d.wav", "gruen_pluck_e.wav", "gruen_pluck_g.wav"});
+ auto pluck_filenames = std::vector({"pluck_1.wav", "pluck_2.wav", "pluck_3.wav", "pluck_4.wav"});
+ auto noise_filenames = std::vector({"noise_hit_1.wav", "noise_hit_2.wav", "noise_hit_3.wav"});
- for (const auto &filename: audio_filenames) {
+ for (const auto &filename: pluck_filenames) {
+ auto sound_player = ofSoundPlayer();
+
+ sound_player.load("resources/audio/" + filename);
+ sound_player.setVolume(0.075f);
+ sound_player.setMultiPlay(true);
+
+ _pluck_sounds.push_back(sound_player);
+ }
+
+ for (const auto &filename: noise_filenames) {
auto sound_player = ofSoundPlayer();
sound_player.load("resources/audio/" + filename);
sound_player.setVolume(0.15f);
sound_player.setMultiPlay(true);
- puck_sounds.push_back(sound_player);
+ _noise_sounds.push_back(sound_player);
}
}
@@ -54,7 +64,7 @@ void CollisionObject::update(std::vector &players, const std::vector &players, const std::vector CollisionObject::global_effect_triggered() {
void CollisionObject::set_effect_shader(std::shared_ptr shader) { _effect_shader = shader; }
void CollisionObject::play_random_pluck() {
- auto random = static_cast(ofRandom(puck_sounds.size()));
- puck_sounds[random].play();
+ auto random = static_cast(ofRandom(_pluck_sounds.size()));
+ _pluck_sounds[random].play();
+}
+
+void CollisionObject::play_random_noise_hit() {
+ auto random = static_cast(ofRandom(_noise_sounds.size()));
+ _noise_sounds[random].play();
}
std::pair CollisionObject::check_collision_with_bodies(std::vector &players,
diff --git a/tracking/src/tracking_scene.cpp b/tracking/src/tracking_scene.cpp
index 455a34f..3de551e 100644
--- a/tracking/src/tracking_scene.cpp
+++ b/tracking/src/tracking_scene.cpp
@@ -23,7 +23,7 @@ TrackingScene::TrackingScene(ofxAzureKinect::Device *device) :
_global_effect_position = {0, 0};
_global_effect_trigger_time = 0;
- _global_effect.load("resources/audio/gruen_globalEffect.wav");
+ _global_effect.load("resources/audio/global_effect.wav");
_global_effect.setMultiPlay(false);
_effect_shaders = {std::make_shared(), std::make_shared(),
diff --git a/tracking/tracking.vcxproj b/tracking/tracking.vcxproj
index 0148052..3f57155 100644
--- a/tracking/tracking.vcxproj
+++ b/tracking/tracking.vcxproj
@@ -730,48 +730,65 @@
-
+
+ data/resources/%(Filename)%(Extension)
+ data/resources/%(Filename)%(Extension)
+
+
+
+
+ data/resources/%(Filename)%(Extension)
+ data/resources/%(Filename)%(Extension)
+
+
+
+
+ data/resources/%(Filename)%(Extension)
+ data/resources/%(Filename)%(Extension)
+
+
+
+
Document
data/resources/audio/%(Filename)%(Extension)
data/resources/audio/%(Filename)%(Extension)
-
+
Document
data/resources/audio/%(Filename)%(Extension)
data/resources/audio/%(Filename)%(Extension)
-
+
Document
data/resources/audio/%(Filename)%(Extension)
data/resources/audio/%(Filename)%(Extension)
-
+
Document
data/resources/audio/%(Filename)%(Extension)
data/resources/audio/%(Filename)%(Extension)
-
+
Document
data/resources/audio/%(Filename)%(Extension)
data/resources/audio/%(Filename)%(Extension)
-
- data/resources/%(Filename)%(Extension)
- data/resources/%(Filename)%(Extension)
+
+ Document
+ data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
-
-
-
- data/resources/%(Filename)%(Extension)
- data/resources/%(Filename)%(Extension)
+
+ Document
+ data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
-
-
-
- data/resources/%(Filename)%(Extension)
- data/resources/%(Filename)%(Extension)
+
+ Document
+ data/resources/audio/%(Filename)%(Extension)
+ data/resources/audio/%(Filename)%(Extension)
diff --git a/tracking/tracking.vcxproj.filters b/tracking/tracking.vcxproj.filters
index 735cf36..3e9238f 100644
--- a/tracking/tracking.vcxproj.filters
+++ b/tracking/tracking.vcxproj.filters
@@ -1711,21 +1711,6 @@
resources
-
- resources\audio
-
-
- resources\audio
-
-
- resources\audio
-
-
- resources\audio
-
-
- resources\audio
-
resources
@@ -1801,5 +1786,29 @@
shaders\render
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
+
+ resources\audio
+
\ No newline at end of file