Rev 228 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
72 | ddenk | 1 | AUTHOR: "Daniel Denk" <djdenk@gmail.com> |
2 | |||
3 | |||
4 | SYNOPSIS: |
||
5 | |||
6 | Filter Foundry development wishlist. |
||
7 | |||
8 | |||
9 | DESCRIPTION: |
||
10 | |||
11 | Compile a list of development needs to establish a finalized |
||
12 | version of Filter Foundry, and to improve or expand on its |
||
13 | current capabilities as a viable option to plugin development |
||
14 | without the requirement of complicated programming languages. |
||
15 | |||
16 | |||
17 | CURRENT VERSION TESTING: |
||
18 | |||
84 | ddenk | 19 | 1.4 beta 9 (1.4b9) |
72 | ddenk | 20 | |
21 | |||
22 | |||
23 | IMPROVEMENTS/BUGS: |
||
24 | |||
25 | * Convolutions 'cnv()' function was radically improved allowing |
||
26 | for entire image processing without a one pixel border limitation |
||
27 | in previous versions. (Resolved from previous communication.) |
||
28 | |||
29 | * -1 pixel offset compensation when tiling appears to be eliminated, |
||
30 | as was typical with Filter Factory and code requirements. This is |
||
31 | a value-added development, but mysterious in how it effects the |
||
32 | other processing functions. (Evaluate code and test?) |
||
33 | |||
74 | ddenk | 34 | *** See examples of comparison between Filter Factory |
35 | code from the FF manual and revised code eliminating |
||
36 | the -1 pixel offset. |
||
72 | ddenk | 37 | |
226 | daniel-mar | 38 | => Daniel Marschall 17 July 2021: "examples" filter deleted, |
39 | because FilterFoundry and FilterFactory are 100% equal now. |
||
72 | ddenk | 40 | |
74 | ddenk | 41 | |
226 | daniel-mar | 42 | |
72 | ddenk | 43 | PRIORITY NEEDS: |
44 | |||
84 | ddenk | 45 | |
81 | ddenk | 46 | (FIXED) 1. Default load and save file extensions to lowercase. (.afs, .txt, .8bf) |
74 | ddenk | 47 | Currently uppercase. |
48 | |||
75 | toby | 49 | 2. Establish processing fixes/bugs where needed. One example is |
50 | incompatibility with former Filter Factory scripts not working |
||
72 | ddenk | 51 | properly [ie: Simple Tile tools, repeating edge problem]. |
52 | |||
53 | (If a documentation issue based on processing changes, then |
||
54 | documentation required for the updated code structure.) |
||
55 | |||
220 | daniel-mar | 56 | (FIXED) 2a. See examples provided. (Blintz) |
57 | R := src(x+y<=X/2?Y/2-y:x-y>=X/2? y+Y/2: x-y<=-X/2? y-Y/2:x+y>=(3*X) |
||
58 | /2?3*Y/2-y:x,\r |
||
59 | x+y<=X/2?X/2-x:x-y>=X/2? x-X/2:x-y<=-X/2?x+X/2:x |
||
60 | +y>=(3*X)/2?3*X/2-x:y,z) |
||
74 | ddenk | 61 | |
220 | daniel-mar | 62 | G := src(x+y<=X/2?Y/2-y:x-y>=X/2? y+Y/2: x-y<=-X/2? y-Y/2:x+y>=(3*X) |
63 | /2?3*Y/2-y:x,\r |
||
64 | x+y<=X/2?X/2-x:x-y>=X/2? x-X/2:x-y<=-X/2?x+X/2:x |
||
65 | +y>=(3*X)/2?3*X/2-x:y,z) |
||
66 | |||
67 | B := src(x+y<=X/2?Y/2-y:x-y>=X/2? y+Y/2: x-y<=-X/2? y-Y/2:x+y>=(3*X) |
||
68 | /2?3*Y/2-y:x,\r |
||
69 | x+y<=X/2?X/2-x:x-y>=X/2? x-X/2:x-y<=-X/2?x+X/2:x |
||
70 | +y>=(3*X)/2?3*X/2-x:y,z) |
||
71 | |||
72 | A := src(x+y<=X/2?Y/2-y:x-y>=X/2? y+Y/2: x-y<=-X/2? y-Y/2:x+y>=(3*X) |
||
73 | /2?3*Y/2-y:x,\r |
||
74 | x+y<=X/2?X/2-x:x-y>=X/2? x-X/2:x-y<=-X/2?x+X/2:x |
||
75 | +y>=(3*X)/2?3*X/2-x:y,z) |
||
76 | |||
77 | Daniel Marschall (16 July 2021): In the current version of Filter Foundry 1.7, |
||
78 | the output of Filter Foundry and Filter Factory is equal. So the bug has vanished. |
||
79 | |||
80 | |||
129 | dmarschall | 81 | (FIXED) 3. Control captions currently not being applied in compiled plugins. |
72 | ddenk | 82 | |
84 | ddenk | 83 | (FIXED) 4. Fix compiled plugin dialogue to read the filter's name. |
81 | ddenk | 84 | [ie: CAPTION "Filters Name Goes Here"] |
72 | ddenk | 85 | |
81 | ddenk | 86 | 4a. Currently defaults to "Filter Foundry" and requires ResHacker |
87 | to fix. |
||
72 | ddenk | 88 | |
129 | dmarschall | 89 | (FIXED) 5. One pixel border bug at very bottom of Preview image. |
72 | ddenk | 90 | |
81 | ddenk | 91 | 5a. Minor annoyance in aesthetic. |
92 | 5b. Refer to Item 6 as a potential fix or work-around. |
||
72 | ddenk | 93 | |
82 | ddenk | 94 | 5c. Refer to example in reference directory: 'bug_preview' |
95 | |||
96 | 5c-a. Demonstrates the border, along with a description |
||
97 | of what occurs as a side-effect [ie: 'sticking']. |
||
98 | |||
99 | 5c-b. This occurs in all plugins compiled. |
||
100 | |||
101 | 5c-c. Attempted different frames in ResHacker to see |
||
102 | if the issue would go away - results same. |
||
103 | |||
156 | dmarschall | 104 | (FIXED) 6. Prefer Preview default with no background color. |
72 | ddenk | 105 | |
81 | ddenk | 106 | 6a. Currently white background for Preview. |
156 | dmarschall | 107 | |
220 | daniel-mar | 108 | Fixed by Daniel Marschall (10 Jan 2018): |
109 | For Windows, the preview area is now inside a "sunken" border, |
||
110 | and the area is filled with the Windows "workspace background" color. |
||
81 | ddenk | 111 | |
84 | ddenk | 112 | (ADDED) 7. Obfuscation or hiding of PARM source in compiled binary .8bf. |
81 | ddenk | 113 | |
114 | 7a. Preferred as a checkbox option in the Make dialogue, or include |
||
115 | with the 'Protect' option already established. |
||
116 | |||
84 | ddenk | 117 | (FIXED) 8. Flip to match PS builtin zoom controls (+/-) |
81 | ddenk | 118 | |
74 | ddenk | 119 | ---------------------------------------------------------------------------- |
120 | |||
81 | ddenk | 121 | (Deprecated) 8. Make additional captions optional (Copyright, Author, etc.) |
122 | (Don't place box in dialogue at all if nothing entered.) |
||
72 | ddenk | 123 | |
81 | ddenk | 124 | (Deprecated) 9. Determine if all default CONTROLs can read STATIC and not "Static"? |
125 | (Noticed in ResHacker when editing a dialogue - ResHacker automatically |
||
126 | Compiles Script to read STATIC, and extracts the additional 001fxx types.) |
||
72 | ddenk | 127 | |
81 | ddenk | 128 | *** Deprecated due to testing in ResHacker. |
129 | *** Preview problem was solved due to a mistake in DS_OWNERDRAW |
||
130 | being altered to DS_LEFT. |
||
74 | ddenk | 131 | |
84 | ddenk | 132 | (Deprecated) 10. Add a checkbox option to Preview image adjustment in real-time, and |
81 | ddenk | 133 | possibly allow being able to scroll through the main image window. |
134 | [Like native Photoshop plugins.] |
||
135 | |||
136 | *** Deprecated due to lack of support from SDK. |
||
137 | |||
138 | |||
139 | |||
72 | ddenk | 140 | DEVELOPMENT PROPOSALS (Future Development / Expansion): |
141 | |||
89 | toby | 142 | (FIXED) 1. Support all Photoshop color spaces, RGB, Grayscale, CMYK, and LaB. |
72 | ddenk | 143 | |
89 | toby | 144 | (FIXED, up to 4 channels) 2. Multi-channel support (Being able to process all channels, regardless |
72 | ddenk | 145 | of color-space). [ie: If additional channels are loaded, then 4 channels |
146 | will have their own space for code. - Red, Green, Blue, Alpha1, etc, A] |
||
147 | |||
75 | toby | 148 | 3. Add options for Levels display (to be able to see what any adjustment |
72 | ddenk | 149 | does to the histogram in real-time). |
150 | |||
74 | ddenk | 151 | ---------------------------------------------------------------------------- |
152 | |||
75 | toby | 153 | 4. Consider a dialogue editor while building plugins, instead of automatic |
72 | ddenk | 154 | captions / labeling - a la ResHacker dialogue editor. |
155 | |||
156 | (This would fully surpass the traditional Filter Factory dialogue and |
||
157 | produce something more flexible and unique, but with the same or |
||
158 | current coding environment established in Filter Foundry.) |
||
159 | |||
75 | toby | 160 | 5. Consider expanding on code, to include support for alpha blending to |
72 | ddenk | 161 | blend pixels together. [ie: If making a seamless tile, then code in |
162 | the blend amount between pixels that overlap] |
||
163 | |||
164 | (This would take Filter Foundry to the next level beyond what Filter |
||
165 | Factory had established, by allowing an additional range of options |
||
166 | to explore in filter creation.) - If this is possible. |
||
167 | |||
168 | 'alph()' function? Similar to the scl() or mix() functions? |
||
169 | |||
74 | ddenk | 170 | ***** Discussed optional coding language - not recommended for the |
171 | current needs of Filter Foundry. ***** |
||
72 | ddenk | 172 | |
173 | |||
174 | |||
175 | |||
176 | |||
177 | |||
178 | |||
179 | |||
74 | ddenk | 180 | |
72 | ddenk | 181 | ACKNOWLEDGEMENTS: |
182 | |||
183 | * Simple Tile Tools - http://www.btinternet.com/~cateran/simple/ |
||
184 | (Used as a test source to test current status of continuity |
||
185 | with Filter Factory compatibilities.) |
||
186 | |||
187 | |||
188 | |||
189 | |||
190 | LICENSE NOTIFICATION: |
||
191 | |||
192 | This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop |
||
536 | daniel-mar | 193 | Copyright (C) 2003-2009 Toby Thain, toby@telegraphics.net |
219 | daniel-mar | 194 | Copyright (C) 2018-2021 Daniel Marschall, ViaThinkSoft |
72 | ddenk | 195 | |
196 | This program is free software; you can redistribute it and/or modify |
||
197 | it under the terms of the GNU General Public License as published by |
||
198 | the Free Software Foundation; either version 2 of the License, or |
||
199 | (at your option) any later version. |
||
200 | |||
201 | This program is distributed in the hope that it will be useful, |
||
202 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
203 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
204 | GNU General Public License for more details. |
||
205 | |||
206 | You should have received a copy of the GNU General Public License |
||
207 | along with this program; if not, write to: |
||
208 | |||
209 | Free Software Foundation, Inc. |
||
210 | 59 Temple Place, Suite 330 |
||
211 | Boston, MA 02111-1307 USA |
||
212 |