Nurb's material number used to be clamped to [0;-1] for case object hasn't got
materials. Forced to keep material number on zero if object hasn't got any materials.
Buttons for editing RNA paths/array index for F-Curves that aren't working are now actually functional. This means that when invalid paths are present, they can be manually fixed up.
* When removing a modifier that effects the depsgraph the DAG_scene_sort has to be done after the update call so that dynamic systems can clear the collision surface properly.
- set_frame() --> frame_set()
- set_context_pointer() --> context_pointer_set()
material adding works for curves and metaballs, new function to remove materials.
materials.link() didnt well fit how this is used elsewhere
- order matters
- it can be linked more than once.
- remove(material), isnt that useful since you need to manage indicies.
... use list style functions instead. materials.append(mat) / materials.pop(index)
* Although not strictly a bug it is the expected behavior and won't mess anything else up.
* Note: the lattice is applied to the actual hair keys instead of the calculated strands so the applied result will differ a bit from the original.
Reported by Reiner Prokein
After aligning active camera toggling between last view and camera worked wrong in such a way that the view previous to the one to which was aligned was rotated to. In some cases rotation to last view seemed incomplete and ortho was used. Thanks to M.G. Kishalmi (lmg) for showing through a Skype screen share.
This is now fixed by copying the current view info before active camera is aligned.
http://www.vrchannel.de/blender/cylinder_rename.png
Mesh Tube > Mesh Cylinder
NURBS Tube > NURBS Cylinder
Metaball Cylinder > Metaball Capsule
I know that naming is something not everyone agrees on, but these terms look geometrically correct.
- function renames, move WM functions into collections wm.add_keymap() --> wm.keymaps.new()
note: new is used for named items in a collection, which return the result.
- Action.get_frame_range() is now a readonly property 'frame_range', floats rather then ints.
- OBJ import/export now work with non utf8 paths. (all exporters and importers need changes like this)
- strip non utf8 chars from new ID blocks (also applies to renaming)
- set the file rename button to allow non-utf8 chars.
* Added ND_FRAME_RANGE to the header listener, changing frame range in Properties Window didn't update it in the timeline, reported by Hardworker in IRC. Thanks!
* Main Area Listener doesn't listen to all NC_SCENE Notifiers now, only selected ND Notifiers, like the header does. This is more efficient. If there is a reason to let it listen to all NC_SCENE notifiers, please tell me. :)
- user input gets non utf8 chars stripped all text input other then file paths.
- python has the same limitations, it will raise an error on non utf8 strings except for paths use unicode escape literals so its possible to deal with saving to these file paths from python.
- new string functions
BLI_utf8_invalid_byte(str, len) returns the first invalid utf8 byte or -1 on on success.
BLI_utf8_invalid_strip(str, len) strips non utf-8 chars.
This happend because of incorrect order of calculating used layer mask and drawing
header. Added layer content changed notifier to recalc used layers when needed.
This also fixes header redrawing in "Move to layer" operator and when user
changes Object.layers in properties view
from Alexander Kuznetsov (alexk)
Authors comments
---
- Rename textfield sometimes exceeded scroll bars' and window's borders.
- Restrict buttons were over not under the rename field.
- Restrict lines didn't go all the way.
- Because of 2.4x interface system, in 2.5 rows were shifted 2 pixels up.
- In Datablocks and User Preferences view bottom line was down by one.
- Rows in Datablocks, User Preferences and Keymap view didn't extend all the way but check boxes and text fields did. It was visible while scrolling horizontally or at right bottom corner.
- Vertical lines in Datablocks and User Preferences didn't stop at the last horizontal line after last row.
This patch fixes those problems.
P.S. I tested the vertical offset with value of 40 so it works perfectly.
obj.add_vertex_group() --> obj.vertex_groups.new()
obj.add_vertex_to_group() --> obj.vertex_groups.assign()
note: obj.vertex_groups.assign() will be very slow, need to have this take a list rather then 1 vertex at a time.