The problem was caused by a stroke with only one vertex. Such a stroke was
generated when for some unknown reason a chained curve consisted of only
two vertices such that their 3D positions were exactly or almost the same.
* Fix for the Parameter Editor mode that failed when scene render layers
and/or linesets contain a single quote in their names.
- loop over sequencer plugin and texture voxel paths.
- fix leak in python bpy.utils.blend_path() and use PyUnicode_DecodeFSDefault() to ensure correct paths with different encodings.
- operators to make paths absolute & relative now redraw the view.
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.
This should help performance in python and animation editors, by making
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
this is needed because some UTF8 names didnt resolve on windows when using surrogateescape'd strings.
This meant you couldn't export to models some directories on windows.
* Old boids didn't have all of the necessary data for the new system.
* Changed the particles code so that a check for all necessary data is always done before starting actual dynamics calculations.
Issue with Library linking: if you already have libraries linked in,
and you attempt to link more data, using internally already linked
stuff (like a group with group links) the linkage would fail. It did
resolve on save-load though.
There's a long commented history in this code explaining it. I found
out it was because of manual step-by-step linking versus normal file
reads. In the first case, the "lib pointer map" was missing references.
Python Operator "Delete Edge Loop" (which keeps mesh connected)
changed selection if sliding operator failed. Simply added a
check for return value. Gosh, that Python code is not bad ;)
Crash when deleting Shapekeys, while Graph or Dopesheet was visible.
Caused by RNA collection lookup, which is not checking against index
out of range errors.
Brecht might have to give blessings for this though :)
Texture face options like "two side" were invisible, unless the
top bar "render engine" was set to Game Engine.
This is confusing, since 3d window does draw these options well.
Added back panel to show default, but with a label warning that
the options are not supported for render.
This is ifdef'd and may be disabled later on, or only enabled in debug mode.
This applies to setting any RNA value that has an ID and is not a screen or window-manager datablock.
Some addons break this rule and need fixing but from my tests blender UI scripts are ok.
* Made changes to the Controller so that dynamically allocated
memory areas (e.g. imported mesh data, winged edges, and a view map)
are released soon after they become unnecessary.
* Added a new feature edge selection criterion based on image border.
When the "Selection by Image Border" option is enabled, feature edges
are selected only if they are within the border of the image being
rendered. The border is defined either by the frame size or a border
region (specified by the Shift-B key in a 3D View window). When large
scenes are rendered, this clipping by the image border leads to less
memory consumption.
* Enabled the "Silhouette", "Border", and "Crease" edge types of
the Selection by Edge Types option by default.
When no edge types are specified, all feature edges including "Ridge",
"Valley" and "Suggestive Contour" are detected at the cost of extra
memory consumption. Disabling these three edge types and enabling
some other edge type leads to less memory consumption. This change
is intended to help new Freestyle users by providing a typical, low
memory consumption default setting.
* Slightly rearranged the UI controls for feature edge selection.
The old blocking "time cursor" wasn't working anymore.
Commit 32798 overlooked that the initialization was
needed.
Now bakes show it again. Note to self: it seems to flash
slightly (like 2.49), need to check on it one day.
Material Node shaders: displaying GLSL + rendering previews crashed.
Reason was non-safe threaded access to material nodes. Now, on a preview
render, a full copy of Material is being made.
* Rendering a scene strip updated all animation data to it's frame, so fcurves were left with the wrong value.
* Now the animation data is recalculated to original frame after rendering each scene strip.