Scripts

A new group was created to take care of bundled scripts management and discussions. Resources include mailing lists, a cvs repository and a section at Blender's wiki. The goal from now on is to make sure included scripts reach the quality and integration expected for any Blender functionality.

 

For this release only two scripts were added to the already bundled ones:

  • Scripts Help Browser (Help menu): shows help information about registered scripts. This is a very recent addition, after 2.35 script authors will have time to update their scripts with more information.
  • Save Current Theme (Export menu): save the current theme as a Blender Python script.

Internal Changes

BPython is going through general clean-up and internal restructuring of the code. Stephen Swaney has been very active in this area, besides having fixed many memory leaks and other bugs.

Additions

  • New Modules: Sound, Window.Theme.
  • Script Links: new scene OnSave event.
  • Misc: now all command line arguments passed to Blender are available with sys.argv.
  • Blender: new options to Blender.Get(): 'homedir', 'scriptsdir', 'uscriptsdir'.
  • BGL: 6 GLU functions.
  • Effect: made Effect.Get('my_obj') return list with all my_obj's effects -- this breaks compatibility with its old behavior, but is in accordance with the rest of the API and is more useful.
  • Image: added image.glLoad() and image.glFree().
  • Material: access to mirror and transparency.
  • Object: fixed obj.getMatrix(): defaults to world space again, added old pre-2.34 behavior as option: 'old_worldspace'.
  • Texture: access to Musgrave, Voronoi, Distorted Noise tex types.
  • Window: new GetPerspMatrix() function.
  • World: world.get/setCurrent() method.

Bug Fixes

  • #1275: missing scene Redraw scriptlinks
  • #1509: crash adding text via bpython when empty text window was visible
  • #1539: Window.RedrawAll() crashing Blender if an empty space script was visible while running a gui-less script
  • #1568: crash with Effect.Get()
  • #1607: missing 'area' and 'photon' lamp types
  • #1624: could not change layer of some objects
  • #1631: memory leak in matrix code (also fixed leaks in Object.GetSelected() and nmesh vertices)
  • #1633: memory leak in vector (and other math types) objects
  • #1642: leak in matrix multiplication
  • #1689: events were not being passed to windows with id's below the current one
  • #1742: unstable scripts behavior in UV/Image window, actually global dicionaries getting lost on a second call to some scripts
  • NMesh_hasFaceUV was returning true for false and vice-versa
  • Possible crashes in NMesh / Material related to meshes without materials

Contributors

Besides the usual bpython team members, many other programmers contribute with patches, bug reports, suggestions and feedback via forums and mailing lists. We apologize for any omissions, please feel free to correct us:

Stephen Swaney, Chris Keith, Joilnen B. Leite, Joseph Gilbert, Jacques Guignot, Michel Selten, Willian Padovani Germano, Chris Want, Campbell Barton, Joseph Eagar, Tom Musgrove, Michael Reimpell, Satish Goda, Nathan Letwory, Alexander Szakaly, Jonas Petersen, Stani Michiels, Yann Vernier, Jean-Michel Soler, Alfredo de Greef, Matt Ebb, Stefan Gartner.