Eyeon:Manual/Fusion 6/Fusion 6.3.1 Build 1000

From VFXPedia

Jump to: navigation, search
Fusion 6.3.1 Build 1000

[ Main Manual Page ]


Build 1000 (24th February 2012)

This section lists changes made since Fusion 6.3 build 946 was released.

Contents


Core

  • Image::Transform() should no longer crash when transforming into ImageWindow sized destination DataWindows in low quality.
  • Does explicit clipping of RoI sent upstream to the upstream tool’s DoD, rather than expecting the tool generating the RoI to do it.
  • Changed some multi-threaded locking of preferences from exclusive locks, to shared locks.
  • Is better able to determine when a document is being closed twice (which seems to happen very occasionally for some reason), to avoid a crash.
  • Fixed a small memory leak when loading fuses with duplicate IDs.
  • REG_NoPreCalcProcess now works for source tools.
  • Flattening of concatenated transforms during DoD pre-calc wasn’t outputting aux channels, which would cause tools that need them to fail (eg. Volume Fog), even though it would get the aux channels when flattening real image data.
  • Fixed a bug in Image::ImageCrop() that caused simple copying to be done, when it should have been offsetting.
  • Operator instances can override their help page with a topic/URL string in m_CustomData["HelpPage"].
  • Deleting a viewed tool will now connect the view/preview to the upstream tool, rather than disconnecting the view.
  • Setting or clearing request flags will now cause an update to a possibly different DoD and RoI for the input (eg. forcing an input to get a non-proxied image).
  • Pre-generates some log info at startup, rather that doing it at crashdump time, when it might not be able to.
  • Will now only set the process priority only if it has been explicitly set in command line options (with /pri), which now means that without the option, it will inherit the priority from the parent process (eg. from a command line), rather than always forcing itself to normal priority.
  • Fixed a deadlock that could occur when a concatenated transform is used directly as a mask input on a non-transform tool.
  • Fixed a lost request, which could lead to a later deadlock, caused by incorrect RoI matching when request chaining in some cases (eg. masks with soft edge blur).
  • Multiply by Mask will now clip the DoD even for non-DoD tools.
  • Can use INP_AcceptsDoD, FALSE, to stop RoI behaviour for a particular input (ie. the ImageWindow will always be requested, and returned, just as if it was a non-DoD tool).
  • Fixed an obscure deadlock that could occur when freeing up memory due to the cache limit being reached.
  • Worked around a possible crash when destroying some 3D and OpenCL resource objects.
  • Tool names in input expressions are no longer adjusted when the tool is renamed, if the input is instanced, as this will cause the expressions on the instance parent to get renamed too, eg. when pasting a new instance.
  • Macros now supports multiple sets of preview controls from children, each with the same original control group.
  • Fixed inadequate clean up of requests in a motion blur case, that could leave requests in-use, leading to possible deadlocks.
  • Will canonicalise mapped paths, which should avoid things like QuickTime libraries not working and crashing when given a path with relative components.
  • Using an expression to set a non-table or non-parameter into a Point input (eg. setting it to a single number) no longer produces a Lua runtime error.
  • Can use IMG_CopyChannelsAux, FALSE, to keep the like image’s colour channel configuration, but no aux channels.
  • Prefs could potentially never save out, if there was a left-over temporary file from a previous error during saving of prefs.
  • De-instanced inputs and outputs wouldn’t save in compact form.

UI

  • Can now use middle-mouse button to pan the time ruler.
  • Shows “Online Help” rather than “VFXPedia Help” in the Help menu.
  • New online help, and new local help derived from it.
  • Various menus are now customisable using Fusion.menus stored in the Profile: path, similar to Fusion.hotkeys.
  • The status bar will show the file path when navigating main Tools\Macro or Scripts main menus.
  • Macro menus with lots of entries will be split into columns rather than a scrolling list.
  • More consistent sort order between main menus and context menus, for Macros and Scripts from multiple directories (multi-pathmaps), to hopefully avoid confusion.
  • Toggle buttons in multi-button controls now show as ‘pushed’.
  • The Render button wouldn’t show the correct button imagery if skins were changed during rendering.
  • Tweaked key handling in edit boxes, to allow some key combinations that weren’t previously working (eg. legacy Windows cut/copy/paste).
  • Better behaviour from colour controls when there are (incorrect) duplicate control groups, but with different input control types (eg. a badly formed macro or user controls).
  • Changed the order that input and output data types are checked/changed in pipe routers, which might help them keep their output datatype as that of the upstream tool, rather than keeping their input the same as the downstream tool. This should hopefully allow image tools connected to a mask input, via a pipe router, to show the extra mask related options, as it’s still an image type feeding into the downstream tool, rather than a mask type.
  • The pipe router flow tile takes on the colour of the upstream tool.
  • Changing the case of the file name for a saver directly was being ignored (previously, would have to pop up the file requester and change the case there for it to take).

