Page MenuHome

Blender development todo list -- Tools (migrated from wiki)
Confirmed, NormalPublicTO DO


NOTE: this is a direct dump of (without cherrypicking the valid items)


New scene - Full Copy

Several things are still not copied or reassigned when using this tool:

  • Particles - Not even the particle systems themselves, not to mention re-assigning 'objects' pointers to copied IDs too, see T40891.
  • Textures when they are only used by e.g. modifiers (i.e. not by a material, world or lamp).
  • Textures used by modifiers are not re-assigned to new copies when possible either (only objects are handled).

Library System

  • Hard (or even impossible) to relocate libraries that have been moved (T44958). Addressed in id-remap branch, hopefully merged in 2.78.
  • 'Find Missing Files' does not work with .blend lib files (impossible with current master, easy to do once id-remap is merged, see T47774).


  • API and draw code for manipulator needs to be redone still. For this reason no manipulator drawing happens during transform.
  • Manipulator click behavior (left-click-release a manipulator axis to enable a transform on that axis -> perform transform and wait for another left-click to confirm. Expected behavior from 2.4x)
  • Operator parameters in toolbar don't have to be drawn all always, needs cleanup.
  • Transform redo fails when you change mode during transform (use R S G keys).
  • Mirror of rotated objects doesn't always work correct T37928
  • Numeric input for rotational transform resolves to modulo 360. Should it? T40167 - ''possible fix included''.
  • Transform along the axis does incorrect axis projection in certain circumstances T40893
  • Scaling from zero is not possible with 'S' shortcut (T44551).
  • Transform redo fails when mouse move is required (T50419).
  • Apply Scale: Option not to scale all object properties (curve radius, empty scale, text scale... etc). "Scale Properties" toggle.
  • Cursor input to calculate rotation can accumulate a small amount of error (impacts bend and rotate) T53590
  • Armature edit-mode transform proportional editing doesn't work (T53992).
