]> git.treefish.org Git - seamulator.git/blobdiff - src/synthesizer.cpp
trying
[seamulator.git] / src / synthesizer.cpp
index b2254c01f8b4bb059639dc4ee91d280a3c365242..a4148ced1431aa8210cf9c4f50ceb23b35749def 100644 (file)
@@ -55,17 +55,17 @@ Synthesizer::Synthesizer(ConstWaterSurfacePtr surface) :
 //        m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(i, 0), 440.0) );
         //}
 
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(0, 0), 939.85) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(0, 10), 704.09) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(0, 20), 469.92) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(0, 30), 352.04) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(0, 40), 279.42) );
-
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(10, 10), 1054.94) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(20, 10), 704.09) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(30, 10), 527.47) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(40, 10), 418.65) );
-    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(50, 10), 313.64) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(10, 50), 939.85) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(20, 40), 704.09) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(30, 30), 469.92) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(40, 20), 352.04) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(50, 10), 279.42) );
+
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(50, 10), 1054.94) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(40, 20), 704.09) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(30, 30), 527.47) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(20, 40), 418.65) );
+    m_dots.emplace_back( std::make_unique<Dot>(m_surface->at(10, 50), 313.64) );
 
     m_audioThread = std::thread( [this]{audioLoop();} );
 
@@ -172,7 +172,9 @@ void Synthesizer::tick()
 void Synthesizer::audioLoop()
 {
     stk::PRCRev effect0(0.5);
-    stk::Echo effect;
+    stk::Echo echo1;
+    stk::Echo echo2{4000};
+    stk::Echo echo3{7000};
     stk::Chorus chorus{6000};
     stk::StkFrames frames(88200, 2);
     while (!m_stop) {
@@ -185,7 +187,10 @@ void Synthesizer::audioLoop()
             //frames(i,1) = frames(i,0);
         }
         //       frames = effect0.tick(frames);
-//        frames = effect.tick(frames);
+        frames = echo1.tick(frames);
+        // frames = echo2.tick(frames);
+        // frames = echo3.tick(frames);
+
         frames = chorus.tick(frames);
 
         m_dac->tick(frames);