PolyBLEP icon indicating copy to clipboard operation
PolyBLEP copied to clipboard

Help with adding the rest of the JSFX waveforms?

Open DavidsonAudioMulti opened this issue 5 years ago • 0 comments

I have been trying to add the rest of the wave forms from Tales JSFX. I have been able to get a couple of them but as the formulas get more complex I am having less luck. It seems one little mistake makes for bad aliasing. Is there anyway you could help me include the rest of the wave forms. I would be willing to help do this but I am not real familiar with JSFX. Any help would be appreciated thank you! Davidson

* poly_sin()       -- Sine
* poly_cos()       -- Cosine
* poly_tri()       -- Triangle
* poly_sqr()       -- Square
* poly_rect()      -- Rectangle (pulse)
* poly_saw()       -- Sawtooth
* poly_ramp()      -- Ramp

* poly_tri2()      -- Modified triangle
* poly_sqr2()      -- Modified square

* poly_half()      -- Half-wave rectified sine (fixed 0.5 pulse width)
* poly_half2()     -- Half-wave rectified sine (variable pulse width)
* poly_full()      -- Full-wave rectified sine
* poly_sinp()      -- Pulse sine (fixed 0.5 pulse width)
* poly_sawp()      -- Saw pulse
* poly_trip()      -- Triangular pulse
* poly_hwsaw()     -- Half-wave rectified sawtooth
* poly_alt()       -- Alternating sine
* poly_camel()     -- Camel sine

* poly_sin2()      -- Bipolar squared sine
* poly_para()      -- Parabola
* poly_trap()      -- Trapezoid (fixed 0.5 pulse width)
* poly_trap2()     -- Trapezoid (variable pulse width)

* poly_hyptri()    -- Hyper triangular wave
* poly_lpsqrN()    -- LPF square approximation (order N = 2 or 3)
* poly_intlpsqrN() -- Integrated LPF square (order N = 2 or 3)
* poly_intsaw()    -- Integrated sawtooth
* poly_cubsaw()    -- Cubic sawtooth
* poly_sinsaw()    -- Sine sawtooth
* poly_hpsaw6()    -- HPF sawtooth approximation
* poly_logit3()    -- Logit approximation

* poly_sqrm1()     -- Square wave minus fundamental
* poly_sawm1()     -- Sawtooth minus fundamental

* poly_trin()      -- Stepped triangle
* poly_sawn()      -- Stepped sawtooth
* poly_hssaw()     -- Hard sync sawtooth

* poly_ham()       -- Might not be suitable for vegetarians
* poly_stairs()    -- Staircase (fixed 0.5 pulse width)
* poly_stairs3()   -- Staircase (variable pulse width)
* poly_stairs2()   -- Uneven staircase
  Example: sample = osc.poly_saw();

DavidsonAudioMulti avatar Mar 04 '21 19:03 DavidsonAudioMulti