Release Notes

If you're looking for the Freeframe plugin release notes, they're here.

Whorld application

1.7.06

Whorld 1.7.06 adds global parameters which affect all rings at once. This version also adds two new Bézier curve parameters, and fixes some important bugs.
  1. In previous versions, changing a geometry parameter (e.g. Star Factor) only affected new rings. This behavior was essential for creating interesting patches, but it wasn't good for live control, because it introduced a long delay between changing a parameter and seeing any significant change in the output. Most of the geometry parameters now have a global version which affects all existing rings at once. The global parameters are accessed in the Parameters dialog (View/Parameters) by selecting Edit/Global Params.
  2. In previous versions, Bézier curves were always symmetrical. This version adds two new geometry parameters, called Even Shear and Odd Shear, which allow you to create asymmetrical Bézier curves. The two curve points at each vertex are normally equidistant from the vertex; Shear varies the ratio of these two distances. Even Shear affects even vertices, while Odd Shear affects odd ones. Note that Even Shear does nothing if Even Curve is zero, and Odd Shear does nothing if Odd Curve is zero.
  3. In previous versions, the Movie Export's codec setting was not saved, which meant the codec had to be reselected (and possibly reconfigured) for every export. Fixed.
  4. The default MIDI setup has been changed to make it more user-friendly.
  5. In previous versions, the Range column in the MIDI setup dialog consisted of only one value. The Range column now consists of two values: low and high.
  6. In dual-monitor exclusive mode, the cursor was still visible along the edges of the secondary monitor. The cursor is now completely hidden.
  7. In previous versions, moving the origin via MIDI hid the cursor, which was a serious problem in dual-monitor mode. Fixed.
  8. In previous versions, Bézier curves could be unstable due to round-off error, particularly when Star Factor was negative and Pinwheel was non-zero. Fixed.
  9. Panic (Window/Panic or Esc) now clears the screen.
  10. In previous versions, if Ring Spacing was large, clearing the screen could cause the output to remain blank for an extended period. Clearing the screen now creates a new ring immediately.
  11. The actual frame rate is now shown in the status bar.
  12. In previous versions, if items were being dragged within the Playlist dialog, pressing Esc would close the dialog instead of canceling the drag. Fixed.
  13. In previous versions, left- or right-clicking on a dialog's caption bar would temporarily freeze the output. Fixed for all modeless dialogs, but not for modal ones.
  14. In previous versions, if Whorld was unmirrored and in Exclusive mode, the back buffer would always be located in video memory, even if "Back buffer location" in Options/Display was set to "Use System Memory". This made it difficult to avoid performance problems with the X-Ray effect, because X-Ray reads from the back buffer and reading from video memory is extremely slow. Whorld now respects the "Use System Memory" setting in all cases.
  15. In previous versions, if a modeless dialog had focus, most of the keyboard shortcuts didn't work. This was particularly a problem in dual-monitor mode. Keyboard shortcuts that use alphanumeric or function keys now work regardless of whether a modeless dialog has focus. Shortcuts that use other keys, such as Tab, Arrows, Backspace, etc. still require the main window to have focus.

1.6.06

Whorld 1.6.06 adds some interesting new features, including the ability to draw multiple Whorlds at once, and also fixes some fairly serious bugs, including an off-by-one frame error in recording, and a memory leak in the video overlay.

  1. This version adds two new master settings, Copies and Spread, which allow you to draw multiple Whorlds at once. Copies is the number of Whorlds to draw (ranging from 1 to 20), and Spread is their distance from the origin, as a radius in pixels.
  2. When mirroring is enabled, the video overlay's origin can now be controlled independently of the drawing origin. To change the video origin manually, hold down Shift while moving the mouse. To enable random jumps of the video origin, use Image/Video/Random Origin or Ctrl+Shift+R. In both cases damping applies.
  3. A command-line flag (/VJ) was added to allow the application to be started in VJ mode. It only works if the command line also specifies a playlist, snapshot, or movie file to open, e.g. "whorld /vj foo.whl".
  4. The Record dialog now allows the output frame rate to be fractional.
  5. The thumbnails shown in the Playlist dialog can now be exported for use in other software. This feature was added to support an experimental video clip browser (called WhorldRC) which runs on a separate PC and communicates clip selections to the Whorld PC via MIDI.
  6. In previous versions, the drawing in a recorded movie was unintentionally shifted in time by one frame. This meant that if video overlay was used, the synchronization between geometry and video would be off by one frame in the recording. This same bug also caused other off-by-one frame errors, e.g. in the movie player's position control. The bug is fixed.
  7. In previous versions, closing a video failed to free its associated DirectDraw surface. This resulted in a potentially serious memory leak, particularly if many videos were opened and closed, or the video frame size was large. This is fixed.

