These aren’t direct feature requests, but I just wanted to discuss some of the design concepts I’ve come up with lately I may add mockups later to make my ideas more clear. Enjoy, and I’d love to hear any comments and feedback.
Lists of globals and properties
Flash doesn’t have a list of all your variables or a fireproof way to rename them. This leads to variables easily getting lost or confused. Wick, on the other hand, could have a list of global and local variables in the inspector. Global variables (
root.varname?) would be listed in the Project Settings inspector, and properties local to each clip would be listed in the clip’s inspector.
Consistent frame terminology
Currently, a “frame” lasts for X “frames” and can contain “tween keyframes”.
I would propose this: a “keyframe” lasts for X “frames” and can contain “tween points”.
I think having more consistent definitions would help new users understand the difference better. A keyframe is always an object; a frame is always a unit of value. For example, the script window would read: Edit scripts for keyframe “New Keyframe”… No more mix-ups such as “This frame is 10 frames long.”
New users would also be less likely to get tweens and keyframes mixed up.
Clips can be instanced (changes in one affect all instances) yet have several ways to differentiate themselves while still maintaining the link. (All these would be available both in the editor and the API.)
- Play these frames: string (example: “1, 5, 8-12” like in a printer menu) or play all frames
- This could majorly improve on Flash and be more user-friendly if it showed a visual grid of all frames in the timeline, just like the popular Flash extension Keyframe Caddy and Animate CC’s Frame Picker.
- Loop?: bool
- Independent of timeline?: bool
- Play in reverse: bool
- Play speed: 1/4 (quadruples each frame length), 1/3, 1/2, 2, 3, or 4 (only keeps every 4th frame)
- Show only these layers - a list of checkmarks next to each layer name.
- If you have a bunch of sad mouths, happy mouths, etc. for your character, you can include them all in just one symbol, on separate layers. Then just tell the clip to only show the “Happy Mouths” layer or “Scared Mouths” layer.
“What if I want to include a shape with multiple layers?” Groups would be like clips except they are not stored in the library or linked to each other; therefore, they’re great for one-time use. They can still contain their own layers but not frames or JS.
Misc UX Improvements
- "Solo" button in each layer (next to hide/lock buttons). Behaves just like in audio apps (e.g. Audacity) - hides/locks all layers except the ones with solo enabled. It doesn’t actually change each layer’s hide/lock setting, so when all solo buttons are turned off, their settings are back to the way they were before.
- When you select multiple objects, all the properties they have in common should be exposed (even if the values aren’t the same). This is an easy way to set many objects’ properties (colors, etc.) at once. This is common in programs like Flash.
- Frame Inspector: Distinguish between properties that apply to the selected Frame and properties that apply to the selected Tween Keyframe. The way it is could confuse new users.
- What I’d do is add a “Tween Points” subheading and move all Tween Point buttons and settings there. When a Tween Point is selected, the subheading would change to “Frame [number]'s Tween Point”.
- Click on code bar to close it
- Swap colors button and keyboard shortcut
- Hold Shift to maintain aspect ratio when resizing object