Dev:Ref/Release Notes/2.49/Extensions/Python

提供: wiki
移動先: 案内検索

Blender 2.49 Script Changes

New Scripts

2D Cutout Image Importer (image menu)

http://wiki.blender.org/index.php/Extensions:Py/Scripts/Manual/Image/Import_2d_Cutout_Images

Bolt Factory, (wizard menu)

http://wiki.blender.org/index.php/Extensions:Py/Scripts/Manual/Misc/Bolt_Factory

Landscape Generator (A.N.T), (wizard menu)

http://wiki.blender.org/index.php/Extensions:Py/Scripts/Manual/Wizards/ANTLandscape

Copy Active Objects to Other (object menu)

Copies the active object to all other selected objects transformation.

When turning many assets into DupliGroups there was no way to do this other then manually copying the loc/size/rot for each object manually.

Background Job, (script template menu)

This example script shows how you can run blender in background mode, parse arguments from the command line to generate a simple scene and render/save it.

Poly Reduce Selection (Unsubsurf), (mesh menu)

Script written for apricot, poly reduces based on known topologies, keeping edge loops unlike edge collapsing poly reduction. Example http://www.graphicall.org/ftp/ideasman42/unsubsurf.gif

Clean Animation Curves (animation menu)

Utility script for cleaning ipos animation curves of redundant keyframes.


Script Updates

Object, Drop to Ground

Option to orient to face normal (useful for scattering objects over terrain), accounts for normal flipping and can adjust the orientation %.

OBJ Import

3DS Import

[#7789] 3DS Import , Mesh not correct since Blender 2.44

There is a problem importing 3ds files where I cant find a way to check if the transforms are applied to the vertex locations or not. Since 2.44 I made the importer assume they were not since you can manually remove transformations, but not reverse.

Nevertheless most 3ds files have the matrix applied, better not give a bad import by default. Did some research and other 3ds importers (lib3ds for eg), have the same problem and just assume the transformations applied.

VRML/X3D Import

  • Improved compatibility with VRML files
  • Animation Support - currently only loc/scale/rot (scale untested)(does not work at all)
  • PROTO and EXTERNPROTO support - excluding PROTO's that rely on javastript.
  • fix for [#18329] VRML import on indexedfaceset munges some colors (off by one)
  • fix for broken pervertexcolors.
  • fix for a bug where relative Inline URL's that included a path didn't load.
  • Extract strings so they don't get modified for parsing, filename URL's with {} [] dont break importing anymore.
  • Cameras were rotated incorrectly
  • in-line files were not opened with GZip
  • Lists of image URLs now use the first image from the list since there is no support for dynamic switching.
  • use imagemagick to convert GIF's so they load in linux. (could be extended, At least it should not break anything)

DXF Export

  • fix POLYFACE export in dxfLibrary.py
  • fix wrong normals in mirrored objects
  • support for DXF output styles: LAYER,COLOR,LINETYPE
  • 2d-projection mode: support for isometric and perspective cameras, mesh and curve-objects
  • UI: presets for 2d and 3d mode, parameter storing
  • UI: camera selector/manager
  • debug-mode: redirecting 2d-projection output to current scene
  • semi-"hidden-lines" mode: optimized back-faces removal
  • presets for relocation and architectural scaling
  • apply modifiers on exported objects
  • support for dupli-objects (dupliverts, dupligroups, dupliframes etc)
  • optional output in DWG(r12) format (binding to external DXF-DWG-converter)

DXF Import

  • optional read DWG(r12) format (binding to external DXF-DWG-converter)

FBX Export

  • Export hard edge and face info
  • Constant animation interpolation gave choppy animation playback, use linear now.
  • Include the mesh-object into the bind-pose otherwise Maya complains the FBX has errors.
  • Use Edges field rather then 2 vert faces (worked in some apps but crashed maya)
  • Run when python time module is not found.

Reported bugs...

  • [#18040] ...writes incorrect relative paths.
  • [#18142] ...outputs broken vertex colors when using vertex paint
  • [#18650] ...assigning textures to wrong materials.
  • [#18328] ... exporting multi-texture materials properly.
  • [#18702] ...hemi light crashes maya

COLLADA Export

  • Added the feature to export meshes with applied modifiers.
  • Added a few failure messages to hint what is wrong with the model if the export failed.
  • A better export progress feedback.
  • Fixed some bugs which produced an invalid COLLADA document. Especially when skinning / armature was used.

Mesh, RVK1 to RVK2

The script has been modified to use the last management of the modifiers in the python api and corrected too. Now it can copy the mesh object when it is alone and also a shape keys to the second one if needed.


Lightwave Export

  • Export multiple UV layers
  • fix for [#18577] LightWave (.lwo) Exporter Object Names are Incorrect

SVG Support

  • support for patterns
  • reading of the inkscape svg format
  • parsing of the scientific numbers
  • redundant arc data in the same path for only one command "a"
  • blending of curves after several files import and at the end a more correct management of the current point.

(Misc Fixes)

  • [#18772] c3d_import script crashes.
  • [#18388] PLY Import fails if line ending is not \n
  • [#17958] Image, edit externally failed on some paths
  • [#18479] 'Consolidate into one image' does not calculate/use 'pixel margin'
  • [#18407] Trouble w/ Bevel_Center.py, add python encoding info
  • [#11172] md2 export bug(s), export with object transformations applied.
  • [#18611] console.py linewrap working again.
  • Vertex Paint, Self Shadow - didn't update for meshes with modifiers.
  • Mesh, Edges to Curve - was giving all points a tilt of 1.0
  • Vertex Color from Material, script was adding UV's rather then vertex colors.
  • UV Calc Click-Project and Follow Active Quads add UV's if they didn't exist.
  • Added support for image alpha.

Python API

  • Mathutils optional euler_compat argument to matrix.toEuler(eul) and quat.toEuler(eul) so when getting the euler rotations from a list of matrices the animation curve will be continues. Also added euler.makeCompatible(euler).
  • Vector swizzle support
    vec.xxy, vec.zyx and any other combination of axies are now supported, returning a new vector.
  • Geometry.BezierInterp(vec_knot_1, vec_handle_1, vec_handle_2, vec_knot_2, resolution) can use 2D-4D vectors
  • Read/write access to scene world gravity.