Eyeon:Manual/Fusion 6/Fusion 6.1.4 Build 760
From VFXPedia
< Eyeon:Manual | Fusion 6
Fusion 6.1.4 Build 760
[ Main Manual Page ]
Build 760 (15th December 2010)
This section lists changes made since Fusion 6.1 build 697 was released.
Contents |
Important Known Issues
- Due to some internal changes, particle fuses are currently disabled.
Core
- Reduced the number of threads needed to execute in-tool scripts and expressions.
- Fixed a possible deadlock adding a tool with a saved default.
- Fixed a lockup that could occur during Undo/Redo for tools with expressions.
- Fixed a case where source tools could re-render unnecessarily, when auto-proxy is enabled.
- Fixed DoD calculations when a concatenated transformation was effectively passed through (eg. blend of 0.0).
- Comps are written out in a more compact form.
- Fixed resolving of the GL_ARB_vertex_program extension, which could cause a crash on startup in some non-hardware accelerated environments.
- Fixed crash that could occur if concatenated transform tools are trimmed, and have motion blur.
- Image’s Saturate() function works now, and supports float pixels.
- Fixed a rare deadlock that could happen connecting a tool to a preview.
- Fixed a case where requests could get chained in the wrong order, leading to possible lockups.
- Lua errors during startup (eg. in a .scriptlib) could produce a popup dialog rather than going to stdout for ConsoleSlave.
- Improved request passing priorities.
- The render thread is no longer flooded with invalidate messages, that it never has an opportunity to process before it is terminated, when closing a comp.
- Help topics are now also checked for “https”.
- Fixed serial number routing issues in 32bit versions.
- Fixed a crash if an exception occurs saving a comp (eg. running out of disk space).
- Replacing a tool with a new one, but keeping the old settings, will now keep the old input expressions and tool name.
- Fixed leaking of control page names.
- Mask tools can now cached to disk.
- Updated the online/vfxpedia help map to refer to the Fusion 6 manual for preferences.
- Better able to find .helpmap files given multi-path maps.
- Fixed a problem keeping track of input and control names, and whether they’ve changed (related to TagList making a copy of the string for string tag types), that could cause some controls not to change their label if the input name is changed (as could happen to the Seeth input of FastNoiseTexture when changing the Output Mode), or could cause extra refreshing of controls when the same control name is set over and over (as could happen when adjusting controls in Krokodove Contour).
- The mask “Frame” clipping mode was clipping the mask, but not the soft-edge blur.
- The Image::Gamma() function should work with negative pixel values.
- Updated the online/vfxpedia help map for the Time Ruler.
UI
- Fixed a case where adding a new tool (auto dropped) might not push the next tool out of the way.
- Fixed an infinite loop in the flow view if a comp has instanced tools, but the “Show Instance Links” option is turned off.
- The macro editor can now export 3D material inputs/outputs as main inputs/outputs.
- Fixed a divide by 0 related to view layout, that could lead to invalid values being saved in a comp.
- Enabled LMB+MMB+drag zooming of the flow view around the mouse pointer position, rather than the centre of the view.
- Using RMB to drag pipes to get the connection popup menu works again.
- The time slider only saves the visible range if it’s not equal to the global range. This allows the comp layout to be grabbed, without having the visible range always locked to what it was at the time, despite what the default global range prefs might later be changed to.
- Fixed a case where the time slider visible range might not be updated when loading from default prefs.
- The prefs option to not use the layout saved in a comp, will now only ignore just the layout, but still use the views’ saved settings.
- Fixed inconsistencies related to showing context menu options for a group, but an option actually affects the tool responsible for the group’s primary output, and vice versa, which could lead to the inability to change some options, or once changed the inability to set them back.
- Fixed the “Set Fill Color” menu option for groups.
- Hopefully fixed an issue where drag-n-drop could be disabled for the flow view of remaining open comps, once a comp has been closed.
- In the render manager, a completed job that gets its completed frames cleared, wasn’t then restricted by any subsequent changes to the render range.
- Fixed a potential undo issue when picking colours.
- MMB doesn’t get swallowed up by the flow view navigator, and is now passed through for panning of the flow view. Also made the flow view border in the navigator stand out a little bit more.
- Fixed multi-selection of files when using the standard Windows file dialog.
- ‘Save changes to’ dialogs show better file/comp names with non-7bit ASCII names and non-english labels.
- Setting an input to default wasn’t aborting/syncing render.
- Text+ library doesn’t crash if stamps are missing.
- The progress control wasn’t using the correct colours in the RenderSlave.
- Changed how file sequence numbers are shown in the file requester for gathered sequences. The file name is shown with a # substituted for each digit (with the number of # equal to the largest number of digits found in a file name), followed by the overall sequence number range in () brackets, followed by missing files contained within <> brackets.
- Fixed lockup that could occur publishing and linking font controls.
- Mutually exclusive (mx) popup toolbar menu entries get radio buttons again instead of check marks.
- Fixed problems showing expression edits with some control types (eg. checkbox, multibutton).
- Fixed a problem obtaining the initial label for buttons and checkboxes, that could treat a UTF8 label as ANSI.
Tools
- Hopefully avoid a crash in the (old) Grain tool when the combination of size, aspect and proxy make the grain ‘blobs’ bigger than the image size.
- The Probe modifier isn’t so staggeringly inefficient in rectangle mode anymore. It’s now at least 10 times faster.
- Fixed a problem loading/initialising Paint multistrokes in certain cases, that could cause missing strokes and/or crashes.
- Fixed crash in Paint when switching to the image brush shape, if there are no image brushes available.
- CornerPositioner and PerspectivePositioner now show render progress.
- Fixed problems setting the parent tool of LUT splines when loading settings into CCv or HueCurves, that was causing the LUT splines to disappear.
- Fixed a problem with rendering of open double polyline masks.
- Fixed a lost request, and possible subsequent deadlock if a mask tool is directly upstream of a wand mask.
- CopyMetadata and SetMetadata fuses now process metadata during precalc.
- Fixed accuracy of Paint soft brush calculations, which fixes very small values being rendered in the corners of brush splats.
- Fixed a problem where the generation of ColorCorrector’s match histogram after loading a comp, would use the match reference image from the snapshot time, but what is being matched to it might use the current/saved comp time, rather than the snapshot time.
- Fixed a case where ColorCorrector’s match histogram might not be re-generated if histogram smoothing is adjusted.
- ColorCorrector doesn’t request the match reference image, if it’s not actually doing matching.
- A double-poly mask being applied to an image with a depth greater than 8bit/channel, could get a frame clipped RoI, even when the clipping mode is “None”.
- Fixed an occasional horizontal streak that could appear in the double-poly soft edge.
- Fixed a crash when adding a Saver in Rotation.
- Fixed Defocus bloom threshold calculation for the OpenCL case. The OpenCL case now handles frame and domain clipping modes. None clipping mode still behaves as if the canvas colour is black/transparent.
Particles
- Added ‘delta’ variable to pCustom expressions, for taking time deltas into account.
- Fixed issues with particle caches and motion blur on a 2D pRender.
Formats
- Was attempting to read the full image height from uncompressed raw format files, rather than just the DataWindow height, which crashed when the DataWindow was smaller.
- Forces the data window to be at least 1×1 when writing out EXR files, since OpenEXR libs can’t handle an empty data window (since that would be an invalid Box2i, due to inclusive co-ords).
- Can now read/write single channel (alpha channel at least) raw format images.
- Suppress warnings when reading TIFF files, to stop masses of messages about incorrect StripByteCounts (that gets recalculated) with ConsoleSlave.
3D
- Orthographic viewing volume scale works again in Camera3D.
- Changing Camera3D’s control visibility options no longer causes invalidates/re-renders.
- Fixed spotlight flickering.
- Fixed a crash when determining the texture depth needed for cube maps, if there aren’t images for all faces.
- Locator3D no longer generates view control transforms, since it doesn’t transform the upstream scene.
- Added a Transform Method option to Duplicate3D, for accumulated (eg. SRT * SRT * etc.) vs. linear (eg. S*S*S * R*R*R * T*T*T) transformations. Added transformation order options.
- The Camera3D control for perspective cameras will now show the frustum, near/far plane etc. scaled by any transforms.
- Fixed sizing of UVW rotation order buttons in TextureTransform.
- Added Copy Probability and Jitter Probability controls to Duplicate3D.
FBX
- Fixed crash when reloading a saved comp containing an imported FBX which has one material feeding more than one material input on the same FBXMesh tool.
- Fixed FBX meshes getting assigned random ObjectIDs in renders.
- Fixed crashes with the x64 version when importing some non-FBX 3D formats, due to the FBX library sometimes wanting to output to a NULL file.
OpenCL
- Added support for double-precision floating point types (and for AMD’s limited version of it). Unfortunately, recent nVidia drivers (v260) appear to have a bug where cl_khr_fp64 is defined by the OpenCL compiler, even though the extension isn’t available and the hardware isn’t capable.
- Updated OpenCL Mandelbrot fuse to use double-precision floating point when available.
- Added SetArgDouble() for fuses.
- Error reporting uses more useful line numbering for OpenCL implementations that support #line.
- Fixed driver/device version attribute fetching.
- Rearranged and added the OpenCL version to the status in OpenCL prefs.
- Fixed and improved uploading and downloading of lua tables to/from buffers. Some syntax has changed:
CreateBuffer(Image source, string flags)
CreateBuffer(table source, [number num_elements,] string element_type, string flags)
If the buffer is write-only, source table is ignored (may be nil), and num_elements is required.
Download(OCLMemory imgsource, Image dest)
table dest = Download(OCLMemory bufsource, number num_elements, string element_type)
Table form now returns a new table instead of being passed an existing table (which never worked well). - Calling conventions for 32bit callbacks have changed (been clarified) in the OpenCL specification, leading to changes between v259 and v260 of nVidia drivers, and between AMD Stream SDK 2.1 and 2.2 (or the AMD Catalyst 10.10 Accelerated Parallel Processing (APP) technology Edition driver). Because of this, previous 32bit versions of Fusion will crash with OpenCL usage, with current drivers. Fusion now detects the driver used, and attempts to compensate.
Display Views
- Can now switch from a file based LUT back to a plain non-file Fusion View LUT.
- Fixed ctrl+click selection of objects in 3D views.
- Fixed filename handling for some view LUT macros.
- .viewlut files (and the Create3DLUT script) now preserve view LUT selection.
- Guides in 3D work better when not viewing through a camera, and when viewing through a camera with film back and fit options that cause the guides to extend beyond the edges of the view.
- New fullscreen DirectX-based preview for multi-monitor systems. Supports stereo on a nVidia 3D Vision setup (without requiring a Quadro).
- Hitting Esc while the DirectX preview window is active closes the preview.
- DirectX preview is available on single-monitor systems. Perhaps not as useful as it is on multi-monitor systems (as it will completely cover up Fusion’s UI), but it can at least be closed (using Esc).
- Added support for mirroring viewers to a global preview (in the view’s Global Options menu), eg. to the DirectX-based preview (not required to use the DirectX preview - just an example of a preview that could be mirrored to). It doesn’t update when Fusion isn’t active.
- The Snap toolbar button now has a popup menu to choose between snapping to pixel boundaries or to pixel centres (default is pixel boundaries).
- Support for more generalised viewer picking. Can now pick X/Y/Z translation, pivot, rotation/normals and target from a 3D view, or from RGB image channels. Can pick UVs from an object in a 3D view, into TextureTransform. Can pick (eye-space) Z/depth (eg. in a Deep Pixel Fog tool) from a 3D view.
- Fixed a multi-threaded race condition crash with rectangle controls that show an image overlay (eg. Merge/Transform).
Polylines, Paths & Grid Mesh
- Can now cut/copy/paste points on Paths and XYPaths, with an optional offset when pasting (ctrl+V will always paste with a 0.0,0.0 offset. Must use the specific context menu option to paste with an offset). Pasting will replace any selected points. It uses the system clipboard, so they can be edited in a text editor, or copied between separate running copies of Fusion.
- Can convert to/from (poly) Path and XYPath.
- Fixed creation of an extra XYPath point after advancing time, and dragging the last point.
- Fixed a deadlock when editing XYPath in “current time only” mode.
- Fixed difficulties grabbing and hovering over Polyline, XYPath or Mesh points with very tall or very wide images.
- Fixed a problem that would prevent rescaling of the displacement spline after adding path points, if the path is not connected.
- Fixed a problem tensioning selected Polyline handles, if the length of any handles are zero.
- Fixed problems determining the disabled state of the outer shape of a Polygon or BSpline mask tool, when loading from a comp/settings, stemming from the state being saved incorrectly (inverted) since Fusion 5.1. While ‘PolyLine2Disabled’ is still saved into the comp (to maintain forwards compatibility), the actual input’s disabled state is now used when loading the comp.
- Fixed a problem updating the polyline view toolbar when undoing and redoing ‘Make Double Poly’.
- The label control in Polygon/BSpline for the outer shape now refers to ’shape’ rather than ‘polygon’ to be consistent with the label for the main/inner shape.
- Enabled coverage based blending for the double-poly softedge, if it’s a non-closed or non-solid poly (ie. it now has anti-aliased edges).
- Improved B-Spline to bezier conversion when exporting a B-Spline polyline.
- Can now import previously exported bezier shapes, into a B-Spline polyline, with appropriate conversion to B-Spline, rather than the tool becoming a Bezier poyline.
- Fixed problems rendering non-closed B-Spline double polylines.
- Fixed a random crash that could occur deleting spline modifier points.
- Fixed crashes when expanding/offsetting/moving outer polyline points with multi-frame editing enabled.
Splines, Timeline & Spline Editor
- Fixed problems invalidating the cache for non-Bezier spline types, after pasting and inserting points.
- Cut/copy/paste of spline points will use the system clipboard. Points can be given a Y offset when pasting (ctrl+V will always paste with a 0.0 Y offset. Must use the specific context menu option to paste with an offset).
- Fixed crash caused by a buffer overrun, displaying long input expressions in spline editor tree entries.
- Fixed a crash triggered by showing a tool’s LUT controls, then closing them, then switching to a different tool settings.
- Fixed a crash caused by clicking in an empty spline editor, and pressing ‘f’ (which would normally set flat spline handles).
- Fixed a crash in the spline editor tree, determining tool order, given some tool/modifier configurations.
- Fixed a problem easing or tensioning selected Bezier spline handles, if the length of any handles are zero.
- Fixed a crash clicking a spline editor tree checkbox in some cases when items have simple expressions, but they’re all currently unchecked.
- Hovering over splines will now also show the first derivative (ie. slope) of the spline in the status bar.
- Fixed time range used to invalidate the cache after undoing, then redoing the editing of a spline that has the last point set to ‘gradient extrapolation’.
- Changed when LUT splines rename themselves, which allows it to work in more cases. It means all of HueCurves LUT splines will now get useful naming (rather than just the suppression ones).
- Fixed a crash that could occur pasting spline points.
- Fixed a crash when using the shapebox with LUT splines.
Scripting & Fuses
- Mapped IMG_PassThrough and IMG_PassThroughAux tags for creating Images in fuses.
- Added Image-like Width/Height/etc. members for concatenated transform parameters.
- Mapped INP_DelayDefault for fuses.
- Added Image:Clear() for fuses.
- Added mat = Matrix4(<table>) and <table> = mat:GetTable(), for converting lua tables to/from Matrix4.
- Reloading a fuse now gets a single undo entry, rather than one per input/output.
- Fixed crash when OnActive() is called for fuses with a nil ‘frame’.
- Request:SetInputData() now allows nil parameters.
- Mapped LINKID_LegacyID tag for use with AddInput().
- Mapped ICD_PickScale and ICD_PickOffset tags for fuses.