This page is to list easy projects for new developers to get involved.
The suggestions below are all features that we would accept in Blender releases.
Once you have a patch ready for any of these improvements, head over to our Patch Tracker to submit it.
You may also have a look at the Simple Todos.
Note on Editing this Page
Note To Wiki Editors, This is not a wish-list - only add items here if think these are feasible projects.
Projects must be...
- easy enough for an experienced developer to do in a short time (about 30min - 2hrs).
- real projects (not simply exercises or janitor work).
- acceptable to be added into blenders code-base without discussion on controversial topics.
If you're not a developer, add to User Contributed Tasks, below - to be reviewed for inclusion.
This operator is available for mesh, but could be added to...
Curve, Recalculate handles
In Mesh editmode you can recalculate face flipping, however a similar functionality would be nice to have in curve editmode, to recalculate handles (without changing handle types). This can use the same calculation thats used for setting auto handles.
Curve, Select Grouped
With objects you can press Shift+G to select objects of the same type.
We could have this for curves too.
- Select same spline type
- Select same spline open/closed
- Select same spline material.
- Select same handle size
- Select same handle type.
- Select same handle direction.
- Select same handle radius.
- Select same handle tilt.
- Hair in particle edit mode.
Currently in Mesh Editmode and Object mode you can select similar (Shift+G), based on various properties, this idea could easily be applied elsewhere.
- select similar bones - editmode (add more options --- group, custom-shape, children, immediate-children, siblings)bpy.ops.armature.select_similar()
- select similar curve - editmode (handle type, curve type, curve length, curve-point-count)
- select nodes - by type, by color, by name (prefix/suffix)
Add 'Transform' Python Function
Currently you can transform a mesh by a 4x4 matrix
The same functionality would be useful for other object data types (Curve, Lattice, Armature, Surface, Metaballs).
Add 'pack', 'unpack' Python Functions
Currently only images have API calls for pack/unpack, but sounds and fonts should also have this ability. bpy.types.Image.pack()
Make more Theme Colors Configurable
- The Weight-Paint MultiPaint feature uses black when no weights apply to an area - should be a configurable color (display next to colorband in preferences).
Text Editor (line operations)
While blenders primary focus is to be a 3D application there are some improvements to our editor that could be handy.
- Join line (End-Key, Delete; basically removes line break of current line)
- "use tab as space" should take the tab size into account (it's always 4 now).
Cleanup NGon Tool
Some users don't want ngons in their workflow so tool to convert NGons to Quads/Tris would be useful.
Not all options need to be added immediately - but here are some that could be implemented quite easy.
- triangulate - keeping quads within each ngon where possible (like triangulate, then convert to quads).
simple fan-fill (adding center vert)
- simple fan fill but use quads (adding center vert), only for ngons with even number of sides.
Viewport normal drawing
Constant 'normal length' so they are independent of zoom (ortho mode only since this likely too slow in perspective mode)
Mesh Editing (UV's for primitives)
Currently UV unwrapping some primitives doesn't work nicely, the option to add meshes with generated UV's would be useful (sphere, cone, cube... etc).
Rip Tool (UV Editor)
Mesh editmode has a rip tool (V-key in editmode), The same functionality would be nice to have while editing UV's (Unweld).
User Contributed Tasks
This is for people to add small tasks if you're not a developer but have some idea for a small improvement to Blender.
Please don't use this for bug reports which belong in the tracker
- File browser: Renaming of bookmarks
- Ability to set LMB (or any mouse button) select in all interfaces, windows and contexts. Currently, the switch in preferences turns RMB selection contexts into LMB but it also flips existing LMB selection contexts into RMB. And there is no way to unify using keymappings.
- Tooltips for the all the nodes so that when you hover the mouse over a node in the 'Add Node' menu, a short description of what the node does will pop up.
- activate/deactivate tracks that have entered/exited frame
- statistical evaluation of tracks
- presets for 'point and shoot' cameras
Including these to give examples of tasks that don't make for good quick hacks, not all rejected tasks will end up here.
- Python - Callback handler for selection event (e.g. bpy.app.handlers.select... not sure if this needs to be general or per data type)
Select is too general an operation which can happen in many places to use a callback --Ideasman42 21:53, 21 March 2012 (CET)
- Check spaces for missing header menu entries -- i.e. something accessible by hotkey that isn't in the header menus.
Quick hacks should be concrete tasks --Ideasman42 21:56, 21 March 2012 (CET)