Wishlist/Image Tools
From VFXPedia
Improvements and new tools for processing 2D images.
Contents |
Image Tools
General or Unsorted
- Also to aid tracking data, to be able to track and stamp a texture to a deforming surface
- Some node like enblend that blends two images seamlessly by looking at the spatial frequencies of features. The node would have inputs for foreground, background and a mask (like the dissolve node). The mask would then be feathered intelligently so the seam between foreground and background is concealed. For mattepaintings a standalone tool like enblend is enough but now and then, when tracking a cleanplate or set extension onto another plate, I've dreamt of this functionality inside Fusion. --Tilt
- -- and these gradient domain demos are even cooler, although I don't know how well they hold up on frame-to-frame difference in videos.
- multi inputs to the merge node.
- --Gringo: The inputs should be placed along one side of the node to understand layer order. If inputs are on the top or jump to the bottom, the order should be from the left (lower layers) to the right (upper layers). If the inputs jump to the left or to the right side of the node, the node should become vertical to place all the inputs along one side (lower inputs for lower layers and upper inputs for upper ones).
- Add more modes to Merge, at least a superset of the Bol tool. The Bol doesn't respect transformation or image scale, but sometimes I need to use those modes between images that are not perfect per-pixel matches. While Lighten is a substitute for Maximum, there's nothing suitable to replace Or, XOr, Divide, etc. --Chad 10:25, 12 October 2009 (EDT)
- --Nuke has two merge modes that I found to be quite useful for combining flames or fog in linear colorspace: "hypot", which is the pythagorean theorem's sqrt(A*A + B*B) and "geometric" which uses 2*A*B/(A+B) to merge the images. Would be nice to have them without resorting to a custom tool. --Tilt 08:46, 9 June 2010 (EDT)
- --Merge "Under" (over with Bg and Fg swapped) would be nice, in case you can't swap the inputs of the merge node (you might want to control which branch gets shown when Blend == 0 or which metadata gets passed to the output) --Tilt 14:20, 7 April 2013 (EDT)
- Pre-Divide/Post-Multiply checkbox in the ColorSpace to invert auxiliary passes more easily. --Gringo 10:42, 19 August 2011 (EDT)
- Add audio effect such as delay…
- New audio node
- --Daniel: that does what?
- -- it make easier to load the movie audio or any sound you want to use in the Comp.
- -- How would this differ from the existing "choose" function on the audio control on the transport bar? --Chad
- --you can load Multi sound files .
- --Or make the loader automatic load movie sound .
- -Ability to create splines from audio levels for quick motion graphics syncing and music-based animation.
- Based on overall levels? or levels at a certain frequency? I think Krokodove has a plugin modifier that might do that sort of thing, and you could bake it out with a script. --Daniel
- Both would be nice. Simple lowpass/bandpass/hipass filters should be quick to implement (considering that low-quality lowpass filter can even be done outside spectrum space). While similar functionality may be available from external vendors for a price, this kind of stuff should really be there straight out of the box.
- Based on overall levels? or levels at a certain frequency? I think Krokodove has a plugin modifier that might do that sort of thing, and you could bake it out with a script. --Daniel
- A separate Loader tool for audio files or audio formats support in the existing Loader, Audio Merge tool, and, maybe, an auxiliary Audio Channel (like Z-channel or Object ID channel) --Gringo
- New composition node to add ((composition in composition.))
- --Daniel: Explain, please?
- -you can load composition as node in another composition.
- -It will be nice to see some sort of referencing e.g. someone is doing roto while you're doing the grading and it and the roto updates interactively
- -- So this would be more of a request for an external referencing system? --Chad
- -It would be useful to trim subcomposition as a clip in timeline, similar to subxsheets in TOONZ and compositions in AE. This way general project wide settings would be in same place.
- -Such a node should have multiple image outputs according to the number of open branch ends in the composition. Although, I think it's easier to prerender the composition you want to insert and then just load the sequence... --Gringo
- Auto DoD for image loaders (optional, by looking at the loaded alpha) as well as for the Background Creator. Rationale: I often assemble comps using various pre-positioned stills (layers in Photoshop) on a blank Background. Adding a Auto DoD manually after every load can speed things up tremendously, but should not be needed --Lightwolf
- -- How would the LD or BG know what DoD to use? If it has to load the image in it's entirety to figure out what the DoD should be, the damage (time wise) is already done. --Chad 12:17, 25 September 2009 (EDT)
- -- You could switch that option on only in case there is no DoD stored in the image file. I agree, it'd keep the flow cleaner and deliver you from redundant actions.--Gringo 10:34, 26 September 2009 (EDT)
- -- But that still doesn't explain HOW the LD would know what the DoD of the image should be prior to loading it, unless it's in the header or a sidecar. --Chad 09:22, 28 September 2009 (EDT)
- -- This option would define DoD not for the loader itself, but for tools connected downstream. Even if the image loading process would remain slow, further resource-demanding operations would work in an optimized way. In other words, it'd be the AutoDomain tool integrated to the Loader.--Gringo 10:58, 28 September 2009 (EDT)
- -- Ah, gotcha. Sounds good. --Chad 10:25, 12 October 2009 (EDT)
- Pixel Reference Size controls (like in Xf and Merge) for the SetDomain node. I'd like to be able to crop, say, 15 pixels on all borders. --Tilt 03:24, 22 December 2010 (EST)
- New Common Controls checkbox, "process canvas color", default to true (to maintain compatibility with existing comps). When false, pixels outside the DoD are passed to the output unprocessed, essentially ignoring them. --Chad
- --Today I've logged in to request the same :)) Would be really nice to have such a feature to avoid bad mask inversion behaviour.--Gringo 03:51, 23 September 2009 (EDT)
- --I added such a checkbox to my invert fuse, and it's working nicely. All it does copy the input canvas color to the output canvas color if the checkbox is checked. But having it be standard for all tools would be better. --Chad 10:49, 23 September 2009 (EDT)
- The Loop parameter in the Loader tool should work not only forward, but backward as well. --Gringo
- Also would be nice if LD's had a Divide by Alpha checkbox. It has a Post-Multiply by Alpha checkbox, but does not have anything to account for images that are loaded already premultiplied. Would be nice if Mat had the same control, too --Chad 13:49, 16 April 2010 (EDT)
- -- I second the wish for a Divide by Alpha checkbox. If you use the effect mask to cut out a piece of a premultiplied rendering you can't unpremultiply it without also unpremultiplying the effect mask's soft edges. --Tilt 09:50, 9 November 2010 (EST)
- Possibility to import sequences with partially negative numbering as one clip. Now Fu can render a sequence of frames e.g. from -12 to 20, but to import it, you need to create 2 clips in a loader (one reversed). --Gringo
- Possibility to set negative values in the Source Time parameter of a TimeStretcher. --Gringo
- TimeSpeed and TimeStretcher shouldn't break concatenated transforms. --Gringo
- Animatable Speed parameter in the TimeSpeed. --Gringo
- Add filter selection (ala Xf and Mrg) to Trails. I know that no matter what I do I'll get softening from the repeated resampling, but I'd like more control over exactly how that is done. --Chad
- Better Deinterlacing tool (a la Algolith)
- 2d procedural texture creator similar to any 3d package with types like Voronoi and Musgrave, different kinds of noise and so forth. This functionality allows wide array of natural phenomena faked straight in the program (especially with the possibilities to select different particle texture based on velocity and to scale texture along particle vector etc) and it's relatively simple to implement.
- Additional parameter in the Image tab of all the creators, pRender and Render3D "Display Gamma" or this one + checkbox "Apply Display Gamma" to have possibility to work in true linear space. --Gringo
- -- I'm pretty sure all the tools in Fusion work in linear gamma. Only the advanced color tools like CineonLog or Gamut let you specify a gamma. Converting in and out on a per tool basis would be both slow and prone to error, especially in 8 bit depth. --Chad
- -- Try to create gradient in the BG tool. It's visually linear. Consequentially it uses gamma-correction to compensate display gamma. True-linear gradient should have dark shift in the midtones. And of course, gamma correction is necessary to avoid banding in 8 and 16 bit integer. --Gringo
- -- Not so. The BG on my display is visually linear because I have a perfectly linear display. That's what LUT's are for. If you look at the Position and Color readouts on the bottom of the UI, you'll see that the X Position matches the RGB Color. So we know the output is linear. If you have a linear display, or are using a viewer LUT to compensate for the non-linearity of your display, they yes, you will see a linear gradient. --Chad
- -- OK, maybe I'm wrong, but let's see what's happening... The gradient in The BG tool is visually the same when it's 8/16 bit integer and 16/32 bit float, so gamma is the same for integer and float.
- Try to import any DPX with Conversion Gamma=1. You'll see that it's visually not linear while the gradient in the BG looks linear. So, gamma of the gradient is not the same as gamma of the DPX (not 1).
- Create a 8 bit gradient from black to white in Photoshop. PS will show 128,128,128 in the middle of the gradient. Save it to TGA and open in Fusion. Fusion will show 0.5,0.5,0.5 too. These two gradients look similar, so they have the same gamma. And we know that PS works in sRGB space. My conclusion is that gradient in Fusion BG is gamma-corrected though it outputs linear values in the Status Bar.
- The gradient in the BG in contrast to the gradient from PS has visible banding in the darks. I assume that although the BG gradient shows sRGB result, it is linear inside. So, it's integer samples are evenly distributed from 0 to 1 and they are not enough in the darks when fusion applies gamma to compensate display gamma. Thus, the BG tool is linear, it shows linear values in the Status Bar but the image it produces is gamma-corrected not only in Display Views but in the Flow too. --Gringo
- Doesn't change the fact that having gamma conversion happen in each and every tool will result in a speed hit and a loss in color fidelity. --Chad
- -- I don't think that gamma operation takes any great time, especially if it's switched off... What about a global option to make all the tools in a composition to be true-linear? --Gringo
- -- I see someone has fallen into the trap of thinking that if they see something as linear, then it must be linear. The human eye is not linear. In the case of displaying a black-to-white gradient without a display LUT, the data is linear, the monitor is making it non-linear, and your eye is making it not quite linear again. Go here and here to find some discussion about it (will need to be a member of the Fusion-L archive yahoo group). --Stuart
- -- You are right. Nevertheless, the ways one can implement linear workflow in Fusion don't seem to be convenient. Let's say, you remove (or not apply) gamma from the source images and apply gamma via a View LUT. Then you need to apply a gamma removal procedure (BC or Gamut) to every single smooth or dramatically motion blurred mask and other nodes producing gradients. Besides, color correction with CC becomes completely unintuitive when a CC gets the image which differs from the one is outputted to the Display View (i mean the altered behavior of Brightness, Gain, Ranges, Levels controls sensitivity etc.). So, I still think tools should get a Pre-gamma/Post-gamma control or there should be a global display gamma option for composition which could make tools take the difference between actual and displayed colors into account.--Gringo
- ChangeDepth for Vision. To go from 8int to 16int, but also so that comps from Fusion that are converting between 8int and 16int don't fail. --Chad
- CustomTool should create an auxiliary channel if the expression for it was changed from default. For example, if you type r1 to the Z Expression field, Z channel should be created as a copy of Red. Now CT can only modify existing channels. --Gringo
- Four or unlimited image inputs in the CustomTool like in Merge3D. Why the quantity of inputs should be limited to three if at least four channels are constantly used?--Gringo 15:56, 23 October 2009 (EDT)
- Possibility of getting pixel color not only from a certain position, but also from any time (previous or next frame and so on) in the CustomTool. It could be included to the get[ch][#]b(x, y, time) function. The function would use current time by default if the time argument isn't available.
- This would allow to create a lot of time-related effects right without any plug-ins. --Gringo 09:43, 27 October 2009 (EDT)
- Would be nice if Custom Tool let you do getc1b(x,y), using the current channel for c. --Chad 18:20, 8 December 2010 (EST)
- A node to convert between different kinds of huge panoramic textures (latlong to cube map, mirrorballs to latlong, etc...) without the need to build a quick 3D scene or search for formulas to feed into the custom tool. --Tilt 15:22, 21 August 2010 (EDT)
- -- The CubeToLatLong Fuse can be an alternative to 3rd party apps but it's slow and filtering quality isn't up to par with proper panorama tools. --Tilt 07:31, 15 March 2012 (EDT)
- A switcher node that works like the macro or fuse, but doesn't break concatenated transforms, works with 2D, 3D and shader data and allows for unlimited inputs like the Merge3D. --Tilt 17:21, 8 October 2010 (EDT)
- The dissolve tool on which the macro is based on is a bad workaround for a switch since it doesn't support DoD. --Tilt 14:20, 7 April 2013 (EDT)
- Which brings us to the next wish: Dissolve should preserve the DoD. In case the slider is in between foreground and background, the DoD would either be the union of both inputs --Tilt 14:20, 7 April 2013 (EDT)
- Add a button to the SV that saves an image using the current saver settings at the button press time. A checkbox for "padding" to toggle the number padding at the end. What this would do is let us use the SV to set the path and format settings but give us instant renders like what "Save Image..." does in the viewer. --Chad 16:15, 3 March 2011 (EST)
- I wrote a Toolscript to do something like this. I use it to make thumbnails images. --Drswoboda 03:24, 08 March 2011 (CST)
- Which takes us to the "Let's have buttons that can launch tool scripts" wish that was already made somewhere on the wishlist. If you could add them with the User Controls script, this would certainly facilitate pipelines a lot --Tilt 17:03, 8 March 2011 (EST)
- Yeah, that would let us clear a lot of this wishlist stuff off. --Chad 11:01, 9 March 2011 (EST)
- Which takes us to the "Let's have buttons that can launch tool scripts" wish that was already made somewhere on the wishlist. If you could add them with the User Controls script, this would certainly facilitate pipelines a lot --Tilt 17:03, 8 March 2011 (EST)
Background Tool and Gradients
- Option to set Canvas color in a BG to be the Color when the Type is Solid Color. It's called a Background, after all. :) --Chad 11:27, 15 October 2010 (EDT)
- Different interpolation modes for gradients: linear, cubic, step (not only the default linear one) --Gringo
- -- The Ramp macro can do smoothstep interpolation for gradients. It would still be great to have this option in the regular Background tool as well as the polygon mask (to adjust the falloff of double-edged polylines). --Tilt 07:31, 15 March 2012 (EDT)
- A new extrapolation mode for Gradient controls along with Once/Repeat/Ping-Pong which would extrapolate values in gradient mode. For example, if the basic gradient goes from 0 to 1, it would increase values after reaching 1 and decrease values before 0. --Gringo 08:58, 7 September 2010 (EDT)
- Similar to the extrapolation wish above: an overscan option for the background's gradient. Either as a fixed amount or just infinite workspace (like the Xf tool when edge mode is "duplicate"). Reasoning: You might want to create a gradient that needs to be tracked onto a plate for sky replacements and whatnot. In these cases, it's annoying that BG is confined to the format. I have implemented this for my SparseColor Fuse. --Tilt 14:20, 7 April 2013 (EDT)
- Some sort of markers for gradients on the Display View vector corresponding ones in the Controls to see exactly where which colors go. Ideally the markers should be interactive, but passive ones would help too being kind of visual cue if you want to position colors or sample them from an image. --Gringo 16:23, 19 February 2010 (EST)
- A tool similar to Adobe Illustrator's Gradient Mesh. It could be a creator tool with control mesh where you can assign different colors to vertices. So, the vertices' colors would interpolate along grid lines to fill the image by a kind of multipoint gradient. Such a tool could be useful for creating cleanplates, textures and for various creative tasks. Using Gradient Mesh Gradient Mesh Example. --Gringo 16:23, 19 February 2010 (EST)
- -- Not exactly a mesh, but maybe the SparseColor Fuse can be a solution for creating multipoint gradients. --Tilt 07:31, 15 March 2012 (EDT)
- -- Great tool, thanks Stefan! A good alternative, I like it a lot. A Gradient Mesh would still be a good addition. --Gringo 18:48, 22 January 2013 (EST)
- Separate Constant, Gradient and Pattern tools instead of the current Background tool would be more intuitive to orientate in, especially for new users. These names would be more general and understandable for people coming from other compositing packages and they would better reflect the functionality. Besides, there would be no confusion between a background which is any kind of bottommost layer and the Background tool. Constant could be just flat colored; Gradient could have all the functionality of the current BG; Pattern could create checkerboards, honeycombs, grids, lines and so on. --Gringo 04:52, 4 February 2011 (EST)
- I know that there are checkerboard macros, but why not implement one in the BG tool? One that's fast, works in proxy mode and doesn't require InToolScript tricks. --Tilt 14:20, 7 April 2013 (EDT)
Blurs and Filtering
- Anti-aliasing edge processing filter with controllable threshold for fixing aliased edges (like those from z-depth keys). These realtime scaler algorithms are usually implemented in game console emulation software. Scale2x is probably the simplest one (though not best). Hq2x filter by Maxim Stepin with source code (implementation might be GPL, I have no idea). I think this might work pretty well. --Hevonen
- I don't see anywhere where this filter would work for continous tone images, or for arbitrary re-scaling. However... It would be interesting for those rare occasions when you need to scale something, like an undersized logo, to exactly 2x or 4x. It's an issue of design though. Should Eyeon make tools that are inappropriate 99% of the time, and trust the users to have discretion about when to use them? It's the same arguement for having per-pixel modifiers on more tools. Why does the directional blur not have a length map input, etc.? The concern is that there could be 50 more tools added to Fusion that are VERY slow and much more complex than the current tools. But I feel that if properly educated, users can understand when to use the right tool and recognize the appropriate situation. --Chad
- It doesn't work for arbitrary scaling. These algos are for emulators, where users usually want to improve original image/edge/raster quality instead of simple resize. However GIMP (yuck) implementes this algo for anti-aliasing sharp transitions in image, like with line art (without scaling).
- About tools: there are many tools and UI improvements that are needed more than this tool - one more reason for some kind of voting system/priority list. In my opinion professional software can expect users not to be ignorant when provided with proper documentation, so tool complexity is not a problem in itself. The more tool reveals about itself the easier it is to understand. Complexity does not automatically lead to messy UI or lack of usability.--Hevonen
- Different shaped kernels (such as circle and plus) in ErodeDilate and RankFilter
- Cubic and Gaussian blur kernels in Erode/Dilate would allow you to feather a shape inwards/outwards only (see Nuke's FilterErode tool). The current way to fake this - dilation + blurring - will unfortunately make Small details along the edge rounder. --Tilt
- A tool that could make DOF and motion blur based on Z-depth and motion vectors map simultaneously to allow making both effects in compositing. --Gringo 15:54, 9 September 2007 (EDT)
- -- Has been implemented in Frantic Film's Awake plug-in set. --Gringo 14:12, 23 October 2009 (EDT)
- -- Actual again since Awake sadly is discontinued. --Gringo 10:00, 28 November 2011 (EST)
- Possibility to use an image as a custom bokeh map for the Defocus tool with an option of applying different shapes to each of the RGB channels according to the RGB channels of the map. Most of the time real bokeh has an irregular shape and the result of the Defocus tool looks too synthetic. --Gringo 10:00, 28 November 2011 (EST)
- Directional blur - quality slider to the directional blur. With a great amount of blur it can be very slow tool with 2K images and there is no option to optimize it. Could you give a parameter to it to reduce sampling? Or a faster on would be even better ;) --Ata
- A possibility to shift the phase in the DirectionalBlur. There could be a parameter called Center Bias for this. It's mostly needed for the Zoom mode, but such a parameter would also replace the Centered mode, it would be a Linear with the Center bias=0.5 --Gringo 10:00, 28 November 2011 (EST)
- Rank Filter size parameters in X and Y. So I can find the median over a 1x3 or 7x5 area. --Chad
- Scale Blur sizes by pixel size. Something along the lines of "XBlurSize = BlurSize*Input.XScale". An image with "large" pixels should have the blur (and other fitering operations) modified accordingly. Transforms do this already, but filters do not. --Chad 14:28, 10 August 2009 (EDT)
- Modifiable CustomFilter. This would allow us to change the the kernel over time or blend between two different kernels or make symmetrical kernels by only editing one side. --Chad 09:08, 16 May 2012 (EDT)
Color Correction
- Publishable points in the Color Curves tool for powerful color correction macros.
- Add a "set" button to the CCv that would take a selected "in" value and create an "out" value based on an eyedropper. It would be the opposite of "pick" in that it sets the out, not the in. --Chad
- Could we possibly skin the HueCurves tool so that you can match the curve color to the channel selection checkboxes? --Chad 15:32, 21 January 2011 (EST)
- A checkbox in the Color Corrector to invert CC like the "Invert Transform" checkbox in the Transform Tool. It's useful when You need to make pregrade, then compose and then return to the original color.
- Also, a special InverMask in the Color Corrector can be useful when You want to make difference in parts of an image (light and shadow on a neutral-lighted surface, for example) --Gringo
- This might work for BC, but it won't work for CC. A CC operation might move a pixel from midtone range to highlight range, and you could never get it back. In the same way that you couldn't do an inverse of a CCv. --Chad
- -- I think, that in general, many CC operations are invertable except cases where Gain=0, Saturation=0 and Contrast=0 and some cases with ranges... On the other hand, the inverted CC can use not just inverted parameters, but a special map which contains color gradients (float point) and is generated by forward CC node. The advantage of such a map in comparison to histogram match is that inverted CC knows exactly where any color should be spatially. --Gringo
- So this would be like creating a 3D-LUT from a CC tool which could be inverted and re-applied later in the flow with a FileLUT node? --Tilt
- -- Exactly!--Gringo 17:30, 23 October 2009 (EDT)
- -- But that's assuming the LUT is invertible. In which case you could just invert the LUT and apply it with the FileLUT tool, right? Might be worth trying as a script just to see if it works at all (I'm skeptical that it would work more than 10% of the time). --Chad 18:29, 23 October 2009 (EDT)
- -- Well, yes... 3D LUT isn't going to work in all cases... Actually a kind of spatial map is the only way. --Gringo 10:32, 25 October 2009 (EDT)
- -- But that's assuming the LUT is invertible. In which case you could just invert the LUT and apply it with the FileLUT tool, right? Might be worth trying as a script just to see if it works at all (I'm skeptical that it would work more than 10% of the time). --Chad 18:29, 23 October 2009 (EDT)
- -- Exactly!--Gringo 17:30, 23 October 2009 (EDT)
- So this would be like creating a 3D-LUT from a CC tool which could be inverted and re-applied later in the flow with a FileLUT node? --Tilt
- Coloured marks or dots in Gain, Brightness, Gamma and other sliders showing that these parameters were modified separately for different channels. Maybe, they could be interactive subsliders that allow to modify channels separately without browsing channel tabs. Sketch--Gringo
- "Adapt to the Image" button in ColorCorrector>Ranges that could analyse histogram of the current frame and define ranges according to the image so that Shadows, Midtones and Highlights included equal amount of pixels. --Gringo
- Input/Output Levels' Low and High controls in the ColorCorrector should be able to be set below 0 and above 1. --Gringo 05:31, 17 September 2010 (EDT)
- The Ranges controls in the Color Corrector shouldn't be limited to 0..1 in the age of float point images. --Gringo 08:32, 7 September 2011 (EDT)
- A third preset for the ranges mask and the color corrector that adjusts shadows and highlights for images that are color corrected in linear space but are intended for sRGB (curves shifted to the left, like the ranges in Nuke's color corrector node) --Tilt 12:27, 25 May 2010 (EDT)
- Region Input for the AutoGain tool, in which you can feed a mask to define an area used for color range estimation. --Gringo
- Mono channel support for AutoGain. I want to do an autogain on mask/alpha sometimes. Right now it just passes the input out. --Chad
- "Auto Low / High" or "Auto Range" button in the BrightnessContrast tool which would automatically set the Low and Hight parameters according to an image's darkest and brightest color values. It would work in the same way as AutoGain, but would apply the same correction for all frames in a sequence regardless changes in color range over time.
- There also could be a "Lock Gain" checkbox in the AutoGain tool. --Gringo 05:35, 31 August 2010 (EDT)
- "Invert RGB" and "Invert Alpha" checkboxes in the BrightnessContrast tool would be really useful for editing auxiliary channels such as depth, masks, world or local position. The inverse operation should happen before all the others. I know, it can be done with Gain = -1 and Brightness = 1, or by an additional ChannelBoolean, but the checkboxes would be much more intuitive and quick. --Gringo 06:52, 29 July 2011 (EDT)
Paint
- New artbrushes (as Spray Brush Style) paint node to draw simple airbrush and water color.
- Source Tool and Time Offset controls for CopyPolyLines in Paint
- I just wanted to add this wish, but lo and behold, it's already here! This (as well as the "Still Source" checkbox) would simplify a workflow that currently requires you to freeze a frame using the TimeStretcher, cut out a piece (MatteControl and a garbage matte) and merging it on top of the image (yet another tool). --Tilt 11:07, 9 December 2010 (EST)
- In addition to a clone offset, allow the clone source to be rotated as well. For example, you could clone a piece of an arm covered by a wire from a previous frame where the arm was rotated slightly. --Tilt 11:07, 9 December 2010 (EST)
- Add to paint tool the mirror symmetry and radial symmetry to the brushes.
- In the Paint Tool, when using MultiStrokeClone for paint-back wire and patch fixing, I'd like a button next to the Offset control which resets back to x.5 y.5. When painting back you want the Offset to match the back plate, but at the same time sometimes you need to make a quick stroke that is offset clone, then go back to aligned clone. Having a button to reset would be far easier than typing it back to .5 .5. --Drswoboda
- An easy way to adjust the clone offset after a stroke has been painted. I can change the stroke size and center afterwards, why not the offset? My workaround was to temporarily animate the offset and nudge the path keyframe around with the cursor keys until the clone stroke matched exactly the way I want it. An option to adjust the values in the input field using cursor keys (a la Nuke) would solve this as would some kind of onscreen control for the offset that can be toggled like in the tracker tool. --Tilt
- Here's another idea to improve the clone tool: what if the cursor keys plus some modifier or the cursor keys on the numeric keypad would allow you to nudge the most recently painted stroke. Holding down another modifier (e.g. ctrl) would nudge the clone offset of the most recent stroke. The reason is this: when painting (especially in stereo) it's paramount to position paint strokes perfectly. But right now you need a lot of clicks and/or undos to try out the correct offset settings for a stroke. Sometimes each stroke needs a slightly different offset. It would be so much easier if there was an easy keyboard solution to fix a stroke that has just been painted without having to zoom out, look for the paint stroke's crosshairs to fine-tune the position, and zoom back into the image to continue painting. --Tilt 11:59, 10 October 2011 (EDT)
- When using the overlay and alt-clicking to set the clone offset, it would be great to have an option to have Fusion automatically snap the offset so that the feature my mouse is at and the overlay image are aligned perfectly if my sloppy click is a few pixels off. Kinda like the tracker finds its match area. --Tilt
- An option to show the overlay in a contrast-enhanced difference mode, so that edges can be aligned more easily. Maybe toggled on-the-fly by holding the shift key while the overlay is shown? --Tilt
- new paint effect tools that you can chose the source effect such as blur glow and sharpen and light rays..Etc.
- And paint in the composition such as blur brush in the Photoshop but you can use any effect.
- Paint: Copy Polylines, Ellipses And Rectangles don't have a Snap Offset mode and should have. There is also no handle for the offset visible (if I switch to fill mode and the Apply Mode to Clone), making it hard to change the position of the clone source --Lightwolf
- Add option (or keyboard toggle) to lock stroke drawing in X, Y or Z axis.
- Paint should support DoD, at least it shouldn't crop images that are larger than the frame. --Tilt 07:59, 24 March 2012 (EDT)
- An option to reverse/invert the point order of polylines. This is to quickly invert the animation on polylines that use an animated Write On Start/End. This may be useful for polylines/Splines beyond the paint tool as well.
Currently, assuming a growing spline with a Write on Start at 0 and the End being animated, causing it to grow from the end to the start requires:
- attaching the end animation to the start
- reversing it in the spline editor ('V')
- removing it from the end
- setting the end value to 1.0
- Reversing the point order would allow this to happen in one click - which is a massive time saver considering client changes and tens to hundreds of animated polylines. --Lightwolf 09:15, 4 April 2012 (EDT)
- An option to randomize colours (within a user defined range, HSV if possible) while painting single colours --Lightwolf 09:41, 29 June 2012 (EDT)
- Optionally let the paint tool create an alpha that only covers the affected areas of a paint operation. --Lightwolf 09:41, 29 June 2012 (EDT)
- As a workaround one can clear the alpha in the matte tool prior to the paint tool --Lightwolf 09:41, 29 June 2012 (EDT)
- An option to duplicate paint strokes, especially clone strokes (since duplicating a paint tool with clones makes them lose their source images). Pasting settings from one paint modifier to another seems broken currently. --Tilt 09:10, 17 July 2012 (EDT)
- A way to select multiple strokes and move them or change their size at the same time. Nuke's paint tool displays strokes in a convenient tree structure that can easily be nested or reordered and shares its sliders and controls amongst all selected strokes. Fusion's treating each stroke as a modifier with its own set of controls which seems nice in some situation but makes things complicated when multiple strokes need to be modified. --Tilt 09:10, 17 July 2012 (EDT)
- Hotkeys for switching brushes, ideally close to Photoshop's shortcuts: B for a brush (conflicts with blue channel though), E for eraser,... There should definitely be one to toggle the clone stamp overlay on and off. And maybe even something like "X" which swaps foreground and background color in Photoshop but in Fusion could be used to invert the current color (making it easy to switch between black and white). --Tilt 12:40, 1 September 2012 (EDT)
- For Multistroke, show strokes in Timeline and allow us to Alt-[ and Alt-] to jump to the frames where the strokes exist. --Chad 14:51, 17 January 2014 (EST)
Matte and Masks
- Premasking for image tools (same as with Glow now). One should be able to control blur amount on pixel level for proper depth/focus effects (and not only for those).
- Convert bitmap mask to polyline.
- A HSL mask tool (like a reduced version of Nuke's HSV Tool). You can sample a color, adjust the tolerance and falloff in the H, S and L channel seperately and output a mask of your selection plus combinations like "minimum of hue and saturation". Such a mask could be piped into a CC tool to do local colour corrections if the Chromakeyer method mentioned above is too coarse. --Tilt
- --HueCurves and SelectColorRange partially solve that.--Gringo 07:27, 3 January 2011 (EST)
- Ability to convert standard shapes to polygons and polygons to b-spline.
- --Daniel You mean, convert rectangle & ellipse masks to polyline masks? There are options to create these within the polymask's context menu, and you can already convert polyline masks to b-spline masks, and vice versa (within the menu again).
- New combine ops for Mat? Multiply/Divide. --Chad
- Right now, mask tools, the matte control tool and the merge node are allowing different operations or are using different names for the same thing:
| Masks: | Matte Control: | Merge: |
| Merge | Or | Merge Over |
| Multiply | And | Merge In |
| Invert | N/A | Merge Xor |
| Add | Add | Merge with alpha gain == 0 |
| N/A | Inverse Subtract | N/A |
| Merge + Invert checked, then inverting the result | N/A | Merge Held Out |
| Multiply + Invert checked | N/A | Merge Held Out with inputs swapped (stencil in Nuke) |
Add and subtract create harsher results when used to combine to soft edges and these modes will result in values < 0 or > 1 when used in float mode. Multiplying and merging are the better solutions but are not available in every tool that would benefit from them. In this context, Nuke's inverse modes which swap FG and BG (like stencil vs. held out, mask vs. in) prove useful, and maybe Fusion could implement them too. The reason: it's not always possible to swap the inputs (masks can't swap inputs, but also merges when the BG's metadata is needed downstream or you want control over what gets passed through when the node is disabled). --Tilt 13:28, 2 June 2011 (EDT)
- Auto Smooth Points mode for bezier masks just like in the GridWarp tool. --Gringo
- Clip Black/White for alpha channel in the MatteControl tool just like in BrightnessContrast. --Gringo
- "Post Divide Image" checkbox for the MatteControl tool. Yes, it can be easily done with a separate AlphaDivide or a ChannelBoolean if you have a preset, but the MatteControl is the dedicated tool to deal with the Alpha and edges, so it would be more intuitive to divide RGB by Alpha right there. --Gringo 09:44, 11 August 2011 (EDT)
- A Bol lets you connect the BG only and still copy say, Red FG to Alpha. It just sees that there is no FG and uses the BG instead. Mat however, is not so cool like that. You MUST connect both BG and FG even if you are only connecting one tool to both inputs. How about letting us assume that the BG is also the FG when no FG is connected? --Chad
- It just works that way AFAIK. Isn't it? --Ata
- No, it doesn't. Try to connect an image to MatteControl.Background and leave MatteControl.Foreground disconnected. Set MatteControl.MatteCombine = Combine Red. Although, I don't know is it that important... --Gringo
- Stupid me. I misunderstood you. Sorry. (delete this conversation if you wish) --Ata
- Filter selection for Fit Mask. Same setup as Rsz, we might want to stretch the mask but use a different filter than linear. --Chad 14:43, 14 July 2009 (EDT)
- A possibility to set outer polygon's level. Now double poly mask fades to black from inner polygon to outer one. Outer's level is always 0. But sometimes it's needed to make a mask with a gradient from one level to another. --Gringo 16:52, 27 February 2010 (EST)
- Would be nice if the Bitmap mask could use the Z channel directly as well as other auxiliary channels, without an additional ChannelBoolean.--Gringo 12:41, 20 July 2010 (EDT)
- For now, only the Coverage channel is available in the Bitmap for some reason. It would be much easier to store and pass masks through the flow for further use if we could select all the other channels directly. Sometimes it's just easier to apply some effects like fog or selective color correction using Z, normals or position channels without any transformations. --Gringo 05:28, 24 April 2012 (EDT)
- Gamma control for polygon masks to adjust the soft edges interpolation. For example, if I want to create light spots from a set of spotlights, I can apply a BC with Gamma after all the masks, but in this case the area where different masks mix will be treated incorrectly. To get the correct result, I have to apply a BC to each mask and then mix them together, but it's a very complicated setup. --Gringo 11:44, 26 July 2010 (EDT)
- Gamma control in Bitmap masks (applied after the Low/High range control) would make using Depth data for atmosphere, Incidence for reflections etc. much easier. Now you often need to add a BrightnessContrast only to adjust the Gamma for Bitmap masks.
- The Range mask could be used for this, but it, on the other hand, doesn't have the Low/High control. And here we see again the disadvantage of the range control limitation to 0..1 --Gringo 08:03, 7 September 2011 (EDT)
- It's not really intuitive that the Soft Edge slider in the Bitmap mask controls is placed above the Low/High range because it's actually applied after the range. I understand, that it's made like this to keep the top part of the controls identical for all the mask types, but the user usually expects to see the effect of the controls applied in the same order as they are listed in the interface. Anyway, the order of the controls is the only way to understand the order of operations without experimenting.
- What if the Soft Edge controls for all the masks would move to the very bottom as essentially it's a post-blur?
- Another control for the Bitmap and Ranges masks could be added instead: Pre-Blur. --Gringo 08:03, 7 September 2011 (EDT)
- Option in Wand to make non-contiguous selections, essentially turning it into a keyer, based on RGB (or the appropriate color vector) distance. --Chad 10:13, 1 October 2010 (EDT)
- Temporal smoothing for bezier mask shapes for cases when the keyframes are too frequent and the mask jiggles. Could be useful not only for characters rotoscoping, but also for complicated shapes like smoke or water. --Gringo 04:41, 3 January 2011 (EST)
- Similar wish: A way to delete the key for a single point of an animated polyline. Explanation: modifying a point will create a key for the whole shape. Sometimes I regret this, because when I tweak the shape on the next or previous keyframe, points on intermediate keyframes aren't updated anymore even though I have never touched them. I have to manually move more points to recreate proper interpolation or I have to delete the whole intermediate key and start over. The more points are touched, however, the higher the danger of jittering and drifting being introduced. An elegant solution in my opinion would be to press something like shift-delete on a selected point which would reposition that point in relation to the shape's previous and next keyframes as if the whole intermediate keyframe had been removed. This could also be used to smooth a roto where keyframe intervals have become unnecessarily dense. --Tilt 16:26, 10 March 2011 (EST)
- It's rather confusing that the bezier spline mask is called Polygon, especially considering that now Fusion has a widely used 3D suite where a polygon means something completely different. Furthermore, the button under the Display Views which creates this mask has a tip: Add a Polyline Mask. Why not to call the tool Polyline? Polygon sounds particularly strange relative to a smoothly shaped mask without corners. --Gringo 10:49, 29 August 2011 (EDT)
- Keyframeable option for individual points in a polyline to allow them to be ignored. They would still be visible in the preview control, but they wouldn't contribute to the shape of the spline. --Chad 11:38, 10 May 2012 (EDT)
- Pivot control for vector masks to be able to connect the mask transforms to a tracker properly. Currently, it's possible to connect the Center to Unsteady Position, Size to Unsteady Size and Rotation Z to Unsteady Angle, but with scaling and rotation the contour is shifted as the Pivot can't be adjusted according to the tracker's pivot separately from the Center. Explanation of technique which requires this: Tracker to Masks --Gringo 09:35, 18 December 2012 (EST)
- For Bezier polygons and paths, hotkey that takes the handle currently under the mouse and makes it co-linear with the point and other handle. --Chad 00:38, 3 March 2014 (EST)
Tracking, Transformations and Warps
- Tracker tool:
Although just having syntheyes built right into fusion would be the heaven-sent ideal situation, how about at least copying some of syntheyes' unique tracker features into fusion's tracker? what a joy that would be :) to summarize just a few of these i would love to have in fusion:
- ability to track by frame by frame advance
- ability to reposition tracker tool in the tracker's view window
- ability to keyframe and auto-smooth keyframes
- tracker graph
- display the hpix error
- interactive image adjustment controls to adjust brightness, contrast etc.
- auto blur
- --for the bottom two in the list, what would be different than what we have now? You can put a Blur or BC between your footage and tracker now. --Chad
- Concatenation of (un) corner pin tools with each other and with other transform tools a la Shake, Nuke, etc.
- Frame Number parameter in Tracker>Operation>Match Move>Match move settings to enter the number of the reference frame. --Gringo
- +1 for this. Especially the Tracker modifier just drove me nuts because it will retroactively set its reference frame to the frame you are at when you change the size of the tracker's search pattern. If this happens accidentally after the track is done it's really hard to debug why a mask has jumped out of place.... --Tilt 10:00, 29 November 2010 (EST)
- An option to hide the tracker modifier's view controls like there is with splines. Right now, if I connect a polymask or paint stroke to a tracker modifier, its rectangular gizmo obstructs vertices I'd like to modify. --Tilt 03:00, 16 November 2010 (EST)
- Pattern rotation and scaling considering in the Tracker tool --Gringo
- Keyframes for pattern in the Tracker tool like in Boujou to set the way pattern should be changed over the clip --Gringo
- Unsteady Axis output for the Tracker. Or is there any special reason why all the transforms can be output as unsteady but Pivot? --Gringo 10:01, 18 December 2012 (EST)
- Skew parameter in the Transform tool to have possibility to scale image not only vertically or horizontally.--Gringo
- Wrap Mirrored mode in addition to Canvas, Wrap and Duplicate in transform tools would be great for creating seamless picture when initial image is shifted or scaled down.--Gringo 03:51, 25 September 2009 (EDT)
- I think the Aspect control of the Transform tool isn't really handy. At first, you expect it to make the image wider, not higher (analogically to the image or pixel aspect: the greater the aspect the wider the image). Besides, in most cases when one wants to change the aspect (s)he will actually switch to the X Size / Y Size mode because then the proportions can be adjusted interactively and the width can be altered preserving the height. But once you switch to XY mode, you loose your Size which has been previously set and after changing the proportions you can't adjust the global size again (only by multiplying the X/Y Size with a number).
- My suggestion is to simply expose three controls instead: Main Size, X Size, Y size. Thus we'd be able to set the main size which would affect both axes (just like the current Size), then adjust image horizontally preserving the vertical dimentions, then change the main size again, then adjust the Y Size preserving X Size.
- So the Transform tool would become much more interactive, it wouldn't require additional clicks to reach important controls and it wouldn't loose your adjustments when you deside to switch between old-style Size/Aspect and X/Y Size modes. You wouldn't need to switch at all, having all the controls at your fingertips. At the same time the current functionality would be preserved: Size = Main Size, Aspect = Y Size.
- See an example: Transform_XYMainSize_v02-1 --Gringo 18:11, 17 August 2010 (EDT)
- A possibility to set negative scale in the Transform to animate mirroring flipping. --Gringo 12:01, 21 February 2011 (EST)
- Sometimes, I wish I could move the pivot crosshairs of a transform tool without changing the image. Maybe by holding down a modifier key while the pivot is being moved, the center could be updated accordingly to preserve the combined image transformation matrix. --Tilt 14:47, 30 September 2011 (EDT)
- Button in Xf under Reference Size nest to get the size of the input image at the current time. Much like the Reset Size button in Crop. --Chad 11:12, 26 October 2011 (EDT)
- In the Crop tool add angle slider for crop rotation area in some photos
- Letterbox should have the same animatable point-type control for Pixel Aspect as the Resize and the Crop tools instead of 2 separate number controls. --Gringo
- Warp Amount control for Grid Warp
- --...and Warp Mask for GW and other warp tools, like in Komkomdoorn Krokodove --Gringo
- Resetting destination points of the Grid Warp tool should reset them to what they were before a keyframe was created/edited or reset them to their location on the source grid. Right now they reset to their default location which makes this feature useless if you want to use the button as a way to selectively "copy source to dest" for a few selected points only. --Tilt 01:08, 24 October 2009 (EDT)
- -- a way to move source and destination points together by the same amount. Krokodove's spline warper has a really nice interface (more complex, yes, but more powerful) that I miss in the standard gridwarp tool. --Tilt 15:22, 21 August 2010 (EDT)
- A possibility to add subdivisions to the GridWarp at any time without resetting the already defined shape. Otherwise one has to start over the shape editing every time additional details are needed in complicated cases. --Gringo 06:17, 19 January 2011 (EST)
- GridWarp should render the areas where the vertex order has been changed. Then it would be possible to mirror the image without additional transform tools and to create complicated shapes like waving ribbons. --Gringo 06:17, 19 January 2011 (EST)
- Spatial trajectory smoothing for animated GridWarps and Polylines. Would be great to have a modifier applying the Savitzky-Golay filtering to shapes. it would help fixing jittering masks much quicker and keep the number of keyframes for smoothly moving objects to a minimum. Currently, to create a spatially smooth trajectory for Polyline Mask or GridWarp, we need to add excessive keyframes for "manual interpolation". --Gringo 06:38, 3 January 2013 (EST)
Miscellaneous
- Text+ should have an option to rasterise complete words to preserve ligatures. Not only is this important for western typography but crucial for languages such as arabic. It might require a more feature limited, second text tool though. --Lightwolf 11:58, 14 March 2012 (EDT)
- -- It's not just an option to rasterise complete words. It needs the ability to do automatic right->left detection, glyph combining and ligature substitution (when available in the font) before it renders that word. Note that what you see in the "Styled Text" edit box will have had all that done automatically by Windows, but what Text+ retrieves from that edit box is the original character data without that. Stuart 15:44, 14 March 2012 (EDT)
- -- Could something like Pango be called from a C++ plugin? --Tilt
- -- Probably, though I'm not sure how much use it would be, since it appears as though it might rely on Uniscribe to do all the tricky stuff on Windows, and ATSUI on MacOS - ie. the native OS libraries, which we won't/can't use in Fusion, to maintain consistency between Windows/Linux versions. It's possible that something like ICU might be capable of performing those operations. Stuart 05:13, 15 March 2012 (EDT)
- -- Could something like Pango be called from a C++ plugin? --Tilt
- Option in AutoDomain to set DoD to zero area if ALL pixels in the image match the Canvas Color. Currently, it sets the DoD to the full image size, which seems backward. --Chad 14:49, 27 March 2012 (EDT)
- -- Actually, currently it just doesn't change the DoD at all. It doesn't force it to the full image size. Stuart 18:21, 27 March 2012 (EDT)
- More modes for Probe's rectangle, such as Sum, Rank (could replace Minimum and Maximum), and maybe a distance weighted mean. --Chad 14:37, 7 October 2013 (EDT)
- Optional mask for Probe's rectangle so we can make arbitrary shaped sampling areas. --Chad 14:37, 7 October 2013 (EDT)
- -- Not necessarily the easiest thing, given that it's a modifier/non-image tool and so masks wouldn't necessarily auto-size. Perhaps an option to only sample black/non-transparent (or just non-zero alpha?) pixels would suffice? Stuart 12:29, 8 October 2013 (EDT)
- -- A threshold range control for an image channel in the probed image, like alpha, would work except that alpha is often what's probed. A second image input that is expecting a pre-sized image, not a mask, would be more flexible. --Chad 14:12, 9 October 2013 (EDT)
- Since OF makes a pair of two component vectors, it would be nice if CpA would copy the Vector and BackVector channels to RGBA. --Chad 15:23, 31 May 2014 (EDT)
- Follower Text Modifier: Allow it to work on words/lines as well, not just individual characters.
Workarounds
- Please, add the Spread Curves feature to the new FilmGrain tool from its predecessor. If you deal with a kind of severely pregraded scan with, for example, boosted shadows, you may want to adjust grain power for shadows and highlights separately. Of course, you can use a Luma mask, properly distorted with CCv, but such a mask would affect all three channels equally and the complete setup will look more complicated. --Gringo 04:37, 11 June 2010 (EDT)
- -- This macro servers as a workaround, but of course it is quite slow compared to having it built into the grain tool.
- Make mask "size" work like Xf, with a checkbox to unlink X and Y. I want to be able to scale a Ply in X by .9 without changing Y. --Chad
- Now it's possible by means of rotation around either X or Y axis. Though, you need to involve trigonometry to set exact numerical values... An example: Polygon_Aspect.setting --Gringo
- A mask merge node. Basically two mask inputs, one output with the option as that are available when masks are daisy chained. This would make re-using the same masks throughout the flow a lot easier --Lightwolf
- -- You can use the bitmap mask for that. --Tilt
- -- Yup, I'm just not sure of how that affects the theoretical resolution independance of masks. --Lightwolf
- -- In 5.3 you can set any custom resolution for the masks and use the general Merge tool to combine them. --Gringo
- -- Which promptly breaks the resolution independence. I think it's a valid request still. --Chad 09:50, 26 October 2009 (EDT)
- -- Any mask in Fusion outputs a raster image with a certain resolution. Since you can set the custom resolution of the first mask according to your target tool it's no problem using a Merge or a Bitmap to put them together, is it? --Gringo 10:20, 26 October 2009 (EDT)
- -- But you can only set ONE custom size. If you are reusing the mask, it won't work at all. --Chad 14:08, 26 October 2009 (EDT)
- -- Any mask in Fusion outputs a raster image with a certain resolution. Since you can set the custom resolution of the first mask according to your target tool it's no problem using a Merge or a Bitmap to put them together, is it? --Gringo 10:20, 26 October 2009 (EDT)
- -- Which promptly breaks the resolution independence. I think it's a valid request still. --Chad 09:50, 26 October 2009 (EDT)
- Color wheels not only for gamma, but for gain and brightness too in the Color Corrector. Sketch --Gringo
- -- Implemented in this macro: http://www.pigsfly.com/forums/index.php?showtopic=6363&view=findpost&p=26187 It has color wheels for Gain, Gamma, Brightness as well as for Lift (or Black Point). --Gringo 12:24, 29 September 2010 (EDT)
- A corner pin that allows me to simply position 4 pins on a cereal box for example, & then when I move the pins, the cereal box will warp into user defined position ie pack replacement. (publishable & available to usual tools eg locator 3d)
- Please contrast this to the existing CornerPositioner / PerspectivePositioner workflow. --Chad
- I think this is exactly what Krokodove's Positioner does. --Tilt
- I've revived this wish from the "not gonna be fulfilled" section, because:
- the Krokodove Positioner is outdated in that it doesn't support DoD and ROI
- Using a perspective positioner followed by a corner positioner will filter the image twice.
- Krokodove's Positioner doesn't support the offsets that Fusion's corner positioner has and which are really useful for stereoscopic work (using the same 4 corners with a slight offset for the other eye)
- What would make such a corner pinning tool perfect would be a "copy corners to source coords" and vice-versa so if you have an animated 4 corner track you could decide on a "reference" frame where no transformation takes place which currently requires you to copy&paste 8 numbers from one tool another --Tilt 14:25, 9 May 2011 (EDT)
- -- CornerPin fuse can now do this. The preview controls in the viewer aren't as fancy as they could be in a C++ plugin, nor will it concatenate. But it's a working solution for these wishes. --Tilt 20:09, 14 March 2012 (EDT)
In Progress
Completed Requests
- Lua node for generating and modifying data streams by complex scripts with full access to Fusion plugin API (2d, 3d and particles). Such tool would make production specific tools quick to implement in cases where custom tools don't cut it and full C++ plugins are too slow and cumbersome to go for. For inspiration check out Blender Python scripting - Python is allowed almost everywhere making Blender easily extensible (with Python shader/compositing node support in development). As a sidenote Python would be nice language in addition to Lua scripting.
- Ability to make modifiers with script
- --Tilt 06:25, 28 February 2007 (Central Standard Time) For cloning without filtering, there could be an option in the paint tool to restrict the clone offset to integer pixel values. Maybe holding shift or ctrl in addition to the alt key when clicking to set a new clone source? This would make dustbusting a breeze.
- --Izyk Available as of Fusion 5.2.
- Bucket Mask. I want a way to use the paint bucket in the paint tool to create a mask. I can see this working in three different ways, either a checkbox in the Wand Mask to force contiguous, a BG input for the Paint Mask, or a separate Bucket Mask tool. --Chad
- --Daniel "contiguous"? The Wand mask is already really just a contiguous fill like the bucket in Paint, only with a few more options. Is that not what you're after?
- -- Thanks, Daniel, but no, this seems like the right thing, so either this is a mis-match between documentation and implementation, or we have a bug. First, in relation to the Wand Mask, the UI in docs doesn't match the UI in the tool. I'll send a sample to bugs@ and show. As to the Paint Mask, there is no BG input, so I can't feed it the image I am masking. So the bucket only works if I first sketch out the region I want to paint. Seriously, why is there a wire removal, clone, emboss, bucket, etc., if I can't feed a source image? Seems like something got lost in the translation from tool to mask. --Chad
- -- normal paint will work if you connect it to the mask input and paint on alpha only.
- But at a huge penalty in memory consumption. I'd rather work with fewer tools and in mono. --Chad
- Bug seems to be fixed, so this pretty much a completed wish. --Chad
- A better filtering method for Transform and Merge tools. The current filtering method is very blurry compared to other film compositors (Shake's Impulse filter is almost perfect). This would be useful to avoid blurring when the offset values are not exact; during stabilizing or matchmoving, for example.
- --Izyk 18:55, 15 December 2006 (Central Standard Time) Isn't the Impulse filter just a nearest neighbor filter? I assume you don't expect to animate this?
- --jirka Something like impulse filter is really useful for cloning/patching with masked transform; filtering destroys grain. Fusion filtering animates well but usually softens image too much. IMHO best compositors allow user to choose filtering method.
- --Daniel Using transforms/merges with whole-pixel offsets (Reference Size helps) will avoid any softening (until you animate it). Impulse/Nearest Neighbour will look awful when animated, generally not suitable for stabilising or matchmoving.
- Implemented in 5.3
- Invert tool, with selectable channels please. Makes flow more readable. --Jirka
- You can make a macro out of the Bol that has those options. --Chad
- - Like many other things, stuff like this should be in the package. One can make their own macros/plugins for general tools that are missing, but should they really have to? --Hevonen
- -- Solved by this macro: InvertColor. --Gringo
- -- BC with Gain set to -1 will do this. --Chad 10:53, 23 September 2009 (EDT)
- -- No it won't. Gain of -1.0 is effectively the same as doing (0.0 - value), where the CS or Bol Negative operation does (1.0 - value). So, the equivalent in BC is actually Gain = -1.0, and Brightness = 1.0. Stuart 16:56, 24 September 2009 (EDT)
- --Tilt A smoothing modifier that does exactly the opposite of perturb would be awesome. It could be inserted into every already animated control or path.
- Solved by the Savitzky-Golay-Fuse although having a built-in (faster and more stable) version in Fusion would make it even better.
- Soft Edge parameter in masks should not act like post-processing blur applied to the mask cropped by frame. It produces some unpleasant things when a mask with great softness crosses frame borders or moves in or out of frame. --Gringo
- Solved in Fusion 6 (Image Tab\Clipping Mode = None). --Gringo
- Tracker Tool: It should create 2 separate paths, one for X and one for Y axis (Easier to edit) and the ability to Smooth and Average them.
- --As of Fusion 6 the tracker is able to create XY Paths.
- --Spatial smoothing can be performed with SavitzkyGolaySmoothingPointFilter modifier.--Gringo 03:51, 25 September 2009 (EDT)
- Optional input for Set Domain that operates like Set Canvas Color, copying the DoD from the second input. This could be used as a quick fix for 3rd party plugins that reset DoD. --Chad 12:17, 25 September 2009 (EDT)
- -- Build 492
- A Depth Defocus tool similar to the Depth Blur but with Lens options (NGon Solid, Circle, Lens Angle/Sides/Shape)
- -- Solved with the DepthDefocus macro. --Gringo
- Colour changer tool [with a pick button as well]
- --Please elaborate --Chad
- --I think it's about a tool similar to Krokodove>Replace Color --Gringo
- --Solved also by the following macros: SelectColorRangeGradient, SelectColorRangeGradient or keying.
- Possibility to handle alpha of texture applied to the Texture tool. I mean multiplying alpha of the result by alpha of the applied texture. --Gringo
- -- Solved by this macro: UVPositioner. --Gringo 14:30, 1 November 2009 (EST)
- A possibility to switch tiling in the Texture tool off. Now when U and V scales are increased, texture is duplicated so that it fills all the object's area. To place just a single instance of a texture in some particular position on a surface I either need to increase its canvas size or create an auxiliary texture to use as a mask. --Gringo
- -- Solved by this macro: UVPositioner. --Gringo 14:30, 1 November 2009 (EST)
- Predivide/Postmultiply checkbox for the Gamut tool. --Tilt
- -- available in Fusion 6.1
- The Gamut tool should be able to apply gamma to the Alpha channel as well. --Gringo 04:09, 13 April 2010 (EDT)
- -- What would this be for? --Chad 10:24, 13 April 2010 (EDT)
- -- In my experience, that is a more correct conversion of sRGB images with Alpha to linear. --Gringo 15:35, 14 April 2010 (EDT)
- -- Weird. That may be happening out there, but it certainly isn't correct. Alpha should always be linear. I'd never want to process alpha in Gamut, and would prefer to fix oddball footage like that with it's own BC for alpha. --Chad 16:57, 14 April 2010 (EDT)
- -- Well, imagine a picture which had a linear fade to black in Alpha and the same fade in color. If you gamma-correct the color, it won't match the Alpha. Anyway, it could be just a checkbox in the Common tab which could be switched off by default like in BC. --Gringo 21:17, 14 April 2010 (EDT)
- -- I have to admit I don't get it either. If there's a linear fade to black in alpha and the same fade in colour (as if the colour originally had no fade but was then multiplied by alpha), and the colour has then been gamma adjusted, sure it won't match the alpha in that sense. Therefore the only way to do subsequent processing correctly is to de-gamma the colour. The alpha doesn't change - it's always linear. It's always a linear representation of opacity. Applying gamma to the alpha to produce a non-linear alpha, so that it matches the colour doesn't solve a thing. Any subsequent operation that expects a linear operation (even a simple merge) will be incorrect. Stuart 06:17, 15 April 2010 (EDT)
- -- Maybe, I'm wrong, but in practice, when Gamma is removed from the Alpha channel as well, the result looks nicer because the FG objects loose the dark edges around them. Now I use BC instead of Gamut for such tricks because it can apply gamma to all the channels at once. See an example: Removing Gamma from Alpha for LWF --Gringo 07:37, 16 April 2010 (EDT)
- -- Thanks for the example, and yes, in this case you are doing it wrong. Gamut should not be applied to premultiplied images. The darkened edge is from premultiplication not be accounted for in the color corrections, not from the gamma being incorrect. If you simply added the alpha after the red BG, or divided by the alpha to make a "straight" RGB image, then you will have a nice blend between the red and green. --Chad
- -- Ah, you are right! :) Then I second Tilt's request about predividision/postmultiplication. --Gringo 10:22, 16 April 2010 (EDT)
- -- Your whole premise is completely off... in your comp you've applied a gamut tool after Background_1 has been multipled by the Ellipse. What you're saying is that the original Background_1 is a non-linear sRGB image (which is why you need Gamut1 later on), and you've then applied a linear operation to it by multiplying by the ellipse. It's no wonder you would need a pre-divide/post-multiply: you've already mixed linear operations with a non-linear image. The correct way would be to make the image linear before doing any linear operations (such as multiply by alpha). So in this case Background_1 should have gamma removed by Gamut1 and then you'd multiply by alpha. --Stuart 16:44, 16 April 2010 (EDT)
- -- I've submitted the original wish for the pre-divide checkbox after I had to deal with lots of sRGB Photoshop layers with an alpha channel. And I think it really makes sense because it's an operation that modifies RGB like CC, CCv and BC, all of which have that checkbox. --Tilt 17:25, 16 April 2010 (EDT)
- -- Thanks for the example, and yes, in this case you are doing it wrong. Gamut should not be applied to premultiplied images. The darkened edge is from premultiplication not be accounted for in the color corrections, not from the gamma being incorrect. If you simply added the alpha after the red BG, or divided by the alpha to make a "straight" RGB image, then you will have a nice blend between the red and green. --Chad
- -- Maybe, I'm wrong, but in practice, when Gamma is removed from the Alpha channel as well, the result looks nicer because the FG objects loose the dark edges around them. Now I use BC instead of Gamut for such tricks because it can apply gamma to all the channels at once. See an example: Removing Gamma from Alpha for LWF --Gringo 07:37, 16 April 2010 (EDT)
- -- I have to admit I don't get it either. If there's a linear fade to black in alpha and the same fade in colour (as if the colour originally had no fade but was then multiplied by alpha), and the colour has then been gamma adjusted, sure it won't match the alpha in that sense. Therefore the only way to do subsequent processing correctly is to de-gamma the colour. The alpha doesn't change - it's always linear. It's always a linear representation of opacity. Applying gamma to the alpha to produce a non-linear alpha, so that it matches the colour doesn't solve a thing. Any subsequent operation that expects a linear operation (even a simple merge) will be incorrect. Stuart 06:17, 15 April 2010 (EDT)
- -- Well, imagine a picture which had a linear fade to black in Alpha and the same fade in color. If you gamma-correct the color, it won't match the Alpha. Anyway, it could be just a checkbox in the Common tab which could be switched off by default like in BC. --Gringo 21:17, 14 April 2010 (EDT)
- -- Weird. That may be happening out there, but it certainly isn't correct. Alpha should always be linear. I'd never want to process alpha in Gamut, and would prefer to fix oddball footage like that with it's own BC for alpha. --Chad 16:57, 14 April 2010 (EDT)
- -- In my experience, that is a more correct conversion of sRGB images with Alpha to linear. --Gringo 15:35, 14 April 2010 (EDT)
- Separate Size, Softness and Spacing controls for RGB in the Grain tool. Grain in the Blue channel of scanned images isn't just more contrasty, but also bigger. --Gringo
- --Solved in Fusion 6.1 by the new FilmGrain tool. --Gringo 04:13, 11 June 2010 (EDT)
- An option in the Grain tool to work in relative coordinates (relative to frame width). Otherwise, Grain changes it's relative size in the Proxy mode. I've tried to solve that with this setting: Grain_Grain.setting but wasn't able to compensate grain spacing in the Proxy mode.--Gringo 14:12, 23 October 2009 (EDT)
- --Solved in Fusion 6.1 by the new FilmGrain tool. --Gringo 04:13, 11 June 2010 (EDT)
- PICK tool in the colour corrector. exactly like what you get in a BG tool.
- -- Daniel What would you do with the colour once it has been picked, though? Restrict the CC to operating only on that colour? You can do that now with a ChromaKeyer as a mask.
- -- Jirka Pick tool is nice idea, what if pick make marks in color wheel and levels. Maybe even color inspector with before/after values (as in photoshop).
- -- Implemented in the PrimaryGrade macro. --Gringo 07:00, 17 December 2012 (EST)
- If polygon vertices had unique displayable numbers, it would be easier to rotoscope so that vertices followed edge features. Changing the vertex order in text mode when you want to open a specific segment or just want to alter the path direction would be easier too.--Gringo 05:24, 14 August 2009 (EDT)
- -- available in Fusion 6.2 Build 897
- i know about krokodove and other 3rd party lensdistortion plugins, but I still think Fusion should be able to (un)distort images out of the box using the different models used by syntheyes, equalizer, pftrack, boujou. Most formulas should be available or in-house solutions might exist? Would enable Fusion to plug right into what's used in a pipeline, like it already does with importing cameras from all kinds of 3d apps or roto splines from nuke. --Tilt 08:32, 5 June 2010 (EDT)
- -- Fusion 6.3 now has a lens distortion tool
- Optical flow retiming and stabilizing.
- -- Dimension will do retiming. Stabilizing... hm.
- -- A naive but working approach to oflow stabilizing: SmoothCam Fuse
- A possibility to connect simple expressions to the numerical input fields of ColorMatrix. It would let us replace the slow CustomTool with a faster ColorMatrix in many cases. All the fields could be separate parameters and then it would be possible to connect any modifiers or simple expressions to them or to animate them.
- The problem is that CustomFilter is not animatable. They use the same input control. I've got a Fuse that will do what you want, but what I want is an animatable CustomFilter. :) --Chad 12:33, 10 April 2012 (EDT)
- The Cineon Log tool (as well as the loader tab for dpx files) could use an update for all those modern logarithmic curves (especially Alexa's Log C but also Pines or RED log). Also, Alexa's wide rgb gamut should be added to the Gamut tool. Its matrices to convert to/from Cie XYZ are available on Arri's site. --Tilt 17:09, 9 April 2012 (EDT)
- - As far as I'm aware, RED don't exactly publish what RED log (or RED log Film or RED space) actually is. It's also a shame that Fusion already has a Wide Gamut (also sometimes known by some people as Adobe Wide Gamut for some reason) option in tools like Gamut, and ARRI decided to re-use the same name for something completely different. From what I understand there isn't a single ARRI Wide Gamut, as it varies with colour temperature, and there also isn't a single LogC as it varies with EI/ASA, with a softclip for > EI/ASA 1600. The Josh Pines Log->Lin method is fine I suppose, but what if you want black blacks? Stuart
- - Yeah, I also was confused about the "wide" as well as the different logC curves. Arri saying things like "just use the ASA800 curve it's all close enough and if there are negative values just add something tiny until they disappear" didn't exactly build confidence either. But the SUP 3.x matrices worked well to match Alexa footage with regular film scans (only the outdated version 2 matrices depended on color temperature). About Pines, I didn't want to suggest his formula replace the existing one. Although many seem to be more afraid of negative values in comp than they are of a slightly raised black level.
- - Uploaded some Alexa settings for the Gamut tool. I wasn't aware of its custom option before, this is much nicer than color matrices.
- -- Implemented in Fusion 6.4. Hooray!
Requests Which Aren't Going to Be Fulfilled
Please, explain the following requests' necessity further:
- add option in saver tool to render this saver only.
- And exactly what happens when you turn that option on for two different savers? You can already disable savers using pass through, which makes way more sense to me.
- Z-depth adjustment tool [essentially the same thing as the DF4 plugin 'PelZ' that Joe Laffy had] merely using a BC tool to adjust a Z depth lacks certain finesse.
- --Daniel This would be a trivial macro, using either a Custom tool or a couple of Booleans and a colour tool of some type.
- An option in the Trails tool to act as a simple frame delay (fifo) e.g. for feedback.
- --Daniel: How would this differ from the Delay option in TimeSpeed?
- -- This would buffer frames instead of requesting earlier frames (to be rendered again). Trails could have an option to output its buffer image as it was before the current (possibly rotated and blurred) frame was merged with it and the buffer was updated.
- An additional image input in the AlphaDivide and AlphaMultiply tools to be able to use an external Alpha. A drop-down list with the available channels from this additional image to use as the Alpha would be great too. This would be useful for pre-division in case the correct alpha is rendered in another pass or for post-multiplication when you need to mask the image in a certain way. Otherwise it's pretty hard to see any advantage of these two tools over the ChannelBoolean apart from the naming, which is easily fixed by creating a .setting file. --Gringo 07:29, 14 January 2013 (EST)
- -- There isn't really any advantage to the AlphaDivide and AlphaMultiply tools over ChannelBoolean with a .settings file. They only exist because plenty of users seemed to expect separate stand-alone tools (I guess because competing products have/had them), and they didn't quite grasp the idea that .settings could be made for them. The only advantage there actually is, is that they're optimised for the one specific operation and channel combination they're designed for. Stuart 17:07, 22 January 2013 (EST)
- -- Makes sense, thank you for the comment!--Gringo 18:48, 22 January 2013 (EST)
