Baked textures not updating in the 3D view. This bug was a side
effect of the image not being marked as loaded after changing
parameters (uv test grid, size) of a generated type image.
Sculpt Multires render: the Orco table should be made based on 'render'
level, not on '3d view' level. Now, how this could have worked even...
Nick, could you check?
When rotating bones around the 3d-cursor in posemode with a rotated
armature, rotation was around strange points other than the cursor.
This bug has been around for quite a few releases now. Somehow, the
maths used to convert the world/global space locations to local locations
only worked on things in editmode, but not bones.
buffer if it was an RGBA type. This caused buffer corruption in the original buffer
which would be colorspace converted again (for each render). Corrected by duplicating
buffer.
This tweaks the dependency rules for Scenes/Objects a bit. Here is the
rule:
- Each Scene has own dependency graph, and only solves dependencies for
objects in the scene
- However, when using multiple linked Scene-sets, the *current* scene is
allowed to have dependencies to objects in a 'set'.
This works by first calculating the sets, then the current scene.
Example: the current scene can have lights with a track/location
constraint to a character in a set.
* Added an "Override Image" button to the UVProject modifier; this overrides
faces' currently assigned image with the one given in the modifier panel.
This provides some of the functionality previously provided by the "Add UVs"
button - you still need to add a UV layer manually, but you only need to
change the image in one place.
* Note that the "Override Image" option uses the bit position previously used
by the "Add UVs" option, so old files which had "Add UVs" enabled will now
have "Override Image" enabled.
* Removed the "Add UVs" option from the UVProject modifier
* Added a UV layer menu to the UVProject modifier
* Refactored the Displace modifier UV layer menu code to allow the UVProject
modifier to share it
* Added two CustomData functions to facilitate getting layers by name
Fixes bug #5858 (Render to dv skips frames. OSX and Linux PPC).
Caused by stupid ffmpeg dv multiplexer. PAL-fix is easy, NTSC needs varying
buffer sizes...
When weights in Meshes are extremely small (< 0.01) normalizing them
can give overflows, thanks to float precision limit.
This is still unsolved, but for now the limit had to be set smaller...
(reason is that Plumiferos uses mixed lattice and vertex-group deform)
Also: running Blender in debug (-d) will print subversion now.
If the "UV" texture coordinate option is selected while no UV layers exist,
the UV layer name in the modifier is blank. This is not a problem while no UV
layers exist, but if a UV layer is added the modifier code attempts to use
UV coordinates without handling the missing layer name correctly, leading to a
segfault. This only occurs when the modifier stack is recalculated before a
modifier UI redraw, as the UI redraw updates the layer name.
This fix handles a missing UV layer name by setting it to the active UV layer.
This commit fixes displace modifier to propery support arbitrary uv
layers. This seemed like a fairly big usability bug,
as displace modifiers would use the active UV layer (and thus could change when
you changed the active layer). The modifier UI code now uses a menu for browsing
the uv layers, however only the uv layer name is actually stored, so that
adding/deleting layers won't mess up displace modifiers.
Whenever a displace modifier has an invalid UV name (for whatever reason) the
UV name is set to the active layer. This is checked both in the UI code and
in the modifier exec code, so all bases are covered. For deleting a layer, this
required upgrading the layer delete code in the UI to properly preserve the
active layer, to prevent unwanted behaviour. I hope this is an ok solution.
Brecht, Ben you might want to look over and make sure I didn't break anything. I don't
think I did, I tested as thouroughly as I could.
Composite: some cases gave memory errors (not freed mem).
The code that tried to be smart in finding nodes to skip, caused that
stack buffers were not freed propertly.
from translate node. Once again courtesy of joeedh (Joe Eagar). Should be
noted that there are other nodes which seem not to respect these offsets
as well. Will investigate further.
Fixed bug #5799, Multires mesh modifications get reset by rendering
This bug can cause some nasty data loss (was introduces with my commit for using orco with multires.) Fixed by making sure to do multires_update_levels before applying modifiers.
have been in this particular case anyway), the blur radius will automatically
be limited to half the width or height of the image.
Nothing to do with this bug, but also now skips image region outside
borders when border rendering is enabled.
Crash entering faceselect mode in shaded mode.
The cause here is the new system that only preserves data through the
modifier stack as needed. The DerivedMesh and shaded colors could get
freed while still being used elsewhere.
Fixed bug #5756, Rendering artifacts when MRM is not set to maximum
Several changes were made:
* Added function multires_level_n to get the nth level from a multires mesh
* Removed the changes I made some time ago to init_render_mesh for multires meshes. Previously it was making a full copy of the mesh object in order to be able to apply deformations to the Pin level and propagate them to the Render level.
* Added two functions to DerivedMesh.c, multires_render_pin and multires_render_final. These two functions work together in the mesh_create_derived_*_render functions to apply all modifiers to the Pin level, then create the DerivedMesh from the Render level, and lastly restore the mesh to its original (undeformed) state.
* Added a check in multires_del_lower and multires_del_higher to ensure that level indices are properly clipped to the actual range of available levels.
Composite: when using multiple scene render-nodes, and one of these
scenes got re-rendered (by making scene active temporary), the composite
cache should free the used buffers.
Now, on each render, all scenes in a Blender project are being checked.
Commit of patch #5385, to make forward cycling more
user-controllable. Previously it only worked on one axis,
which was auto-detected from movement. This allows forward
cycling to work in more situations, such as stair
stepping.
Order of freeing of Blender database is important, but the past year(s)
new database entries were added in wrong places, so freeing could go in
wrong order. In this case it was Groups being freed before Objects. But
there are more errors...
It only shows really in Windows, since it's the OS that is sensitive for
writing data in freed memory. For other OSes it doesn't make Blender more
stable, only mem-frees happened, no mem-allocs.
Compositing, depenency fix, so nodes execute only when really changed.
(Error was in nodes that don't get buffers as input, but only values. These
nodes flooded "execute" events through the node tree.)
Moved function used for 'Visual' keyframing, to live with the rest of the
API calls I added for Pose-Mode bone snapping. Now, it is in a more
'releasable' state.