「利用者:Aligorith/GSoC2011 Todo Tasks」の版間の差分
(→Smaller Features to Slot In) |
細 (1版 をインポートしました) |
(相違点なし)
|
2018年6月29日 (金) 04:43時点における最新版
NOTE: This list IS NOT A FEATURE REQUEST PAGE, and also doesn't represent the full set of stuff that may get worked on.
目次
- 1 Large Refactors - Essential for Fixing Bugs
- 2 Large Refactors - Important to get Done
- 3 Small/Medium-Sized Bug Fixes
- 4 Smaller Features to Slot In
- 5 Smaller Usability Reviews/Tweaks
- 6 Patch Review
- 7 Work Pending startup.blend updates
- 8 Optimisation Work
- 9 Nexyon Stuff
- 10 Medium Sized Projects Which May/May Not be Addressed
Large Refactors - Essential for Fixing Bugs
These are fairly essential things that need doing, and/or are the cause of a sick number of bugreports.
Animation Channel Filtering Code
Split flags for channel visibility from keyframe visibility(Part 3 - r.37728)- Double check on flags used for each operator again, making sure they make sense from user perspective
Fix the old tabkey bug in tracker (#21276).(Part 3 - r.37730)Check on why insertkey in actedit for "selected channels" ignores collapsed groupsFix filtering problems with trying to edit keyframes in unselected+collapsed groups in ActEdit
- Bring this beast under control again
"Grab then assimilate" vs "Check then Do"(Part 4 - r.37826)Review usage of macros to abstract logic for processing- - Reduced usage of "anonymous C-blocks" macros, but kept a few in places as it still beats function-pointers
Review/remove owner/ownertype stuff(Part 1)Check on the action-block filtering stuff (warts and all)- Set up some more test files
- Review NLA channel drawing
- Fix bugs with indention+click handling (temp patch this)
- Make NLA channels draw using standard system (includes patching the buttons in there too!)
- Review and recode selection handling stuff
- Check on how "active" interacts with all this, especially keeping in mind the issue of closed channels
- Review and recode setting toggling - it's a total pain to use and/or maintain
- Look into creating recursive tree structure for traversal instead of flat
- Check on hotkey usage and user-terminology for this stuff
Possibility of filtering data associated with certain "subchannels" (i.e. timeline only showing keyframes of selected bone)- (Part 5 - r.37983)- RNA Access to filtering code?
- Document this system
- Review of Animation Channel List design (Graph Editor in particular)
Material/Particles NestingRemove list expanders(Part 1)
Texturesinclude once at bottom?--> Probably not!
- Nodes
Material Nodetree support- (Bug #25984, r.37838)Texture Nodetree support (? these don't work that wellanyways)- (r.37842)- What to do with node groups?
Filtering options in header: cleanupHide datablock filters by default - most users don't use them, and they just end up taking up space
Depsgraph
(The full extent of work here is still up in the air. Main areas of contention include how fine granularity do we try to get up to now to solve most problems without ending up recoding Blender in a big way)
Large Refactors - Important to get Done
- F-Samples (i.e. efficient representation of large sets of sampled animation curve data)
- Refactor keyframe-loopers API to also be usable for F-Samples, facilitating editing of mocap data
- Baking API (for use by mocap project?)
- Graph Editor Handle Visibility/Handling
- Need to consolidate drawing modes
- Playback operator/code - tis a mess!
- Implement the variable playback speed functionality as a result of this
- Check on allowing multi-screen playback at same time (3dview in one screen, animedit on other)
Small/Medium-Sized Bug Fixes
Fix autokey menu in Timeline - no options enabled when autokey off
Get Visual Keyframing working again (27157)Poselib Add Pose Bug (27412)
RNA Property Updates working for AnimSys (26764)- r.38649
- Keyframing when active action in NLA is set to "add" mode - will require some way of extracting results of NLA
- Make Markers get stored in sorted order
- Recode Pivot constraint - get it under control again
Smaller Features to Slot In
TODO: sort this list into categories
Paste Pose - Only Selected option on by defaultLimit Distance Constraint - For Transform OptionOperator to convert transforms animation to delta animation
Thin-line B-Bones - to show segmented paths as lines- Selective X-Raying of Bones
- Some way of linking in text blocks along with rigs (i.e. UI scripts)
- EDIT: after chatting to Campbell, apparently there were plans during early Durian over this issue, but would be more generic PyAPI feature for attaching scripts/modules to ID's
- Cycles FModifier support for selecting only partial range of frames to repeat
Perhaps have range-masking support for all F-Modifiers as a standard featureBlend in/out support for range-maskingImplement the influence-setting that wasn't fully enabled?
- Keying Set based tools
- Reset all controls to default values (i.e. transforms + custom sliders)
Quick select (for bones... might be a bit tricky in a few cases)- r.39412-3
Clear User Transforms restored- r.39417
Import button to automate process of adding Keying Sets from other files in
- Tools pending work on animation channels
- Tool to show the curve (in the channel list) of the newly selected keyframe, expanding groups as necessary
- Groups management
Rename groupr.38961- Change group membership
- RMB Menu
- When on a keyframe, allow modifying properties of the keyframe (i.e. handle type, keyframe type, interpolation)
View selected for Graph Editor (check if it exists, and/or modify default mappings?)- Already existed!
- Select markers by pattern (like for objects)
- Reordering of F-Modifiers
- Non-Animatable Properties - i.e. subsurf and masks on/off (UI stuff) - could be sorta done in past by having some locked channels in ActEdit
- Standard properties support
- Custom properties support
- "Normalise Curves" in Graph Editor (i.e. way to view all curves with consistent scale)
- PoseLib - Allow blending between current pose and pose to be applied
- Spline IK - allow using curve twist to affect bone y-rot?
- Align bone to parent (Pose Mode. EditMode already has this, Ctrl-Alt-A)
Hotkey to set bone rotation modes- r.38244- Hotkey to set object rotation modes? Is this needed?
- Constraints Stack Operators
- Operator to reset all constraint distances
- Operator to balance weights for doing averaged multi-target stuff?
- Option to show handles on NLA strips for easier adjusting individual extents. Just need selection + drawing changes.
NLA show all (Homekey) tool- r.38520
Smaller Usability Reviews/Tweaks
- Some setting for choosing type of keyframe that's created (i.e. extreme, breakdown, etc.)
- Idea 1: Probably scene level, just need to figure out how best to expose this
- Review Auto-Keying setting in Userprefs - perhaps just abandon?
Change hotkey for setting interpolation modeIdea 1: swap Shift-T and T? (might be bad for muscle memory)
Have some way of collapsing NLA channel heights to get greater overview?- - More compact vertically when 'Show Control Curves' Off (r.38134)
- - Don't show action lines that don't have keyframes when the filtering flag is off (r.38178)
- Check on whether adding items to Keying Sets when the current set cannot be edited is useful
Adding/Renaming markers in Animation Editors - hotkey range review
Look into the "Time-Slide" transform tool in DopeSheet againIs it really needed anymore?[Poll results indicate Yes]Why the glitchy #tind (div/by/0 errors and no action) bugs?[FIXED]- Properly document how this thing works, as we don't seem to have any documentation on it
- Pending poll 1 results
Don't make actions get fake users by default[DONE]- Modify defaults for pasting keyframes
Swap hotkeys for borderselect with/without handles in Graph Editor[NOT NEEDED]
Implement "local space" for driver targets that everybody expects
Review handle types - auto-clamped in particular seems a bit dodgy- r.39022- Check on need for/howto implement Weighted/Non-Weighted tangents?
- Driver Update Tweaks
Check on rna_DriverTarget_update_data() - driver F-Curve doesn't get re-enabled there- When updating properties which affect driver F-Curves (i.e. their generators), force update of driver
Review visibility and muting icons for anim editors - easily confused currentlyMost people recommend just swapping the icons, but that has visual-balance issues (padlock and eye are equal "weight", while checkbox is much lighter).Swapping the functions of the buttons (eye becomes visibility, checkbox mute, but buttons don't change places) is NOT an option, since we need consistency between DopeSheet + Graph- Eye icon used for curve visibility now. A speaker icon is used for muting.
Make it easier to have cycles FModifiers set up for making animation cyclic (and/or clearing these when done)- r.38191
- Check on way of managing actions
- Outliner support?
Unlink action by clicking on it- r.37896Make action/id's single-user- r.37936Set fake users?- r.38521Allow changing actions?- r.38172- NLA actions - unlinking support
- Anim Editor support
- RMB menu for this sort of thing
- RNA
NLA Act-Clips should not let their action be editable if it is being tweaked...
- Outliner support?
- Check on way of managing drivers
- Outliner support?
- RMB menu to copy all/paste all
- RMB menu to
clear all/update all- r.38172
- Direct entry of expressions into buttons
Basic functionality working- r.38076- Auto-create (and/or identify) variables?
- Outliner support?
- Outliner
Split into separate files?- r.38303Hook up data-ops to animation data where relevant- NLA actions still need attentionCheck on patches in tracker for Outliner anim functionality
- PoseLib support in Outliner - show poses in poselib?
Ctrl-Click to rename channels in AnimEditors- r. 38961
- Check on solo-mode in NLA, and how well this is communicated
Maybe more visible icons - stars vs the barely visible dots- r.38321Greying of text or hiding of icons?- Only mute toggles (r.38325)Greying channel data?- r.38325
- Active action - when NLA tracks exist, extend stops working. Need new extend modes for NLA strips?
- FCurve Drawing Improvements
Make active F-Curve (i.e. current one being edited more visible)- Used "thicker-line" technique - r.38724
Fix low-res plotting problems- r.38726
Active keyframe setting tweaks (GraphEdit)- 39095Display in the relevant units...Proper updates on refresh
Patch Review
23682 - Bone Groups Sort/Reorder- r.38174
Work Pending startup.blend updates
(NOTE: holding off on these atm, since this will start introducing hard-to-merge stuff)
- Make default size of keyframe handles in Graph larger - it's hard to distinguish between handles and verts
- Increasing the size to handle-vert size to 4 already does wonders. Modified the value for new theme files, but defaults file needs updating...
- Making Graph Editor have the "Only Selected" filter enabled by default (see my blog)
- Make Graph Editor "Only Selected Keyframe Handles" on by default
Optimisation Work
- Speed up DopeSheet drawing for composite channels
- Long Keyframes seem to be cause of majority of slowness
- Speed up Graph Editor drawing
- Skip drawing of bezier keyframes (and associated curve samples) outside of visible regions
- Speed up nasty O(n^2) Graph Editor sorting during transform
- NOTE: despite various attempts over the years, it always seems to be some "other" unidentified factor
- beztmap_to_data() <--- blenderdev/250/slow_graphedit_transforms.png
Nexyon Stuff
Property baking method? - void* cacheAnimationData(PropertyRNA* prop, int startFrame, int endFrame)- not needed for now?
"Sound" NLA Strips- r. 39138/9
Medium Sized Projects Which May/May Not be Addressed
- The return of PyConstraints?
- Proper NLA Baking?
Waveform display in TimeLine- Delegated to Nexyon in exchange for work on NLA Sound Strips. After further discussions with slikdigit, was decided to just use sequencer for viewing this stuff.
"Quick-Text" Strip for Sequencer, for making simple title-cards- Sub-subtitle field
- Footer field
- Difference colors for subtitle and title fields
- Alpha setting for background
- "Text" Strip for Sequencer - building on/generalising "Title-Cards"
- Proxy System Review
- Motion paths calculation work
- Update dependent objects when bones change (dependent on depsgraph work I guess), and/or a global refresh on/off setting. - http://projects.blender.org/tracker/?func=detail&aid=27881&group_id=9&atid=498