Tools

  • Added an “Add Metadata” option to Combiner to add Stereo.Method = "hstack"/"vstack" metadata.
  • Volume Fog and Volume Mask no longer check/require position channels during DoD pre-calc rendering.
  • Added tilepics for Alpha Multiply and Alpha Divide.
  • Transform’s Width/Height sliders now show 1.0 as the default value, rather than some semi-random position, based on where Size was before it was switched to Width/Height mode.
  • Some notifications to OFX plugins are now deferred if necessary to avoid a deadlock.
  • Added OpenCL support for rectangle LUT cubes in LUTCubeApply. It no longer applies proxy scaling to the cube in auto-proxy (which could cause it to not be a valid cube size).
  • Volume Fog waits for any queued OpenCL uploads to complete before cleanup, if aborted.
  • Fixed a signed/unsigned problem in Displace, causing wrapping of values when the offset produced negative values for integer images.
  • Added back vector/velocity and disparity channel support to Channel Boolean and Custom.
  • Tracker should no longer reset the patten select time to current time when loading a comp. Will now actually use the pattern select time, rather than current time, to grab the pattern when rendering for the first time after a load.
  • Added RoI support to Grid Warp. It’s not full DoD/infinite workspace support, but enough to produce significant performance increase if only a limited area needs to be rendered.
  • Single pixel wide or high characters in Txt+ (eg. a small i or l) weren’t being composited into the final result.
  • Increased the width that Txt+ softness is rendered out to, to avoid premature clipping.
  • Fixed the Add Metadata option in Combiner if the image has no metadata already.
  • Splitter removes Stereo Method metadata when unstacking.
  • Mask Paint should no longer crash when the mask size is different to what’s being masked (eg. if the mask has a Custom frame format set, and it’s being viewed directly). It won’t necessarily work very well, but at least it won’t crash.
  • Fixed Mask Paint when there are two (or more) concatenated transform tools in a row, and the 2nd (or later) one is being masked with a Mask Paint.
  • Fixed a crash in Erode/Dilate related to DoD clipping modes.

3D

  • Renderer 3D now adds Stereo = { Method=h/vstack } metadata, when rendering stacked stereo.

FBX

  • Fixed a crash in the FBX Mesh 3D tool if the FBX has no geometry (eg. camera only).

Formats

  • Added JPEG 2000 format support.
  • Added back vector/velocity and disparity channel support to OpenEXR.
  • Updated RED R3D support. Now includes simple HDR modes for multi-track files.
  • Fixed a per-Loader memory leak in the eyeonQTServer that would accumulate after loading and closing comps that use QuickTime, eventually leading to failures and crashes.
  • Reduced total memory usage in eyeonQTServer when using multiple QuickTime Loaders.

Particles

  • Fixed a crash with particle disk caches. Unfortunately existing caches may have to be re-rendered.
  • Fixed a crash with pImageEmitter, when used with a pSpawn, if the particle colour isn’t locked to the initial frame.
  • Fixed a crash when pSpawn was producing point clusters.

OpenCL

  • Fix for using AMD as a non-Primary OpenCL card.
  • Added a couple of early OpenCL 1.2 device capability queries.
  • Fixed setting of image data window kernel arguments. It was keeping intermediate values in a FuRectInt, that normalises its co-ords (ensures left <= right and bottom <= top), which isn't suitable for storing width/height.

Display Views

  • Stereo.OffsetX.Stack prefs now actually uses pixels as originally intended.
  • Stereo metadata doesn’t override stereo method unless specified.
  • Fixed a crash with the DirectX View when the image had data outside the normal image bounds. The DirectX View now recognises Stereo.Method and .Swap metadata hints.
  • Fixed sizing of the inspector subview with aux channels, and added disparity channels support.
  • Can now display any single aux channel. The channel popup only shows channels in the image. Also supports viewing channel groups as RGB. Two channel groups will show as RG.
  • More efficient image normalisation.
  • Fixed floating views not properly respecting Fullscreen prefs on creation.
  • Draggable Subviews!
  • Added a ‘difference’ stereo mode.

