Commit Graph

33928 Commits

Author SHA1 Message Date
Keir Mierle
d00bb6dd56 Add a toggle button to display motion tracker previews in grayscale. 2011-12-04 12:58:31 +00:00
Sergey Sharybin
4e0b4de0bf Merging r42350 through r42393 from trunk into soc-2011-tomato 2011-12-04 12:32:26 +00:00
Sergey Sharybin
bb81c03e39 Revert "Fix a segfault in the tracker caused by attempting a one-frame track after the active tracker has become disabled."
BKE_tracking_next shouldn't be called if there's nothing to track.
Fixed in trunk, would be fixed here after upcoming merge.
2011-12-04 12:06:01 +00:00
Sergey Sharybin
458ecaebf4 Do not clamp search size when adding new track with non-klt tracker set 2011-12-04 11:57:23 +00:00
Sergey Sharybin
bd9583a1d4 Fix crash when trying to track disabled track.
This is possible fixes #29498: Seg fault on trying to track byond clip length
2011-12-04 10:57:36 +00:00
Thomas Dinges
12326ac6c5 CUDA
* Added CUDA Binaries to Windows scons config files, disabled by default. 
Also the path to nvcc is commented out, best to set this in the user config, as it varies on each system probably.
2011-12-04 10:45:25 +00:00
Campbell Barton
4c93e0ada3 include mathutils.noise in sphinx docs 2011-12-04 06:55:32 +00:00
Campbell Barton
cbd5b492b1 remove use of deprecated struct members
- editmesh smooth & subdivide were using old mirror axis flag still.
- removed colbits from outliner and object code.
- commented some other parts of the code which access deprecated members and aren't called anywhere.
2011-12-04 06:39:35 +00:00
Campbell Barton
31ff21d735 add define for deprecated DNA struct members: DNA_DEPRECATED,
this means use of deprecated struct members gives a warning.

- makesdna.c preprocessor skips this.
- DNA_DEPRECATED_ALLOW is used so readfile.c can do versioning without warnings.
- this exposes some use of deprecated struct members, will deal with this after.
2011-12-04 06:05:48 +00:00
Keir Mierle
3113fff5ed Make the tracker preview in the motion tracking panel show exactly what the
tracking algorithm will see when any of the R/G/B channels are disabled, rather
than the RGB view that was there previously.
2011-12-04 06:02:09 +00:00
Keir Mierle
7f46db1ecc Fix a segfault in the tracker caused by attempting a one-frame track after the active tracker has become disabled. 2011-12-04 04:51:30 +00:00
Keir Mierle
50d440504c Switch the tracker preview area to use bilinear filtering instead of nearest
neighbour. This makes it easier to align tracks.
2011-12-04 04:33:06 +00:00
Campbell Barton
3fdc28b736 add a new object member to store the dsize, since with my recent commit broke forward compatibility. now the new values are copied into 'dscale' and existing ones remain.
this is annoying since now we have dsize and dscale, will look into a way to deprecate struct members next.
2011-12-04 03:35:54 +00:00
Keir Mierle
8e01cfa045 Don't show the "Correlation" tracking preset when the hybrid tracker is selected. 2011-12-03 23:33:07 +00:00
Keir Mierle
bc8fb9ff37 Add a fix for compiling the brute force region tracker from libmv on Mac OS X. 2011-12-03 23:30:11 +00:00
Dalai Felinto
d15c5e51a1 Invert Color Cycles Node
as with the HSV node the OSL code is relying on the (yet to be implemented) autorename.

Also the svm code could use mix (svm_lerp) instead:
 32 . float3 color_inv = make_float3(1.0f, 1.0f, 1.0f) - color;
 35 . . stack_store_float3(stack, out_color, svm_lerp(color_inv, color, factor));

I have a feeling that each node 'program' should have the least program as possible. I'll see with Brecht later.
But overall I don't know if that's any fast. And apart from that I think we will need this kind of function to move to a library if multiple functions linked in are not a problem.
2011-12-03 23:05:35 +00:00
Keir Mierle
232248d2e0 Add a new hybrid region tracker for motion tracking to libmv, and
add it as an option (under "Hybrid") in the tracking settings. The
region tracker is a combination of brute force tracking for coarse
alignment, then refinement with the ESM/KLT algorithm already in
libmv that gives excellent subpixel precision (typically 1/50'th
of a pixel)