Transform Snap
  • Snapping to vertex slide (Taking into account multiple selections).
  • Snapping to face local axis doesn't snap the vertex to the face surface (T38438).
  • Snapping to self doesn't work with proportional edit-mode (T44793).
  • Snapping doesn't work for Boolean modifier (T35023).
  • Snapping in object mode rotates object around their origin, instead of rotating them around their snapped point (T42362).
  • Snapping doesn't behave as expected when having several parented objects (T41199).
  • Snapping between multiple objects can give some working-as-intended, but in practice quite undesirable behavior (using bounding box) (T47171).
  • Snapping falls back to using a grid, however this isn't clearly communicated<br>(advanced snapping on faces, vertices, etc. only works on move/rot/scale, see T42798).
  • Snap to cursor and snap to grid could be made to work more consistently: See (T34441)
  • snap_project individual element on surface of other objects -;
  • Snap does not work for NURB surfaces (T51249);


  • There is no good way to control the rotation of objects in DupliFaces option (rotation is computed from face normal (which is good) and first three vertices of the polygon (which is weak, epic fail with e.g. Mirror modifier). See T37365.
  • Duplifaces don't work well with the mirror modifier, see T37820.


  • Capping front / back -ends of beveled curve doesn't work, see T26136
  • Constructive modifier kills generated UV mapping on bevelled curves, see T27411
  • Surfaces Make Segment rotates U/V even when it's not actually needed, see T31480
  • Couldn't cycle through vertices with the same location using mouse selection, see T36760
  • Curve tessellation might work not as it's expected to, see T37386, T40171
  • Curve deform doesn't work if curve is zero-scaled T38907
  • Nurbs clamp order by total number of points, this should be clamped at runtime T40378
  • Handling of non-smooth control points with (Bézier/poly) curves in general, and their rotation in particular, could be improved when generating BevelList & Path, see T44393.
  • In some cases Bevel should prefer "clip" behavior over trying to keep constant shape across the path T50720.

Text objects

  • Font formatting interface should be improved (T49599)
  • Default Bfont doesn't support russian characters (or any other non-european charset) in text object, while UI does show Russian characters (T53744)


  • Some shapes (Cube) for eg. draw far outside the tessellation bounds making them hard to select. see T47455


Mesh Editing
  • Knife & loopcut
    • Knife/loop cut need to work properly with operator properties/redo
    • Restore Quad Corner Cut Methods (Innervert, Fan and Path) for Subdivisions and Knifecut
    • Knife cuts side-on, intersecting the entire face, could be detected and ignored T43816
  • Mirror edit mesh operator (Ctrl M) fails to flip normals leaving an incorrectly mirrored mesh (turns normals inside)
  • Add option to disable n-gons usage for tools (might be useful for some usages) (see T31268)
  • 'Checker deselect' could be modified to work in some cases where it currently fails, (see T34544)
  • Merge meshes: add option to join UVs (and other CD layers!) by names rather than index (see T36749).
  • toolbar mesh Extrude operator inconsistency (see T36977).
  • Shape keys: Enhance memory usage (not storing vcos for unchanged vertices? See T39287).
  • Face snapping using the center in combination with constraints could use some improvement T40933
  • Edge Slide doesn't work with snap T48927
  • Bevel
    • Better handling of profile=1, profile=0.25, and implement profile=0 cases (see T39132 and T38458 and T40278).
    • Generalize to handle several manifold sheets touching at a point (see T34678).
    • Improve clamping code (see T38871).
    • More options, e.g., spline spec for profile shape (see T40722) and vertex blends with setbacks.
    • Treat more cases like "pipe" to avoid bulges (see T40258)
    • Option to have bevel not create n-gons (see bf-funboard thread)
    • Sometimes leaves degenerated geometry (T48174)
  • DataTransfer/Geometry Matching
    • Add 'matching' algorithms based on 'similar shape' rather than simple items proximity/raycasting (see T46762 for a usecase) - WARNING: most likely advanced, mathy project!
    • A review of islands handling could also be useful, current code is rather complex and not so efficient.
  • Discussion
    • Extrude behaviour on cancel, see (T23492).
Text Editing (3D)
  • When converting beveled text into a mesh - there are many doubles.
  • Text object requires better integration with the system clipboard, T38556, T46330
  • Support font kerning (T47725).
UV Unwrapping
  • Settings for pack margin in different operators behaves inconsistently, see detailed description:
  • Remove doubles has an option to Merge with unselected verts, This would be very handy for welding also.
  • Detect convex mesh without seams on unwrap and print warning.
  • Unwrapping fails on a particular strange topology (T31145)
  • Unwrapping for concave polygons is badly supported T41810
  • Face/edge selection in UV Editor does not work same as in 3DView (T52276).

; Not ported from 2.4x

  • Click Project from face
  • Consolidate into one image
  • Billboard render on active
  • Unwrapping could run out of stack size for tricky geometry T42524
Vertex Paint
  • Undo in vertex (and weight paint) behave differently to sculpt/project-paint modes regarding undo steps T52993

Sculpt & Paint

  • Check documentation and fix hotkeys which could be useful for artists (or remove redundant hotkeys and update documentation), see T26017
  • Grab + symmetry can make things shoot off more quickly than they should (strength of movement is being double counted), see T25370
  • Not all drawing modes supports PBVH drawing, see T32454, T38608, T38609
  • Not all shading modes are supported for dyntopo, see T34010
  • Hidden faces are treated as hidden by sculpt tools but when PBVH drawing isn't used, the hidden faces display (and cant be edited), see T33078
  • Multires modifiers: makes mesh invisible after leaving sculpting mode, see T36591
  • Multires sculpt: artifacts grabbing between different levels T40465
  • Dyntopo does not support restoration when aborting a stroke, see T46456.
Painting (3D)
  • Solve projection paint issue when one vertex in a face in behind the view in perspective mode<br>
  • Continue to unify paint modes
    • Consistent brush texture mapping across paint modes (sculpt/tex paint/proj paint).
      • Consistent brush options, eg. 'Rake' or 'Anchored' in texture paint.
  • Make paint of displacement texture apply real time on model (optional). (T24657)
  • Allow view center to work for selected/active face in WPaint mode.
  • Viewport navigation for painting modes can be improved T48113
  • Users can perform strokes which apply to a huge number of pixels (by accident) - this could be handled gracefully T52351
Painting (2D)
  • Clone image painting should support the same translation/rotation/scale tools as stencil texture mapping.
  • Stepped lines in image editor painting, blending should use float coordinates and interpolate (T52610)
Grease Pencil
  • Default attach point of GP data is confusing ((T21969))
  • GP ignores color management ((T50149))


  • Improve handling of linking of materials to Object/Data. Right assigning a material-less data to object the materials from object are gone too (T23805, T52484).
  • Fix EnvMap update, it can depends on many different things in the scene (T41900).


  • Make (at least some) generative modifiers to handle custom normals (like e.g. mirror one, see T44058).
Array Modifier
  • Has been re-written to use bmesh, making 2.63 slower then 2.62, There are areas where speed could be improved, for full info see T30695
  • Textures from cap objects are completely ignored and no way to override them, see T33578
Boolean Modifier
  • Boolean modifier does not preserve vertices/edges data, see T32203, T33548
  • Issues with degenerated faces, see T30447
Decimate Modifier
  • Limit decimation along seams (UV vertex color, etc), see T32203
Explode Modifier
  • Does not preserve UV maps when using Cut Edges option (T46514)
Multires Modifier
  • Only solid draw mode uses optimized drawing
  • "Applying Base" gives spikes on lover levels sometimes, see T35560, T37997
Bevel Modifier
  • Does not preserve edge custom data, see T35314.
Simple Deform Modifier
  • The bend/taper/twist options use fixed axis, add XYZ options would be nice. T33712
Skin Modifier
  • Skin modifier very slow in some cases, see T40770
Solidify Modifier
  • Curves tesselation creates zero area faces which solidify doesn't handle well T52170
Remesh Modifier
  • Mesh data at extreme distance from origin (2**24), crashes T47209<br>''Note, this is a real corner case - yet its a bug because it shouldn't crash.''


  • Allow using multiple baked caches on a single object (having different frame ranges), see T41896.
  • Bullet: High memory usage for objects that don't have scale applied (T35799)
  • Generic issue: baking ignores making pointcaches when modifier preview has been disabled. Doesn't need fix - but let's keep track of this for future work.
  • Point caches do not work well with time remapping (example T35968)
  • Proper handling of rendered subframes without baked pointcache, for more info see (T21948)
  • Proper handling of different vertices placed at the same position with "Soft Body Self Collision" option turned on (see (T26956)).
  • Cloths doesn't allow preview during bake (see (T30490)).
  • Dupli-group cloth in NLA fails (T29838)
  • 'Emit from: verts' not working as expected when deforming T36237
  • Collision of hairs doesn't works properly T39219
  • Memory optimizations are possible for cloth T42577
  • Cloth pre-roll feature is totally weird and needs reconsideration T40103
  • Data has to be interpolation between cached frames for motion blur to work correctly, see (T25631).
  • HighRes smoke cells are not cleared by animated collision objects. Adding this would probably introduce unwanted "blocky" behavior of highres smoke, tradeoff between collision accuracy and visual result (T39261)
  • Changing viewport/render visibility for non-domain object is weird and could become more clear from UI perspective T43676
  • Reading smoke from Cache doesn't work correctly, gives weird results T40820
  • Collision modifier updates it's data structure even if there are no physics that need it (can be slow), a check should be added to make sure the data is actually needed, see (T26965).
  • Force fields and collision objects are not included in DupliObjects. This is mostly a design decision (duplis being a purely visual feature), but would be nice to support at least in groups. T35264 T36300
Fluid Simulation
  • Making sure memory is actually allocated eve for big grid resolutions and handling errors gracefully, see (T27756) about obstacles using a lot of memory.
  • Volume obstacles do not deactivate when animating the 'Active' value, see (T26031).
  • Tessellation fails in some cases, see (T28756).
  • Fluid sim ignores delta scale (T29949).
  • Animated inflow (and outflow) doesn't work (T30605).
  • Mixing single and double precision values leads to some nasty issues caused by floating point precision loss, T39583
  • Fluid volume grow with the movement of domain T41692
  • Fluid intersection does not work correct T44897
  • Fluidsim problems with rotated obstacle T47130
  • Better handling of collisions & force fields for dynamic hair
  • Wave kink direction is totally uncontrollable, probably there needs to be a way to define hair tangent direction in particle edit mode.
  • Adding hair in particle mode only uses the deformed mesh, see (T25689).
  • Particle emission between frames is only accurate for object level emitter/parent animation, for parenting or constraints an interpolation method needs to be implemented, but before this can be done pointcache code has to get some changes too. See (T36516) for more details.

*; Parent animation is now supported {{GitCommit|rBc24a23f. Similar issue still persists for non-animated parents (e.g. rigid bodies) though T39923

  • Reactor particles
  • Conversion from some old files could be better
  • Vector blur + particles being born/dying doesn't work properly, see (T23320).
  • Metaballs don't work with particles when the particle view setting isn't "render", see (T25794) for more info.
  • "Constructive modifiers before particles" is still an open issue, but some way to handle this gracefully would be really nice, see (T25838) for more info.
  • Density of particles can't be animated with animated textures, see (T28212).
  • Instanced objects do not show in particle edit mode, see (T28431).
  • Issue with ghosting particles if you don't bake first. (T28116)
  • Linked groups: Force fields and guides only work if you use "Effector Group" feature, set to its own group.
  • Particle Hair dynamics: stops working after using "Add tool". (T30557)
  • Instanced objects don't draw in Particle Edit Mode. (T31913)
  • Child particles Interpolated mode only works well for Hair, for other particles it doesn't take particle lifetime into account. (T33390)
  • Particle emission doesn't support NGons.
  • Particle Object duplication doesn't work with Mirror modifier (T34705)
  • Particle systems fail to duplicate for smoke simulation (T34705)
  • Random distribution of particles fails in specific setups (T35598)
  • Default point cache step of 10 frames fails in some cases, see T38563
  • Particles tangent rotation control by vertex group missing, see T35103
  • Texture doesn't affect grid particles T40404
  • The particle system needs to be set to 'Newtonian Physics' for texture to influence the size, and with global gravity turned off T28263
  • Multiple issues with particles rotation T32340, T44088
  • Particles hidden in viewport reappear during rendering T40463
  • Particle initial speed is not properly inherited from the parent T41305
  • Point density textures can not be used to control particles T44901
  • Particle duplication in general is rather poorly implemented (no relink of used datablocks, no duplication of psettings ID when duplicating objects, …) T45843.
  • Grid distribution only supports From Dupli Generated, but not UV. Potentially could use nearest face. T48928
  • Particles aren't spawned correctly, they are sometimes generated at the same location as other particles, or at the object's origin. See T50135 for one scenario.
  • Particle editmode could have its 'own' [X-mirror] option (and not reuse editmode option). See T53872
Rigid Body
  • Velocities are not cached, which prevents a proper state update when cache has time gaps T50230.

Image & Video

  • DOF Defocus node: fStop close to 128 fails to give good results, stay away from that value! (T24534)
  • DOF node gives no realistic results as users expect, documentation needs upgrade for it.
  • Defocus node is very slow when large blur radius is needed, could be optimized somehow (mipmap, summed area table?) (T29481)
  • Defocus node does not work nicely without a camera controlling the blur radius. This makes external compositing workflows with defocus difficult. At the heart of this is a design conflict, because defocus is not a true postprocessing effect T36745
  • Fast Gauss (Gabor filter, Young/VanVliet) has bad results for edge cases. Needs image processing guru (T25543)
  • Check on DPX and and (T27377)
  • Map UV makes mapped images blurry, see T31868
  • Some nodes does not preserve alpha channel replacing it with fully opaque, see T32580
  • With new compositor, on loading files a compositor doesn't start (for existing buffers), so viewers remain empty as well. T35417
  • Ghost Glare is of limited use, needs clarification and probably a more sophisticated generic lens flare alternative T30389 T36488
  • Some node inputs require a single constant value and don't work with image-based per-pixel values (T36585). This leads to confusion when nodes apparently don't work, because nothing prevents linking such variable values into constant inputs. Compositor nodes should keep track of constant values and limited inputs on the node level (also in node groups!).
  • Compositor gives unexpected results with specific curve mapping due to precision loss, see T36621
  • "Full Sample" merging does not work with the File Output node, sample merging happens only for render result outside compositor. Real-time editing might also be improved to deal with samples better (T36811, T39143)
  • Accumulation method in the Lens Distortion node causes artifacts on noisy input T37462
  • Compositor does not support render slots T43260
  • Scaling down produces artifacts due to lack of ellipse filtering of sampler T51070
Image formats
  • Upgrade our DPX code to read newer or different versions, copy the ImageMagick code? (T24716)
  • No support yet to output images in user chosen color space. (T37650)

Related Objects

ConfirmedTO DONone
ConfirmedTO DONone

Event Timeline

Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to Normal.Jun 7 2018, 12:50 PM
Philipp Oeser (lichtwerk) created this task.
Campbell Barton (campbellbarton) renamed this task from Blender development todo list -- Tools to Blender development todo list -- Tools (migrated from wiki).Sep 3 2019, 7:37 AM
Campbell Barton (campbellbarton) updated the task description. (Show Details)