This made nested loops with the same python object mess up.
eg-
faces= me.faces
for f1 in faces:
for f2 in faces:
print f1.index,f2.index
This didnt work, fixed by initializing the iter value at -1, so any greater value will create a new BPyObject with its own iter value.
once iteration is finished, its set back to -1.
Also made face and edges iter value a char instead of an int to save some memory.
Cutting through vertices and vertex snap was only supported in
'knife exact' mode. Now works for 'Knife Midpoint' as well.
(Multicut and vertex cutting would require N-Gons)
When using a particle system in a dupli-group, and the group is in the
current scene but not visible, the particles are calculated on wrong
position. This is the recurring trouble with particle calculating... which
doesn't do despgraph stuff.
This commit fixes the error, but it will still display particles *once*
(one draw) on the wrong location. That's a lag in the system I cannot
solve quickly...
Note that this system does work OK when you put the group in another Scene,
or linked from another file. That's what it was coded for...
Patch for this bug provided by Johannes Meng.
Here's his log:
When using the mouse wheel on an inverted 3d view (that is back, left or
bottom) the name display changed to front (right, top). Also when using
mouse wheel with modifier keys (strg/shift) on a normal view, it changed
the display to the inverted variant.
What I did was check the type of event that is handeled before
setting/unsetting V3D_OPP_DIRECTION_NAME. I simply added two if statements
and expanded the comment by a line explaining it a bit.
- Using NLA stride didn't work at all for Motion Blur render... appeared to
be a typo even, using 'ctime' instead of 'stime'. :)
- When entering editmode on a striding Armature, the position of the
armature was incorrect (missing depsgraph refresh)
- changes in constraint.c is just a small cleanup, unused 'ctime' arg.
exactly the same as mesh_create_derived_render(ob) except it uses the view modifier settings.
Added an optional arg to getFromObject to 'render' so you can choose to get the mesh displayed in the 3d view or generate one with render settings.
Solved bug 4612 getFromObject now works with soft body meshes (error was caused by getting the derived mesh from a copy of the object)
removed workaround for softbody bug in object_apply_def.py
applied patch #4998 (array count), as well as adding other array settings, updated documentation as well.
added EXPP_setVec3Clamped() as a way to set a vector from getset attrs (used with array offset and scale)
Small tweak in depsgraph usage of transform: to make sure recalc tags get
set in invisible objects (in other layers) as well. That way switching
layers won't give errors with child-objects not being in the correct place.
Proportional editing sometimes failed to work by a missing initialization.
It was caused by the combination of having manipulators on, and saving the
file with an active Armature Object in PoseMode.
- code for adding 'c:\' on Windows missed fact that BLI_convertstringcode is also used for databrowse.
- now only replacing when path starts with '/', which isn't the case with databrowse
but for images user counts work differently.
(just noticed this is what blender does so Image.New() now does the same)
Many of the sys functions had maximum path thengths that were too short.
char path[FILE_MAXFILE];
rather then
char path[FILE_MAXDIR + FILE_MAXFILE];
* removed get/set in favor of setsetattrs
* added an element iterator to the metaball data type.
* now accepts vectors and quat for location dimensions and rotation.
and other small changes.
Docs updated shortly at.
http://members.iinet.net.au/~cpbarton/ideasman/BPY_API/Metaball-module.html
other changes
typo in image.c
metaballs constants in buttons_editing
Added: Scale node in Compositor.
- Only works for RGBA buffers now
- I have added an option "Relative" or "Absolute" scale. So you can also
define actual pixels for scale. Values for scale are reset when you
switch, to prevent too weird situations.
- Scaling wasn't foreseen to work with the preview-panel in UV window, this
preview cropping only happens for Image and RenderResult nodes... actually
should be done for the scale too. I wait with t hat though... this preview
method isn't very advanced yet.
- The pass_on_compbuf() here crashed in tests with preview panel, that's
weak code... I have to recode that. For time being I use the
dupalloc_compbuf to have it stable.
- Panel with Shape keys now shows for lattice too
- Supports VGroup weight value for Shapes
NOTE: this doesn't support Shape editing with linked duplicates. The
modifier system for Lattices (as for Curve/Surface) has no local Object
storage, so linked duplicates will all show identical.
New option: "Select Collumn" in Action editor. This selects all 'keys' on
the same time, based on already existing selection. Works for Actions as
well as Shape Keys. Hotkey K.
aside from avoiding unneeded memory alloc/dealloc and bing faster this works around a recently discovered bug with the user count of copied Mesh keys... causing getFromObejct leak memory when used with mesh keys.
It also fixes a bug where getFromObejct with fluid-sim would corrupt memory.
When using the "Load without UI" option, and having a textfile open in the
Text Editor with syntax coloring, Blender crashed. Just a missing NULL
check here.
Bugfix for #4971: Scene.unlink() was incorrectly decrementing the datablock
user count whenever an object was removed from a scene, instead of only when
the object's count reached 0. The Python code was modified to use the
existing free_and_unlink_base() function (with some modifications to allow
specifying a scene). Also fixed a bug with the undocumented return codes
from the method; it now returns True if the object was found in the scene.
Works like vertex-parent for Mesh and Curve/Surface. Select one or three
vertices in edit mode, and use CTRL+Select to select another object.
Then press CTRL+P.
indices that are within the passed group. If one of the indices was not
in the group, it returned an exception, as opposed to just removing it from
the group as the documentation states.
Armature and Hook modifiers, and the flag field for the Mirror modifier. These
modifiers should all be copied correctly now.
This fix also means that converting modifiers to mesh with Alt-C now works
correctly (the convertmenu function copies the modifers before applying them,
so it wasn't always giving correct results for the above modifiers before).
The convertmenu function has also been changed to use DM_to_mesh instead of
converting to DispListMesh and using displistmesh_to_mesh, which means that
extra mesh data such as dverts is preserved.