mp.grainwindow~ is a helpful bpatcher that gives you fast access to 16 standard window shapes. Each window is 512 samples long. You can also draw up to four of your own buffer windows and use these as a lookup tables, sequences or quirky waveshapes. These are not saved by default when the patch closes.
Connect the left outlet of the bpatcher to a wave~ object. This tells the wave object which buffer to read through. Ramp through the wave~ object with a phasor~ or other oscillator. Wave~ interpolates between samples so even though the windows are only 512 samples long, wave~ will smooth between points at very slow rates. Use this as a window for grains~ or as an amplitude or modulation envelope as shown in the accompanying help file.
mp-grainwindow~ < download