Feature Wishlist

From Filter Forge Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 16:02, 12 September 2010
Metrick (Talk | contribs)
(Processing Components)
← Previous diff
Revision as of 16:04, 12 September 2010
Metrick (Talk | contribs)
(General Usability)
Next diff →
Line 145: Line 145:
=== General Usability === === General Usability ===
 +* Russian language
* Drag & Drop images into the filter preview window as a fast way to 'open image'. (Planned) [http://www.filterforge.com/forum/read.php?FID=9&TID=1067&MID=5730&phrase_id=66217#message5730] * Drag & Drop images into the filter preview window as a fast way to 'open image'. (Planned) [http://www.filterforge.com/forum/read.php?FID=9&TID=1067&MID=5730&phrase_id=66217#message5730]
* Revert to default image (i.e. the lifesaver) option. (Planned) [http://www.filterforge.com/forum/read.php?FID=9&TID=455&MID=10253&phrase_id=66216#message10253][http://www.filterforge.com/forum/read.php?FID=9&TID=1067&MID=5730&phrase_id=66217#message5730] * Revert to default image (i.e. the lifesaver) option. (Planned) [http://www.filterforge.com/forum/read.php?FID=9&TID=455&MID=10253&phrase_id=66216#message10253][http://www.filterforge.com/forum/read.php?FID=9&TID=1067&MID=5730&phrase_id=66217#message5730]

Revision as of 16:04, 12 September 2010

THE UNOFFICIAL FEATURE WISHLIST

Introduction

Welcome! The following list was compiled from threads in the feature request forum. Naturally, the list contains only 'open' feature requests (i.e. those not implemented yet), and only those feature requests that the FF team has commented on in some way have been included (plus those of monumental importance they chose to not comment on). A 'feature assessment by FF team' has been added in parenthesis behind each feature request. Most entries have been 'clickified' to conveniently guide you to the relevant discussion threads. Note that this is an unofficial feature wishlist -- 'The ListTM' - as it is known on the forums - remains undisclosed.

Features that are not planned or have been officially shot down are color-coded in red.
[2.0] Features that have been partially realized in the current version are color-coded in yellow.
Features that are confirmed for the next major release are color-coded in green.
[2.0] Features that have been realized in the current version are greyed and stroked out.

DISCLAIMER: No liability is assumed for correctness or completeness.

Quotes

Here are some general quotes on feature requests, to introduce you to some Filter Forge design philosophy...

"Any operation that is not unique for Filter Forge and can be done with other tools automatically gets a lower priority on our to-do list."
-- Vladimir Golovin
"We prefer to spend our resources on adding things that cannot be done in other software, rather than reinventing the wheel by adding stuff that can be done with thousands of other programs, many of them free."
-- Vladimir Golovin
"Entities should not be multiplied beyond necessity."
-- William of Ockham
"I don't like to think in terms of 'features' -- I usually concentrate on systems that make features possible. Systems are the core, features are a byproduct."
-- Vladimir Golovin


Let's get started!

Enough talking already. Here comes the list...




Contents


GENERAL

.8bf Compilation

"We cannot allow creating .8bf files from separate filters because this would mean that anyone could download all filters from the Library, compile .8bfs of them, sell them and ruin us. Also, we would have to pack the HDRI lighting environments into every 8bf, which would increase its size to at least 12 Mb; and we cannot do it anyway because the HDRIs are licensed from Sachform and we cannot distribute them except as part of Filter Forge."
-- Bella Beygelman, Filter Forge Inc.
  • Compile .8bf files from FF filters. (Not planned) [1][2][3]

64-bit

"Actually, 64-bitness doesn't bring any speedups other than those that might result from being able to address more memory."
-- Vladimir Golovin
  • 64-bit support. (Planned for future versions) [4]

Animation

"A more practical solution [than native animation capability] would be to make Filter Forge work as a plugin for After Effects / Shake / Digital Fusion."
-- Vladimir Golovin
  • Animation capability. (Often requested, but unlikely. Compositing-system plug-in preferred!) [5][6][7]

Batch Render

  • [1.0] Simple keyframing & Batch render. (Command-line batch render is available in the current version, but it does not support keyframing) [8]

File Formats

  • .HDR support. (Planned, low priority) [9]

Paint

  • Spline/Vector paint. (Not planned)

Particles

[2.0] See Bomber under Pattern components

Plug-Ins

  • 3D application plug-in (3dsmax/maya/xsi/cinema4d/...). (Considered for future releases) [10][11][12][13]
  • OpenFX standard conforming plugin for compositing systems. (?) [14]
  • Compositing application plug-in (After Effects/combustion/...). (Considered) [15][16]

Photoshop Integration

  • Support for more than one PS layer. (Not supported in Adobe Photoshop SDK v6.0, which is used for compatability) [17][18]

SDK

"We considered an API / SDK, but I don't think we'll see this anytime soon. We also considered a component for scripting with a built-in Javascript or a similar language -- and personally I like this idea better than the SDK."
-- Vladimir Golovin
  • SDK for coding components. (Not planned; LUA scripting support in 2.0) [19][20]

Vector Support

"Vectors would involve a new kind of components (with brand-new color!) which requires propagating the support for vectors across the entire infrastructure (renderer, GUI, preview, files, filter library, website etc etc.) That's a lot of work, so I can safely say that vectors [...] won't be included in v2.0."
-- Vladimir Golovin
"Regarding the font feature -- technically, fonts are a special case of vectors, and in order to implement fonts we'll have to implement vectors first. Which means loading them from PSDs (via the plugin interface, which probably means getting a newer SDK, which has a scary license agreement) and AIs (probably the same story with the AI SDK)."
-- Vladimir Golovin
"The vectors (including possible fonts) are very low-priority at the moment. We don't have any concrete plans regarding this yet."
-- Vladimir Golovin
  • Vector support (including import, fonts, etc). (Planned for future versions, but very low priority) [21][22]

Miscellaneous

  • OpenGL/DirectX preview window showing combined filter maps on a 3D sphere/cube. (Considered, low priority) [23]
  • Isometric Renderer. (Not planned) [24]
  • Random filter generation. (Not planned) [25]




RENDERING ARCHITECTURE

Anti-Aliasing

  • More Anti-Aliasing kernels. (Considered) [26]

HDRI Pipeline

  • [2.0] Unclamped float pipeline. (Full HDR support in 2.0) [27]

HDRI Import

  • Utilize multiple CPU cores. (Planned, low priority) [28]

Lighting & Shadows

  • [2.0] Direct Lighting (phong-based multiple point lighting). (Point/Area lights in 2.0) [29][30][31][32]
  • [2.0] Shadows via Ambient Occlusion.[33]
  • Hard Shadows. (Unlikely; very expensive to render; Ambient occlusion implented in 2.0) [34]

New Filter Types

[ note that currently there are 'Simple' and 'Surface' type filters! ]

  • Hair/Fur filter type. (Planned, low priority) [35]
  • Toon filter type. (Unlikely) [36]

Render Maps

  • Transparency map (Inverted Alpha). (Considered) [37]
  • Self-Illumination map. (Planned) [38][39]
  • Export/save multiple render maps at once. (Planned) [40][41]
  • Custom Render Maps/Outputs. (Considered) [42]

Seamless & Non-Seamless Tiling

"Speaking seriously, [...] to introduce non-seamless components we'll need to redesign the internals, the website and the interface in order to accomodate the concept of non-seamless filters."
-- Vladimir Golovin
  • Locking texture edges for producing tile-sets. (?) [43]
  • [2.0] Global Force Seamless Tiling on/off option. [44]
  • [2.0] Support for non-seamless filters. [45][46][47][48][49]
  • One-way seamless tiling: allow a texture to tile in the X direction without tiling in the Y direction. [50]

Miscellaneous

  • Multi-pass rendering. (Postponed for future releases)


MAIN UI

General Usability

  • Russian language
  • Drag & Drop images into the filter preview window as a fast way to 'open image'. (Planned) [51]
  • Revert to default image (i.e. the lifesaver) option. (Planned) [52][53]
  • Undo/Redo for the Main program window! (Planned) [54]
  • Display filename of currently loaded image. (Planned) [55]
  • Eyedropper functionality for color pickers. (?) [56][57]
  • Numeric entry fields should show more digits. (Planned) [58]
  • Numeric entry fields should support basic arithmetic operations. (Not planned) [59]

Render Preview

  • Open current render as external image (without having to save the image and then load it back in). (?) [60][61]
  • Render region. (Considered) [62][63]

Filter Browser

  • [2.0] Filter search from inside FF. [64]
  • Collapse Filter browser to make room for Filter controls. (?) [65]
  • Option to mark all newly downloaded filters as 'viewed' in both the "Download New Filters" and the FF main windows. (?) [66]
  • Customizable 'MyFilters' category including sub-folders. (?) [67]
  • Set location of 'MyFilters' folder. (?)

Filter Controls

Settings Tab
  • More randomizer fine-control (decouple randomizable items to allow for all possible combinations). (Planned) [68][69]
  • Locking controls to exclude them from randomization. (Planned, low priority) [70][71][72][73]
  • Random Variation from Photoshop; FF starts up with a random variation value, so that each run from photoshop is unique.[74]
Presets Tab
  • Ability to name presets. (Planned) [75]
  • Reorder presets via drag & drop. (?) [76]
  • More than 20 factory presets per filter. (Considered) [77]
Lighting Tab
  • Lighting Presets. (?) [78]
  • Ability to choose, omit, and set parameters of all lighting schemes to be used in ramdomization. (?)
  • Ability to set parameters of lighting controls and include with filter controls. (?)
About Tab
  • Ability to rename filter/edit filter info without launching editor. (?) [79]
  • Make author's name a hyperlink to 'All filters of that author' page. (Planned) [80]



FILTER EDITOR

General UI

  • Ability to minimize program window when in Filter Editor view. (Planned) [81]
  • Render time display for the filter. (?) [82]
  • Render time display for single components. (?) [83]
  • Sample count display for components (Sample Render Diagnostics). (?) [84]

Preview

  • Large Preview. (Considered) [85]
  • Preview Size > Reduced option. (?) [86]
  • Resizeable and floatable/dockable Preview. (?) [87]

Workspace / Node-Network Editing

Components
  • Collapsing/minimizing components. (Prototyped, tested and rejected) [88]
  • Mute/Passthrough mode for components. (?) [89][90]
  • Locking components from editing (paramter values, connections, position). (?) [91][92]
  • Double-click slider title on the settings tab to quickly locate coresponding component. (Planned) [93][94]
  • Add components via dropdown menu or context menu. (Overhaul of component panel planned)
Connections
  • Drag&Drop component into an existing connection between two nodes, automatically connecting inputs/outputs. (Planned) [95][96]
  • Lift component from a connection without destroying the data stream. (Planned) [97]
  • Disable connection. (Considered) [98]
  • Duplicate connection arrow. (Planned) [99]
  • Highlight outgoing connections of selected component. (Considered). [100]
  • Push-pin/null/pass-thru component to 'bend' connections. (Considered) [101][102]
  • Ctrl+Click to copy node and existing inputs
  • Allow mousewheel scroll zoom while holding output arrow
Inputs
  • Switch foreground/background inputs of blend via hotkey. (Planned) [103]
Outputs

-/-

Grouping
"Grouping is definitely a must-have feature, but alas it won't make it into V2.0. Architecturally, grouping is entangled with a number of other high-impact features, which all require quite a lot of design and programming effort."
-- Vladimir Golovin

Filter Properties

  • [2.0] Disable 'Size, pixels' control slider on Filter Settings tab. [109]
  • [2.0] Disable 'Variation' control slider on Filter Settings tab. [110]
  • Disable 'Randomizer' (or certain kinds of randomization) on Filter Settings tab. (Considered) [111]

Filter Controls

  • Randomization Contol locks. (?)[112][113][114]
  • Control ghosting (disabling) for 'inactive/unused' controls (i.e. controls on inactive switch branches). (Planned, low priority) [115][116]
  • Separators/dividers between controls (via 'Order of Controls' form). (Considered) [117]
  • Dividing the Filter Controls into sub-categories. (?)

Order of Controls Form

  • Support drag & drop. (Planned) [118]
  • Select multiple controls to move them at once. (Planned) [119]


COMPONENTS

General

  • Ability to set component presets (default values). (Planned, low priority) [120]
  • Selection of color ranges. (Considered)
  • Comments/Notes component. (Planned, low priority) [121][122]
  • Update selected obsolete component (while keeping connections and remappings intact) as a component context-menu option. (Considered) [123]
  • Update all obsolete components in a filter option. (Considered) [124]

Adjustment Components

-/-

Channel Components

-/-

External Components

  • Frame component: Separate controls for inner and outer corners. (?) [125]
  • Frame component: NGon corners, asymmetrical frames, square fit. (?) [126]
  • Frame component: Fit contents option. (?) [127]
  • Image component: Ability to load more than one source image into a filter. (Planned) [128]
  • Image component: Embedding external images into filters. (Not planned) [129][130]

Gradient Components

  • 'Fixed' and 'Proportional' options for gradients (i.e. options to make gradients independent of 'Size, pixels' and Image Aspect). (Considered) [131]
  • More Gradients (radial, angle, diamond, box). (probably on low priority, as they can be assembled using other components) [132]
  • [2.0] Angular/Radial Gradient. (Free Gradient implemented in 2.0) [133]

Noise Components

"People will always want more, even when they already have what they ask. Many of these [noise] generators can be easily made in the current version of Filter Forge."
-- Vladimir Golovin

[ Note: With the arrival of the Bomber component in v2.0 the need to introduce new noise components is practically zero, so we'll consider the current feature requests regarding noise components as 'officially shot down'! ]

  • More Noise Types. (Unlikely. You can make tons of noises by using profile inputs, input mapping, noise distortion, etc. and by using the Bomber component in v2.0!) [134]
  • Noise types that are much more regular variants of the standard perlin/worley types. (Unlikely!) [135]
  • Probability Maps for Worley-based noises. (Unlikely for noises, but confirmed for Bombers in v2.0!) [136]

Pattern Components

"Our codebase for pattern components is currently based on rounded rectangles, and to introduce hexagonal tiling (or any tiling based on non-rectangular polygons) will require a new codebase. We'll probably rewrite it in the future, but this is currently a low-priority item."
-- Vladimir Golovin
"Yes, we'd like to see fractal generators in Filter Forge."
-- Vladimir Golovin

[ Note: With the implementation of LUA scripting in 2.0, FF's custom pattern generation capabilities are greatly enhanced -- many of the pattern component feature requests below might become obsolete over time as the community develops custom script solutions for them!]

  • [2.0] Bomber (i.e. particle placement component). [137][138][139][140]
  • Bomber particles and particle trails acting on image- and gradient-based forcefields. (Considered, but appears unlikely with the current implementation of Bombers in v2.0!) [141]
  • Cellular Automata - based pattern generator. (?) [142]
  • [2.0] Fractal Generators. (With the arrival of the Map Script component in 2.0, dedicated fractal generator components seem unlikely!) [143][144][145]
  • L-System generator component. (?) [146]
  • Maze component. (?) [147]
  • More Tilings. (Considered) [148]
  • Pipes/Tubes generator component. (?) [149]
  • [2.0] Polygon (Ngon/star geometric primitives generator). [150][151]
  • [2.0] Spiral/Vortex (Capability of the new Polygon component). [152]
  • Tiles, Radial. (?) [153]
  • Truchet Tiling generator. (Considered) [154]

Processing Components

  • Average Color with Map Input (as opposed to the existing Average Color, which always works on the source Image). (Unlikely) [155]
  • Blur, Mapped (aka 'Depth Blur'). (Planned and already prototyped, but slow) [156][157]
  • Blur, Radial. (?) [158]
  • Blur, Smart (i.e. egde preserving). (Considered)
  • Blur, Wind (i.e. uni-directional blur). (Planned) [159]
  • Blur, Bilateral (as in the After Effects).
  • Color Regions component (various modes). (Highly desirable, but technically difficult and on low priority) [160]
  • Erosion. (?) [161][162]
  • [2.0] Find/Detect Edges filter (Sobel). (Possible to construct via the Derivative component.) [163][164][165]
  • Gridwarp. (No word from devs. Issues with seamlessness?) [166]
  • [2.0] Illumination/Lighting component. (Partially implemented via the Derivative component.) [167]
  • Keyer (luma/chroma). (?)
  • [2.0] Median filter. [168][169]
  • [2.0] Minimum/Maximum (Erode/Dilate filter). [170]
  • Multiblend with blend modes. (Might be a possibility with the introduction of uber-tall components like the Bomber)
  • [2.0] Normal map node. Converts heightmap to X,Y, or Z slope (normal) channels. (Partially implemented via the Derivative component.) [171]
  • Pixelize, 'True' (i.e. averaging an entire 'square' vs. sampling a single pixel from it). (Considered) [172]
  • Reflection component. (Considered early on, but has been scrapped due to usability/learnability design decisions) [173]
  • Shadow component. (See Illumination/Lighting above) [174]
  • Switch, Per-pixel. (Considered) [175]

RGB Math Components

[ Arithmetic, power, root, logarithmic, trigonometric, rounding, conditional and other channel-wise math operations ]

  • [2.0] RGB Math. (24 RGB Math components introduced in 2.0) [176][177]
  • [2.0] Derivative. (Derivative component introduced in 2.0) [178]
  • [2.0] Switch, Conditional Logic. (Implemented via the If component) [179]

Transform Components

  • [2.0] Lookup (aka Absolute Offset or X/Y Remap). [180][181]
  • Polar Coordinates transformation (and the reverse). (Considered) [182][183]
  • [2.0] Repeat. (Functionality of the Scale component in 2.0) [184]
  • [2.0] Rotate. [185]
  • [2.0] Scale. [186]

Curve & Curve Ops Components

[ Note: With the implementation of the Curve Script component in 2.0, many of the curve component feature requests below might become obsolete as the community develops script-based solutions!]

  • Bezier Curve (i.e. user editable curve type). (Planned, but requires serious architectural redesign) [187]
  • Arc-curve that extends past 90 deg (Lamé curve). (Planned) [188]
  • Inverse Sine Curve. (?) [189]

Scripting Components

  • [2.0] Expression/Script component. (Map Script and Curve Script components added in 2.0) [190][191][192][193]

Controls

  • Math for controls. (Planned) [194]
  • Slider with biased value distribution. (Planned, low priority) [195]
  • List Control/Dropdown selector for dropdown menues. (Put on hold, possibly scrapped? Suggest again and you'll definitely get no cushions!) [196]
  • Ability to customize value ranges of sliders appearing on the Filter Control Tab. (?)
  • Dynamic min/max limits for control sliders, based on the values that other sliders can get at runtime. (Considered) [197]


New Component Types

Vector Components

  • Text (or Typography Module). (Considered, very low priority) [198][199]


FILTER LIBRARY

General

  • Redesign of categories into a tag-based system. (Considered, categories WILL get redesign eventually)
  • Independently of the author's tagging, users should be able to tag downloaded filters as they wish to reflect their own grouping criteria and nomenclature.
  • Quality Coefficients for authors i.e. ratio of submitted filters to popular filters and editor's picks. (Considered) [200]
  • Random Filter button (pulls up a completely random filter from the library). (?) [201]

Filter Pages

  • Photo gallery for filters. (Gallery section has been introduced to the website) [202][203]
  • Include author name along with filter title. (Considered)
  • Rendering Speed Classification for Library Filter showing on filter details page. (Considered, but unlikely) [204]

Filter Comment Threads

  • Grant filter author control over "Comments on Filters" thread. (Unlikely) [205]
  • "Comments on Filters" thread title should update when filter name is changed. (Planned)

Filter Author Pages

[aka "All Filters by this author"]

  • Introduce 'Featured', 'Popular', 'Recent', 'All Filters by Category' and 'Snippet' tabs, similar to Filter Library. (Redesign/Improvements planned) [206]
  • 'Add This Author to Favorite Authors' & 'Ignore Filters by This Author' options. (Considered) [207]
  • 'Download All Filters By This Author' option. (Considered) [208]


FORUMS

General

  • Customizable Timezones (per-account) for the forums. [209]
  • Polls feature. (Unlikely) [210]

Your Reward Points Page

  • Display a list of the rewards already claimed. (?) [211]
  • Display the list of filters that got High Usage. (?) [212]




Footnotes

Original list compiled by Crapadilla. Feel free to contribute, but keep things tidy and clickified!

Personal tools