WFSCollider provides panners simulating 3 types of sources.
Simulates a very small source which radiates wavefronts shapped as 3D sphere.
The dynamic point source is typically used for moving sources. It uses automatic realtime optimization to ensure the lowest possible cpu use. It also features a smoothing algorithm which can reduce clicks and jumps in doppler shift during sudden changes.
- pointFromBus: Use x/y position to the incoming values at control busses 0 and 1.
- point: point coordinate in meters. [0,0] means in the center of the room, positive x is to the left, positive y is to the front. This value will be disregarded when pointFromBus is enabled. "edit" -> open the point editor.
- pointLag: smoothes the movement of the point. Useful when setting the position from a device with low resolution. 0 -> no smoothing, > 0 -> amount of lag in seconds
- quality: interpolation mode of the delays
- good - linear interpolation
- better - cubic interpolation, resulting in more precise and smoother panning, but also more cpu use (apx. 50% more)
- latencyComp: cancels the large delay caused by the distance of the source to the center of the room. 0 -> no compensation, 1 -> full compensation. Latency compensation can reduce the doppler shift for moving sources, and can ensure synchronisity between multiple sources.
- dbRollOff: amount of dB attenuation per distance doubling. Default: -6dB, conform physics. When dbRollOff is set to 0 there will be no level attenuation; the source will then have the same volume regardless of it's location
- maxAmpRadius: the radius (in meters) of the circular area in the center of the room where the amplitude is always 0dB (the maximum). The dbRollOff starts where this area ends, thus enlarging the area will also increase the level of sources outside it. The radius is normally set to 2m. When set to 5m whole area inside the speaker field will have approximately the same level.
- arrayLimit: when a point is very near a speaker the wfs amplitude calculation will tend towards infinity. To prevent this a clipping limit is imposed. arrayLimit sets this limit in meters (the distance from the speaker where the limit starts). In some cases it can be useful to reduce this limit. The smallest possible limit is 0.164, which is the same as the distance between two adjecent speakers on the Game Of Life wfs system.
- crossfadeLag: when a point crosses an array from front to back or v.v., the wfs calculation will switch to another version. To make this switch less audible a crossfade is applied. crossfadeLag sets the duration of this crossfade, in seconds (default: 0.2).
- dontPause: this wfs panner dynamically switches on and off processes by pausing them when they are not sounding. This way the overal cpu usage is kept to a minimum. However, there could be cases where the movement is too fast for the pausing engine to keep up. Enabling dontPause can keep all processes running all the time for such occasions. Beware that this will cost a lot more cpu power.
Static sources are fixed to one location. I.e. their location can not be changed during playback. This limitation enables them to run with extremely low cpu usage.
- point: point coordinate in meters. [0,0] means in the center of the room, positive x is to the left, positive y is to the front. "edit" -> open the point editor. Changes will not be audible until the next time the source is played back
- latencyComp: cancels the large delay caused by the distance of the source to the center of the room. 0 -> no compensation, 1 -> full compensation. Latency compensation can ensure synchronisity between multiple sources, regardless of their spatial position.
- dbRollOff: amount of dB attenuation per distance doubling. Default: -6dB, conform physics. When dbRollOff is set to 0 there will be no level attenuation; the source will then have the same volume regardless of it's location
- maxAmpRadius: the radius (in meters) of the circular area in the center of the room where the amplitude is always 0dB (the maximum). The dbRollOff starts where this area ends, thus enlarging the area will also increase the level of sources outside it. The radius is normally set to 2m. When set to 5m whole area inside the speaker field will have approximately the same level.
- arrayLimit: when a point is very near a speaker the wfs amplitude calculation will tend towards infinity. To prevent this a clipping limit is imposed. arrayLimit sets this limit in meters (the distance from the speaker where the limit starts). In some cases it can be useful to reduce this limit. The smallest possible limit is 0.164, which is the same as the distance between two adjecent speakers on the Game Of Life wfs system.
Simulates a source very far way which radiates wavefronts shapped as a flat plane.
The dynamic plane source is typically used for moving sources. It uses automatic realtime optimization to ensure the lowest possible cpu use. It also features a smoothing algorithm which can reduce clicks and jumps in doppler shift during sudden changes.
Static sources are fixed to one location. I.e. their location can not be changed during playback. This limitation enables them to run with extremely low cpu usage.
- latencyComp: cancels the large delay caused by the distance of the source to the center of the room. 0 -> no compensation, 1 -> full compensation. Latency compensation can ensure synchronisity between multiple sources, regardless of their spatial position.
- dbRollOff: amount of dB attenuation per distance doubling. Default: 0dB (theoretically there is no amplitude loss over distance for a plane wave).
- maxAmpRadius: the radius (in meters) of the circular area in the center of the room where the amplitude is always 0dB (the maximum). The dbRollOff starts where this area ends, thus enlarging the area will also increase the level of sources outside it. The radius is normally set to 2m. When set to 5m whole area inside the speaker field will have approximately the same level. This setting is only audible when dbRollOff < 0.
Plays sound through just one speaker.
- indexFromBus: Set the index of the speaker to the the incoming values at control bus 0.
- index: set the speaker number (starting from 0).
- gain: change the level.
- index: set the speaker number (starting from 0).
- gain: change the level.