1.5.12

This release adds the ability to blend a video clip with the animation. It also adds a thumbnail view to the Playlist dialog, and fixes a bug that occurs when curved rings are skewed.

  1. The application now supports video overlay, which allows a video clip to be blended with the animation. Note that only AVI files are supported. Various blending methods are available, including the boolean operations AND, OR, and XOR. Videos are handled in much the same way as patches. Videos must be inserted into a playlist beforehand, using the Playlist dialog, and can then be played via shortcut keys or MIDI. The most recently used videos are cached, and can be selected using the numeric keypad, or automatically cycled in sync with the master tempo.
  2. In order to accomodate videos, the number of banks in a playlist has been increased from ten to twenty. The upper ten banks are accessed by pressing keys 0..9 while holding down the Shift key.
  3. The Playlist dialog now supports a thumbnail view, allowing both patches and videos to be organized visually instead of by name. The thumbnails are available in a range of sizes.
  4. In previous versions, if the Skew parameter was combined with Bézier curves, the rings would be unexpectedly distorted. The curve points were being calculated using the unskewed origin, which caused the curvature to differ at each vertex. Since the asymmetry was proportional to the amount of skew, large skew values would give the rings a squashed appearance. This is fixed; the Skew parameter now behaves as expected. Note that this fix potentially changes the behavior of existing patches that combine skew with curves.
  5. The Master dialog is now horizontally resizable.

1.4.05

This release makes it easier to export selected frames of a recorded movie, and fixes some minor bugs.

  1. In previous versions, to export a subset of a movie, it was necessary to enter the frame range numerically in the movie export dialog. The movie player now allows you to select a frame range, and also provides a Save button that brings up the export dialog and passes it the frame range. This allows you to select the export range visually in the player, instead of entering it numerically.
  2. In previous versions, entering a frame rate of zero in the movie export dialog would crash the application. Admittedly it was an unlikely case, but it's fixed anyway.
  3. The panic command has been extended: in addition to its previous effects, it now also disables random origin motion, disables reverse mode, and sets master speed to a default value.

1.4.04

This release is a bug fix; its purpose is to fix a problem with Convex mode, which was added in version 1.3.

  1. Enabling Convex mode with filled rings caused two color-related problems: a) all the colors were shifted by one ring, and b) the innermost filled ring and its interior were the same color. Both problems are fixed.

1.4.03

This release is a bug fix; its purpose is to fix a problem with the Bézier curves, which were added in the previous version.

  1. In the previous version, if one ring had a non-zero curvature, all of the rings were drawn as curves, regardless of whether they needed to be or not. This all-or-nothing implementation had the potential to cause serious performance problems during patch changes. For example, if you switched from a patch that didn't use curves to one that did, suddenly all the existing rings would be drawn as curves. Their appearance wouldn't change, but they would consume vastly more processing power. If the ring count was large, the frame rate could drop, or the application could seize up. The new version avoids this situation, by making the curve decision per ring, instead of per frame.

1.4.02

This release is an enhancement; its main purpose is to add Bézier curves. It also enhances the patch file format, so that a patch includes all effects and master controls.

1.3.07