Polylines, Paths & Grid Mesh

  • No longer leaks an array of mesh points each time the mesh control is destroyed (ie. deselecting a Grid Warp tool).
  • Fixed a crash when exporting a BSpline polyline as “Point Samples”.
  • Improved shaping Bezier polyline and mesh point handles with the shapebox.
  • Added missing shortcut label “Shift+T” to the context menu entry for “Tagged Points”.

Splines, Timeline & Spline Editor

  • Attempts to use the same colour for splines on inputs with same name on different tools.
  • Fixed click+add dragging multiple points on different LUT splines in the spline editor.
  • Can hold down ‘c’ while dragging a spline point, to constrain its movement to be within neighbouring points (ie. to stop the ability to drag past other points).
  • Fixed a problem with the loaded order of tools in the timeline if explicit re-ordering had not been done.
  • Explicit re-ordering in the timeline can be reset with an option in the tool mode drop-down button.
  • Fixed a problem hiding non-spline modifiers in the spline view when unchecking its tree item checkbox.
  • Fixed very slow displaying of non-spline modifiers in the spline view, if the view is zoomed in a long way.
  • Fixed a problem after shaping/stretching spline points, removing the shape box, selecting points, then undoing to bring back the shape box, after which shaping wouldn’t work.
  • Fixed issues redrawing spline handles if dragged while tapering is enabled.
  • Fixed updating of the taper options when changing the spline point tensions with ‘w’+drag.
  • Fixed a crash that could occur adding the second point to a B-Spline.
  • Fixed a problem with redrawing selected LUT spline points in a LUT control after spline tapering.
  • Fixed positioning of taper controls, and button repositioning in the spline editor.
  • Fixed a problem with cache invalidation when adjusting spline tension (’w'+drag).
  • Fixed a crash when deleting the first point on a LUT spline.
  • Fixed a possible crash when moving selected spline points past other neighbouring points.
  • Improved scaling, streching and shaping bezier spline point handles.
  • Fixed a problem setting the spline editor’s vertical scale when loading a comp.
  • Fixed a crash moving spline keys by dragging the related key marker above the view. Enabled dragging key markers for LUT splines.
  • The current time indicator now has higher drag priority than guides in the spline editor, similar to the timeline.
  • Can now change current time to that of a guide, by double-clicking on the guide.
  • Fixed a possible divide-by-0 crash in the timeline, when loading/closing a comp.
  • Can now double-click anywhere along a guide, not just the marker at the top of the view, to set the current time.
  • Matched LUT points (ie. first and last point in Hue Curves) no longer get double movement if they’re both selected and adjusted.
  • Fixed a problem saving and loading the visible state for the LUT splines in the spline editor.
  • Fixed a crash that could occur when reducing points on XY path splines in the spline editor.
  • Added an option for sorting the tools in the timeline by their first valid frame.
  • Choosing to show “Animated” tools in the timeline, wasn’t showing any tools.
  • Improved preserving the sort order of tools in the timeline after changing the “Animated” or “Selected” filter option.

Scripts, Scripting and Fuses

  • Python SystemExit exception (sys.exit()) should no longer quit fusion.
  • Now searches the “current user” install path in the registry for the python dll, rather than just “local machine”. This is used if Python was installed for ‘this user only’, rather than ‘everyone on this computer’.
  • ImageDomain now has fuse support.
  • DoD/RoI related fuse functions now use/return ImageDomain. Request:GetInputRoI() actually gets the input’s RoI, rather than the req/op’s RoI. Added Request:SetInputRoI(), which takes either a FuRectInt (which will be set into a copy of the input DoD and set as the RoI), or an ImageDomain.
  • Fixed a crash trying to use type(obj) in Python 2.x.
  • Fixed the help text for the Operator:Refresh() scripting function.
  • Added DoD/RoI support to the clBC and clMerge OpenCL fuse examples.
  • Added fuse constants for image channels: CHAN_RED, CHAN_GREEN, etc.
  • Added fuse function Image:GetChanSize(<channel>), returns the number of bytes or 0 if the channel is not present.
  • Added script functions ConvertToBezier() and ConvertToBSpline() to Polygon Mask and BSpline Mask tools.
  • Rewrote the FusionPolylineToSSF script, in order to support exporting animated shapes and converted shapes from B-Spline to Bezier spline points.
  • Added Background Alpha (BgA) processing to Image:ChannelOpOf().
  • The GLView:DisableSelectedTools() scripting function now disables all the selected tools, not just the active one.