This page is to list easy projects for new developers to get involved.
Once you have a patch ready for any of these improvements, head over to our Patch Tracker to submit it.
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 few hours.
- real projects (not simply exercises or janitor work).
- acceptable to be added into blenders code-base without running into controversial topics.
If you're not a developer, add to User Contributed Tasks, below - to be reviewed for inclusion.
Mesh editmode has select more/less but some object types miss this.
Curve, Armature Split
In mesh edit-mode there exists a split tool (Ykey), which disconnects connected, unselected geometry.
This could be added to curve and armature datablocks (possibly surface too though this is more involved).
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 metaballs - editmode, (scale, type) patch in tracker, could be improved on
- select similar bones - editmode (length, name prefix, name suffix, group, layer)
- select similar curve - editmode (handle type, curve type, curve length, curve-point-count)
- select nodes - by type, by color, by name (prefix/suffix)
Apply Transformation (Metaballs Missing)
Currently: Object -> Apply -> Location / Scale / Rotation, works for meshes and armatures but not metaballs.
Since a lattice has vertex-like meshes there's no reason for this to be left out.
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.
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
- "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 (Vkey in editmode), The same functionality would be nice to have while editing UV's.
BGL Py Docs
Latest bgl additions need rst doc. It's a matter of adding the new methods (see [commit) with their barebone descriptions (from opengl site) here: //doc/python_api/rst/bgl.rst
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
- Improve outliner
- more things drag and drop assignment *TOO VAGUE - WHAT THINGS?*
- Particles Render Panel: Replace material slider by ID block [ http://pasteall.org/pic/show.php?id=28983 ]
- Modifiers Panels: Collapse/Expand modifier panels by hitting AKEY, same as with regular panels.
- File browser: Renaming of bookmarks
- Description boxes 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.
- * 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)(
- ==== Add missing menu items ====
- Check spaces for missing header menu entries -- e.i. something accessible by hotkey that isn't in the header menus.
Quick hacks should be concrete tasks --Ideasman42 21:56, 21 March 2012 (CET)