This release is a bug fix; its purpose is to fix two bugs, one in Zoom, and one in the detached view.

  1. In version 1.3.06, a bug was introduced which causes rings to be deleted unexpectedly if zoom is increased by a large amount all at once. This can occur with the Zoom slider, or with the mouse or MIDI if damping is set to zero. This is fixed.
  2. In all previous versions, if the view is detached, and the document is modified, closing the detached view displays a file save dialog, as if the entire application was being closed. Canceling this dialog results in an orphaned unpainted window, which may subsequently cause the application to crash. This is fixed.

1.3.06

This release is an enhancement; its main purpose is to add the Trail feature. Other new features include the Convex effect, window-centered zoom, and a new oscillator waveform (Random Ramp). This release also includes several bug fixes, mostly related to zoom.

1.2.02

This release is an enhancement; its purpose is to allow the oscillators to be controlled live via MIDI. The changes are as follows:

  1. In previous versions, a MIDI message could be assigned to a parameter's master offset, but not to its oscillator properties. Consequently, when the edit selection was set to "Master Offsets", the oscillator properties in the Parameters dialog were disabled. Version 1.2.02 enables them, thereby allowing "oscillator override". An overridden oscillator obeys the override properties, instead of the properties from the document or crossfader mix. Note that override is only enabled when the override frequency is non-zero; if the frequency is zero, adjusting the other override properties has no effect. The oscillator override properties can be assigned MIDI messages in the usual way, via the MIDI setup dialog. NOTE however that you must first check the "Advanced" checkbox in the MIDI setup dialog's upper-right corner, because the new MIDI properties are hidden by default.

1.1.01

This is a maintenance release; its main purpose is to eliminate the movie export's 2 GB limit. The changes are as follows:

  1. In previous versions, the movie export was unable to create AVI files larger than 2 GB. This was a serious limitation when exporting uncompressed video, and the only workaround was to export BMPs instead. The new version eliminates the 2 GB limit, by using DirectShow instead the obsolete VfW API.
  2. In previous versions, the movie player and movie export dialogs showed times in mm:ss format, except for the export's frame range, which was shown in frames. Both dialogs now show all times in mm:ss:ff format.
  3. The movie player now has an "Open" button, and also supports opening movies by dragging them onto the player from Windows Explorer.
  4. In previous versions, the master dialog's Speed, Zoom, Damping, and Rings edit boxes were read-only. All of these values can now be edited.

1.0.91

This is the initial release.

For a more comprehensive list of changes, see the revision history.

Whorld Freeframe plugin

1.3.00

This release makes the plugin compatible with version 1.7 of the Whorld application. It adds two new Bézier curve parameters, and fixes a bug that made curves unstable in certain cases; see the application release notes for details.

1.2.00

This is a maintenance release: it adds support for 16-bit bit color and two new master settings, and fixes a bug which could cause the output to appear upside-down.

  1. The plugin now supports 16-bit color.
  2. This version supports two new master settings which were added in version 1.6 of the Whorld application. The settings are Copies and Spread, and they allow you to draw multiple Whorlds at once. Copies is the number of Whorlds to draw (ranging from 1 to 20), and Spread is their distance from the origin, as a radius in pixels.
  3. In previous versions, the frame was flipped vertically. This was correct behavior for some hosts, but not for others. The plugins now get the orientation from the host, which passes it in via the VideoInfoStruct.

1.1.04

This is a maintenance release; it fixes a bug that definitely causes Visual Jockey Gold to crash when the plugin is loaded. The bug may also cause problems in other hosts.

  1. In all previous versions, the deInstantiate function wasn't actually deinstantiating the plugin. This nasty behavior was caused by a simple coding error: the function was clearing the instance pointer before deleting it, instead of the other way around.

1.1.03

This is a maintenance release; it fixes a bug that occurs when curved rings are skewed. This bug was also fixed in version 1.5.12 of the Whorld application.

  1. In previous versions, if the Skew parameter was combined with Bézier curves, the rings would be unexpectedly distorted. The curve points were being calculated using the unskewed origin, which caused the curvature to differ at each vertex. Since the asymmetry was proportional to the amount of skew, large skew values would give the rings a squashed appearance. This is fixed; the Skew parameter now behaves as expected. Note that this fix potentially changes the behavior of existing patches that combine skew with curves.

1.1.01

This is the initial release.