This also adds a new "brute force" region tracker which does a
brute force search through every pixel position in the destination
for the pattern in the first frame. It leverages SSE if available,
similar to the SAD tracker, to do this quickly. Currently it does
some unnecessary conversions to/from floating point that will get
fixed later.

The hybrid tracker glues the two trackers (brute & ESM) together
to get an overall better tracker. The algorithm is simple:

1. Track from frame 1 to frame 2 with the brute force tracker.
   This tries every possible pixel position for the pattern from
   frame 1 in frame 2. The position with the smallest
   sum-of-absolute-differences is chosen. By definition, this
   position is only accurate up to 1 pixel or so.
2. Using the result from 1, initialize a track with ESM. This does
   a least-squares fit with subpixel precision.
3. If the ESM shift was more than 2 pixels, report failure.
4. If the ESM track shifted less than 2 pixels, then the track is
   good and we're done. The rationale here is that if the
   refinement stage shifts more than 1 pixel, then the brute force
   result likely found some random position that's not a good fit.
2011-12-03 22:27:32 +00:00
Campbell Barton
7691e05e40 flush selected vertices when switching from vertex weight paint mode to editmode (as is done with faces).
note - a limitation with mode changing means this isnt used yet with toggling.
2011-12-03 22:15:13 +00:00
Brecht Van Lommel
341aa730bd Fix cycles compile issue after last commit. 2011-12-03 21:27:19 +00:00
Campbell Barton
03b807e7dc shorten very long lines in drawobject.c, (no functional changes) 2011-12-03 20:49:41 +00:00
Campbell Barton
f0b3ec33f6 fix for weight paint mode drawing selected verts even when it wasnt the active object. 2011-12-03 20:26:53 +00:00
Brecht Van Lommel
f2ae6b1589 Fix #29444: cycles problem building BVH with NaN vertices. 2011-12-03 20:22:21 +00:00
Brecht Van Lommel
4344d84c02 Fix #29483: edge slide gives nan when zoomed in close. Cause was integer
overflow leading to negative value for sqrt().
2011-12-03 13:16:32 +00:00
Campbell Barton
3167a9a899 add library support for rna collection __contains__, eg
("Cube", "//lib.blend") in bpy.data.objects
2011-12-03 06:10:32 +00:00
Alexander Kuznetsov
6d5ffb878d Enables vc 2010 boost libraries for cmake 2011-12-03 01:12:57 +00:00
Campbell Barton
06c3d5bd09 de-duplicate dominant axis calculation, exact same checks were in 6 different places.
added function:  axis_dominant_v3(...)
2011-12-02 22:14:20 +00:00
Brecht Van Lommel
20620a988a Fix #27620: improve mesh deform error message when it fails to bind. 2011-12-02 21:10:29 +00:00
Brecht Van Lommel
a097bc6889 Fix #29477: make proxy gave proxy object the wrong name with OB prefix.
Broke in revision 41125 with BLI_snprintf refactoring, checked other
changes in that commit and they seem to be fine, was just this one.
2011-12-02 20:49:31 +00:00
Dalai Felinto
78495ddf32 CameraData Input Cycles Node
----------------------------
reviewed and approved by Brecht 

