Commit Graph

49420 Commits

Author SHA1 Message Date
Ton Roosendaal
384025f1a0 Bugfix #25636
On using loop-selects, the active vertex got cleared, it could still
simply indicate one of the vertices of indicated edge to become active.
That keeps the Ui for vertex-groups drawing correct, for example.

Also made loop-ring select store active edge for tools, like the loop-select.
2011-01-15 14:07:11 +00:00
Janne Karhu
4cb79661eb Fix for [#25633] Particles display switching causes crash when Velocity disp. ON
* Particle draw data wasn't freed properly in some cases.
* Velocity + circle draw type also crashed due to missing null pointer check.
2011-01-15 12:29:22 +00:00
Janne Karhu
7297169a74 Fix for [#25637] curveguide forcefield(Kink: Braid) + particlesystem cause crash by Null Pointer in some cases
* Missing null pointer check.
2011-01-15 12:00:15 +00:00
Campbell Barton
69c582a3d4 error in last commit, also skip getting vars for wm_operator_reports() when there are no reports. 2011-01-14 21:45:49 +00:00
Campbell Barton
eac31a2ece remove unused vars & avoid some clang warnings. 2011-01-14 21:06:28 +00:00
Campbell Barton
94b9d2da54 checking wrong null pointer in edit_modifier_poll_generic(). 2011-01-14 19:35:59 +00:00
Campbell Barton
255a1e0ed7 apply fix from r34275 to BLI_dynstr_appendf(), dont chop off last character for >256 length strings. 2011-01-14 19:15:06 +00:00
Campbell Barton
d340fb94a8 new startup.blend with official io addons enabled,
also include STL since this is an important format which we can support officially.
2011-01-14 17:41:33 +00:00
Sergey Sharybin
439140d6ae Todo item #19816: Wave modifier does not affect Curve Paths
Added new option for applyong modifiers on splines' points. This moves
tesselation point and path would be affected by modifiers which are applied on
splines' points.
2011-01-14 16:57:53 +00:00
Joshua Leung
62eb77c119 Transform tweak:
2D Editors using the standard translation transform tool no longer
have their values converted. For instance, it simply didn't make much
sense in such editors to be showing frame numbers/timing in terms of
meters/inches.
2011-01-14 06:46:28 +00:00
Joshua Leung
af4bc28c44 Bugfix [#25617] HOME Key in fcurve editor doesn't center properly
* When euler-rotation F-Curves had a single keyframe only, the view
would be artifically extended to fill up to 57 (this comes from the
radians to degrees calculations) due to a combination of the bounds-
finding function enforcing a minimum separation of 1 unit between
min/max. This has now been moved to the operator-level where it gets
applied AFTER these conversions have taken effect

* F-Curves with samples only (i.e. baked F-Curves) would be ignored by
these operators. Was caused by using a poll calback that only
considered whether there were keyframes. Hopefully this is sufficient;
otherwise a hybrid poll method will be needed.
2011-01-14 05:19:04 +00:00
Joshua Leung
423fbcfa5c Driver creation hack:
Drivers created from the Properties Editor for Materials and Textures
will now be created on Object-level instead of on their owner
Material/Texture as for their keyframes.

The intention of this hack is to allow users to be able to easily set
up drivers for materials and textures. Without this hack, users would
have had to do this manually via the Datablocks editor (I've described
this method a few times in detail, though this still attracts
complaints), as the way the depsgraph works does not allow ID blocks
other than Objects and directly-linked Object data to be driven. As a
result, although this hack can be done for these two cases, there are
no workarounds possible for Scene and Scene-linked settings.

There are 2 issues that will be noticed with this approach:
1) There may be confusion over why the drivers are found under Object
level and not Material/Texture level.
2) Driver status will not be shown in the buttons, leading to attempts
to try to keyframe the properties directly later and subsequent
confusion when finding that that won't work.

However, these are the sacrifices we'll need to make to get easy-setup
working in the meantime until the proper fixes can be done.
2011-01-14 02:06:35 +00:00
Joshua Leung
619c287851 Reverting r33930 and r34202, which were related to bugs #21825 and
#25554. As found by Daniel Lara (Pepeland) in #25554, the original
problems in #21825 all stemmed from the ChildOf constraint there
having an incorrect inverse set, which was altering the final results.

Now Auto-IK works nicely for old rigs again (i.e. FK arms on BBB rigs)
2011-01-13 23:53:14 +00:00
Joshua Leung
932f3dab2a Bugfix [#25623] Intensity for Voxel data partially linked with
brightness

Committing fix on behalf of Matt. VoxelData/PointDensity RNA-structs
had malformed paths
2011-01-13 23:16:10 +00:00
Joshua Leung
6c3d7c7f12 Bugfix [#25620] Grease Pencil: crash when using Ctrl+Z while drawing
Crazy users! Who on earth would try undoing in the middle of an action
(here the crash occurred while a mouse button was still held)?!

(At least it wouldn't have been possible for those using the DKEY +
mousedrag method of invoking strokes though...)
2011-01-13 22:59:48 +00:00
Campbell Barton
c8df192de6 misc python api improvements
- rna array parsing was using PySequence_Size() in a loop, this can  be slow to run so only call once.
- assigning a single value to a multi-dimensional array was missing type check.
- improve exception messages for rna array type errors.
- simplify vector slice assignment by using mathutils_array_parse(...)
2011-01-13 21:44:18 +00:00
Sergey Sharybin
5bdb576d3d Fix #25609: Text Editor: Ctrl+Z error with Word Wrap
Not updated line number was passing to undo stack.
2011-01-13 20:16:36 +00:00
Campbell Barton
4cc4a73a9e feature request from colin levy, camera lens stamp. 2011-01-13 19:16:35 +00:00
Ton Roosendaal
1939ad3f94 Bugfix #25614
Reporter saw weird fgons and edge creases on spin-mesh.

Appeared that the edge-flag copying code happened after
freeing edges. Already since May 2007 or so... weird!

Also in this commit a couple of simple cleanups.
2011-01-13 19:01:27 +00:00
Campbell Barton
665648a40b bugfix [#25578] assigning to multi-dimensional arrays fails 2011-01-13 16:00:14 +00:00
Campbell Barton
e2054b291c bugfix [#25588] Not work fcurve.keyframe_points.add
The problem was flag-enums were being treated as regular enums, a default value of 0 was using the first enum item, whereas with flag enums we want to be able to use 0 as a default value to specify all flags are off.
2011-01-13 14:29:57 +00:00
Campbell Barton
d4fa68e448 speedup fluid file reading, seek past arrays rather then reading them & use fewer function calls to gzread().
also added missing MEM_freeN(), though it would only leak in exceptional cases.
2011-01-13 11:06:12 +00:00
Campbell Barton
d2e6ea65c3 revert r34284, this fix was incorrect. 2011-01-13 10:14:03 +00:00
Janne Karhu
9024b6789e Possible fix for [#24924] crash-Fluids
* In some rare cases gzread has problems with the fluid files. This could be minor file corruption or some strange thread issue, but checking the amount of read bytes always after read seems to give a graceful way out.
2011-01-13 10:10:13 +00:00
Campbell Barton
f373dd6a50 small feature for file manager, pasting a full file path into the directory field will split the dir/file.
nice when you have a list of file paths in a terminal/editor and want to open one.
2011-01-13 07:25:18 +00:00
Joshua Leung
4b922c0bf3 Bugfix [#25597] Grease Pencil crash when undoing during a Sketching
Session

As the key combination for undo was unhandled by Grease Pencil
operator and allowed to execute, some of the lingering Grease Pencil
data would get corrupted by undo as some flags may still have been
set.

This commit attempts to fix.workaround this problem by catching undo
events, using the internal "delete last stroke" functionality to
emulate undo-like behaviour as expected but without the associated
risks. The underlying functionality used was already part of the
original 2.4 implementation, but was exposed via the GUI instead there
where it was less useful.

---

Other tweaks related to Grease Pencil:
1) Spacebar can be used to end Sketching Sessions too now
2) Grease Pencil animation editor now displays GP datablocks in light
blue (i.e. "sub-id") colours as per dopesheet instead of them being
presented like groups. This better reflects their true nature.
2011-01-13 06:14:14 +00:00
Campbell Barton
6a9d93a339 fix for NULL missing pointer check, reported on IRC by admix.
also rename BVH class for consistency.
2011-01-13 05:05:10 +00:00
Campbell Barton
8227b3d463 remove/comment unused vars
also removed unnecessary NULL checks (where the pointer was used later without checking).
2011-01-13 04:53:55 +00:00
Nicholas Bishop
57ce3072d1 Sculpt:
Small cleanup, de-duplicated the code for combining proxies
2011-01-13 01:02:55 +00:00
Ton Roosendaal
604d029ddf Bugfix #25570
The tool-redo depends on a working undo system, so it can rewind
a step and then redo operator with new settings. When a user
disables undo, this won't work.

Now the properties for redo operator (toolbar, F6) will grey out
when a redo isn't possible.
2011-01-12 18:00:23 +00:00
Campbell Barton
505e2d882a fix [#25590] Export to X3D of Text object does not assign material to object in X3D file. 2011-01-12 17:57:00 +00:00
Campbell Barton
792f3b11f9 bugfix [#24774] Lattice modifier+Dupligroup+Texture solid=weird result
new 2.5x code was not passing group recalc flags onto objects within them.
2011-01-12 16:53:27 +00:00
Campbell Barton
0384be9644 bugfix [#25595] Adding Torus when in edit mode strange behavior.
also added Align View option and made local view cursor work.
2011-01-12 15:45:00 +00:00
Campbell Barton
70fefd81ea fix [#25600] Cannot add meta-object when in edit-mode 2011-01-12 14:08:11 +00:00
Janne Karhu
4e15c169c6 Fix for [#25572] crash when changing vertex group density in particle mode
* Hair was freed & redone on changes, but particle mode data wasn't updated.
2011-01-12 10:01:33 +00:00
Nathan Letwory
4043830cf8 fix compile error for MSVC; no va_copy here. Patch pasted to me by Keith Boshoff 2011-01-12 10:00:47 +00:00
Campbell Barton
eba91f8e81 modification to Joshua's commit r34270,
replace NlaTrack.active() function with a property, since this is used everywhere else.
2011-01-12 07:16:24 +00:00
Campbell Barton
baaaceb3eb comment array/collection skip(), since there was some confusion in this area which caused bugs on index lookups. 2011-01-12 06:16:15 +00:00
Campbell Barton
9a70c609e0 BLI_dynstr_vappendf() was cutting off the last character when allocating strings. 2011-01-12 06:01:07 +00:00
Campbell Barton
e2e5361eb2 BLI_dynstr_vappendf() was crashing with strings above 256 chars, this happens with some long reports.
Problem was using va_list value more then once, fix by using va_copy().

Note, va_copy() is c99 spec but only alternative I can see is to turn BLI_dynstr_vappendf() into a macro which calls va_start/end inline.
2011-01-12 05:49:33 +00:00
Campbell Barton
63018144ba remove redundant assignments & unused vars.
also minor functional changes
- OBJECT_OT_make_links_data() type property is now assigned to the operator property (so popup menu can find it)
- removing BG image now returns cancelled if no image is removed.
2011-01-12 03:41:12 +00:00
Joshua Leung
21fc4cabaf Patch [#25409] Changes to panels header "open/close" and "drag" zones
Submitted by: Peter Tarasenko (pit)

This patch switches the screen real-estate given to the "open/close"
and "drag" zones for panels.
- Now, the entire header is used for resizing (open/close) panels
instead of just the triangle widget being used for this. This makes it
a larger target for clicking on, making it easier to do so (Fitt's Law
in action!)
- Dragging panels now is relegated to the "grabber" zone on the top-
right corner only now. This reflects the lesser importance of panel
reordering in the panel designs now over being able to open/close
them.
2011-01-12 02:15:38 +00:00
Joshua Leung
bbdf47aa0b Patch [#24808] B-Bone display size
Submitted by Dan Eicher (dna)

Adds the ability to resize b-bones (ctrl+alt+S) using the python api

Bone.bbone_x
Bone.bbone_z
2011-01-12 01:36:12 +00:00
Joshua Leung
610a759ecc Patch [#24763] NLA Track & Strip methods
Submitted by: Dan Eicher (dna)

<quote>
Adds:

AnimData.nla_tracks.new(prev)
* (optional) prev -- add new track after this track

AnimData.nla_tracks.remove(track)

AnimData.nla_tracks.active(track)
* (optional) track -- track to set active
* returns active track

NlaTrack.strips.new(name, start, action)
NOTE: fails if the strip can't fit in the track as opposed to the
operator which will create a new track and add the strip to that.
* name -- name for new strip
* start -- start frame of new strip
* action -- action to assign to strip

NlaTrack.strips.remove(strip)
</quote>

---

I've resolved the issue (noted in the original patch) regarding the
validation of the created strip by creating and using a "dummy
AnimData" block to solve the missing dependencies.
2011-01-12 01:17:13 +00:00
Joshua Leung
144fb8ed1f "Pointer" properties can now be reset to some kind of "default" value
when using the Numpad0 feature to reset properties to their default
values.

While this implementation here is not a full/proper implementation, as
you cannot truly specify a default value for some pointers that may
require something other than NULL (i.e. nothing), this should be good
enough for the vast majority of (editable) cases which are fine if set
to NULL.

This is most noticeable with the Active Keying Set field in the
TimeLine header, where it's now possible to simply use Numpad0 to
clear it instead of using a confusing click+backspace+enter dance to
do the same thing.
2011-01-11 22:32:18 +00:00
Sergey Sharybin
37b903e32c Fix #25594: Adding mesh while in edit mode with multires - crash.
That primitives, which used ri crash blender, flips normals just after creation
and this normals flipping calls layers interpolation, but MDISPS layer
contains no data still.

Just added checking to layerInterp_mdisps.
2011-01-11 22:06:44 +00:00
Joshua Leung
0a535feef6 More missing descriptions for operators 2011-01-11 21:46:11 +00:00
Joshua Leung
f5929ced95 Gave all armature operators descriptions (for tooltips and API
reference docs)
2011-01-11 21:37:23 +00:00
Joshua Leung
19c02ae981 Added operator to show all armature layers (similar to the 3D View
"Show All Layers"). This has been mapped to Ctrl-Accentkey

If necessary, you can alter your keymaps so that this operator is
invoked with its "all" property disabled. This will only toggle the
first row (first 16) layers, which is useful in most rigs for only
enabling all the layers with rig controls and not showing the layers
with rig mechanics.
2011-01-11 21:12:48 +00:00
Ton Roosendaal
f7611b0fd3 Bugfix #25580
Raytracing didn't show soft shadow in reflections, nor did it do any
derivative even. Added a basic version for it in raytracer now, still
needs improvement on heavily curved surfaces. But it's better!

Examples:

Glass sphere, mirror cube and sphere, look how it ignores bump and shadow
http://www.blender.org/bf/derivative256.png

in svn now:
http://www.blender.org/bf/derivative-svn.png
2011-01-11 18:40:44 +00:00