Hi list,

I am a relatively new user and am enjoying exploring different areas of ChucK.  I was trying to develop a program to create glissons or short particles with a moving frequency range.  I came up with an approach but I think there may be an easier way.  Here is the program:

SinOsc sin => dac;
Envelope env => blackhole;
500.0 => sin.freq => float x;  //starting frequency
100::ms => dur rampTime;  //ramp time period
0 => env.value;  //starting value
rampTime => env.duration;
400.0 => env.target;  //ramp to target - in this case, 900 Hz
now + rampTime => time t;
while( now < t )
{
    // modulate frequency by envelope
    x+env.value() => sin.freq;
    // advance time by 100 samples
    100::samp => now;
}

I think there may be an easier way of doing this using:

Envelope env => SinOsc sin => dac;

But I can't seem to get it working using a proper sin.sync value.  Does anyone have any ideas on improving the approach?

Regards,
Mitch