Important note:
the camera Z is reverted compared to Blender render.
Now it goes from zero (camera) to positive (in front of the camera)
2011-12-02 20:36:13 +00:00
Brecht Van Lommel
1768a96774 Fix #29073: keyframing integer properties now uses linear interpolation
by default, and enums use constant interpolation. Bezier doesn't make
much sense for these.
2011-12-02 19:49:09 +00:00
Sergey Sharybin
b7aefff198 Merging r42193 through r42349 from trunk into soc-2011-tomato 2011-12-02 19:40:20 +00:00
Brecht Van Lommel
725207a1e6 Possible fix for #29436: issue with external numpad, that is generating unknown
key events. Disable using these as "key modifier".
2011-12-02 19:29:42 +00:00
Brecht Van Lommel
069f46ac89 Fix #28539: redraw issue with grease pencil active layer button, this was a regular
button that acted like a toggle, now made it an actual toggle button.
2011-12-02 19:08:40 +00:00
Jens Verwiebe
0539a3f1e9 OSX: match quicktime and QTKit export to other formats/codecs 2011-12-02 18:09:31 +00:00
Dalai Felinto
4fd2736487 HSV Color Node for Cycles
.........................
note, the OSL code has a problem.
In the original node the input and output nodes have the same name (Color).
So this will be fixed here once Brecht come up with a nice autorenaming (or we do a doversion patch) for that.
2011-12-02 16:57:37 +00:00
Brecht Van Lommel
f96aad6688 Fix #27626: nodes inside groups can't be muted. There was a check here to
disable this, but with recent node muting patch and node group changes it
should work now.
2011-12-02 15:08:27 +00:00
Brecht Van Lommel
efe4ea284a Cycles:
* Fix broken compile of test app.
* Fix some warnings compiling with gcc for 32 bit.
* More tweaks to avoid extended precision issue from #29301.
2011-12-02 14:26:28 +00:00
Sergey Sharybin
1f96a120f6 Rename clip proxy rebuild function so it's no longer called in the same way
as proxy rebuild function in sequencer.

No functional changes.
2011-12-02 13:07:39 +00:00
Dalai Felinto
1da758ffff cycles separateRGB: fix for cuda kernel building.
Array indexing doesn't work there.

I'm yet to setup my CUDA computer, in the meantime this proved to work (tested by Daniel Salazar).
If I found other ways of doing it I get back to that.
2011-12-02 07:13:48 +00:00
Campbell Barton
0cff8e6c9c move editmesh derived mesh functions into their own file to match bmesh, without this all merges in this area have to be done manually. 2011-12-02 03:16:06 +00:00
Dalai Felinto
1936b31cd0 renaming BooleanProperty to BoolProperty (rna structs shouldnt affect scripters)
Talked with Brecht and Campbell and they both agreed that bpy.types should match bpy.props
In the ideal world we would rename bpy.props to BooleanProperty. This would break scripts though. So we go for a compromise and at least have some consistency.
2011-12-01 22:08:42 +00:00
Dalai Felinto
4db4a0933f SeparateRGB and CombineRGB nodes for Cycles materials
reviewed and approved by Brecht

my first OpenCL code \o/
2011-12-01 21:46:10 +00:00
Brecht Van Lommel
b7db2587fb Cycles: fix glsl error when using light path node. 2011-12-01 19:31:36 +00:00
Sergey Sharybin
d6d6ffd770 Check for mvert coords and normals when doing mesh.validate() and set invalid
coordinates to zero and zero-length normals to Z-up direction.
2011-12-01 19:21:58 +00:00
Campbell Barton
fa3c345dfa dynamic paint, possible use of uninitialized value - fix. 2011-12-01 18:49:42 +00:00
Andrew Wiggin
fbdff29c7e Fix for RNA_warning crashing on MSVC release builds
MSVC is not C99-compliant, but with the macro as it was, the "args" part was consuming and dropping one of the params, so the format string wanted N extra args, and there were only N-1... boom, crash! Without "args" this works correctly (checked on MSVC10 release build)
2011-12-01 18:38:03 +00:00
Sergey Sharybin
b5332f293e Fixed issue with multiple textures and editmode when VBOs are enabled 2011-12-01 18:26:57 +00:00
Sergey Sharybin
c21f19374b Fixed crash caused by recent VBO's changes
Crash was caused by non-initialized original index passing to compareDrawOptions
callback. Due to in some cases it's enough to know indices of faces in final DM
(like for comparing if the same texture used for mesh drawing) assume this
callback receives index in final DM and if it's needed it will make conversion
to original index itself.

This should help reaching extra speed if textured object is affected by
bevel modifiers, i.e.
2011-12-01 18:26:48 +00:00
Campbell Barton
9b931aa0db - remove redundant line in makesdna pointed out by 'troubled' in IRC
- comment remove unused mesh edge flag.
2011-12-01 17:51:01 +00:00
Brecht Van Lommel
45de380771 Cycles
* Compile all of cycles with -ffast-math again
* Add scons compilation of cuda binaries, tested on mac/linux.
* Add UI option for supported/experimental features, to make it
  more clear what is supported, opencl/subdivision is experimental.
* Remove cycles xml exporter, was just for testing.
2011-12-01 16:33:21 +00:00