Commit Graph

42714 Commits

Author SHA1 Message Date
Campbell Barton
c2da706a36 Code cleanup: remove references to svn and code style 2014-01-28 23:01:22 +11:00
Sergey Sharybin
9178dc9d38 Rework detector API and implement Harris detector
Switch the detector API to a single function which accepts
a float image and detector options. This makes usage of
feature detection more unified across different algorithms.

Options structure is pretty much straightforward and contains
detector to be used and all the detector-specific settings.

Also implemented Harris feature detection algorithm which
is not as fast as FAST one but is expected to detect more
robust feature points. It is also likely that less features
are detected, but better quality than quantity.

Blender will now use Harris detector by default, later we'll
remove FAST detector.
2014-01-28 15:37:19 +06:00
Sergey Sharybin
f194ab7659 Compilation fix for SCons
Was broken by recent FFmpeg changes.
2014-01-28 15:14:00 +06:00
Sergey Sharybin
dfdf19cc59 Code cleanup: more preprocessor indentation 2014-01-28 14:34:52 +06:00
Anton Khirnov
f99e581ae1 libavformat API usage: use avformat_close_input() instead of av_close_input_file() 2014-01-28 14:20:22 +06:00
Anton Khirnov
414e40c353 libavformat API usage: use avg_frame_rate instead of r_frame_rate
r_frame_rate is a guessed number defined as "the least common multiple of
all framerates in the stream". It has been deprecated and removed in new
Libav releases.

Use avg_frame_rate instead, which is the average framerate of the
stream.
2014-01-28 14:18:41 +06:00
Anton Khirnov
b7f8bfef25 libavcodec API usage: use new video encoding API
avcodec_encode_video() has been replaced with avcodec_encode_video2()
in new libavcodec versions.
2014-01-28 14:17:50 +06:00
Anton Khirnov
8c3b27ce27 Change libavcodec CODEC_ID_* to AV_CODEC_ID_*
CODEC_ID_* have been replaced with AV_CODEC_ID_* in new libavcodec
versions.

Update the code to use those new identifiers.

Added a compatibility code to ffmpeg_compat.h
2014-01-28 14:00:31 +06:00
Sergej Reich
6fe5b3be38 Fix T37673: Ray casting could fail with 0 collision margins
Use bullet's old method of doing ray casts to stay compatible with old
files. It's faster but a bit less accurate.
2014-01-28 08:31:56 +01:00
Campbell Barton
8fa4517a20 BGE: remove freestyle from stubs, all functions were out of use 2014-01-28 17:59:00 +11:00
Jens Verwiebe
8bf9bf37ec Identified the freestyle stubs breaking pragma GCC diagnostic error "-Wmissing-prototypes”, diasabling this case for now 2014-01-27 23:01:03 +01:00
Thomas Dinges
e983ed6aaa Revert the removal of Blender Internal Edge rendering, after artist feedback.
This reverts commit fb91a602c7.
2014-01-27 19:59:06 +01:00
Jens Verwiebe
15e08394a0 OSX/scons: consequently make use of the recently introduced C_COMPILER_ID and CCVERSION env vars 2014-01-27 19:56:15 +01:00
Jens Verwiebe
74108e2d6c Fix player compile in scons and disable -Wmissing-prototypes for Apple atm. 2014-01-27 19:36:05 +01:00
Campbell Barton
a5c35fb27f Code cleanup: use booleans where appropriate 2014-01-28 04:00:04 +11:00
Campbell Barton
0c6a01ca00 Use includes for blenderplayer stubs
exposes many incorrect and redundant stubs
2014-01-28 01:55:10 +11:00
Campbell Barton
5aa006bc1c Fix incorrect extern 2014-01-28 01:50:09 +11:00
Lukas Tönne
21c56f754f Fix T38355: Crash with Shader Node Group with missing datablock,
only in "Material" viewport shading.
2014-01-27 12:27:30 +01:00
Sergey Sharybin
1d12c3fd53 Implement clipboard for mask splines
So now it's possible to copy-paste splines between layers.

Implementation is pretty much straightforward and duplicates
some logic which we've got in sequencer/tracking clipboards.

Will work on a common routine for clipboards later, for now
it's not so much crucial to have.
2014-01-27 15:42:46 +06:00
Campbell Barton
bee6c1779e Code Cleanup: de-duplicate nested node tree checking 2014-01-27 20:19:27 +11:00
Campbell Barton
029a7bbade UI: Fix for icon-only menus too small click-able area 2014-01-27 19:11:37 +11:00
Campbell Barton
a71f072f9c UI: Replace +/- menus with collapsible ones
Patch D160, by Scott Petrovic with  own modifications.
2014-01-27 18:42:11 +11:00
Kevin Mackay
fbc7ab30ff Curves: save active point to file
Changed curve active point from pointer to index. Allows curve active point to be saved to file and retained between modes for free. Also some small optimisations by removing pointer look up code.

- Made active point access functions into BKE API calls.
- Fixes operators where curve de-selection resulted in unsel-active point.
- Split curve delete into 2 functions
2014-01-27 15:21:04 +11:00
Sv. Lockal
646cc46400 Fix typo in nla blend modes. 2014-01-26 20:12:29 +04:00
Bastien Montagne
afb9393dda Fix T38354: Excess memory allocation when projecting onto object with multires
Found three cases where created bvhtree was not freed...
2014-01-26 16:56:50 +01:00
Bastien Montagne
bb83bdf891 Fix T38366: export collada crash - if you set a keyframe
Don't assume all objects have a valid animdata...
2014-01-26 16:08:17 +01:00
Bastien Montagne
d292d6ad74 Cleanup of BLI_smallhash
Factorized a bit the code here, think it's more readable now... No performance enhancement though.

Reviewed by: campbellbarton

Differential Revision: https://developer.blender.org/D259
2014-01-26 15:18:02 +01:00
Campbell Barton
1c29fd77d3 Code Cleanup: style and correct API class ref 2014-01-26 22:17:01 +11:00
Brecht Van Lommel
70e844ea11 Fix T38353: some EXR files from other applications not loading correctly.
* EXR layers with names like 'Z' without any pass name were not loaded at all
  and would break the Combined pass as well.
* EXR pass names longer than 16 characters where writing past the end of the
  array and getting invalid names.
2014-01-25 17:44:15 +01:00
Lawrence D'Oliveiro
3b32507b41 Blender docs: Correct upper limit, shown for missing -t option value.
Differential Revision: https://developer.blender.org/D248
2014-01-25 12:29:37 +01:00
Bastien Montagne
c0a4089265 Fix T38356: Crash when UIList.filter_items returns too few items. 2014-01-24 22:13:20 +01:00
Howard Trickey
28564e1583 Change tooltip text for Vertex Group in Bevel Modifier.
Reflects previous commit that now allows this group to
control edge bevels too.
2014-01-24 12:52:18 -05:00
Howard Trickey
2a8f6e2fd9 Bevel modifier can use vertex groups for edge bevel now.
Until now, the "vertex group" limit method in the modifier
only worked for "vertex only" bevels. With this change,
edges with both ends in a vertex group will be beveled
in the non-"vertex only" case.
Also changed the test for being in a vertex group from
"any nonzero weight" to "weight >= 0.5". This is because
cascaded bevels on disjoint vertex groups did not give
disjoint bevels, because weight interpolation would give
non-zero weights to newly created vertices in earlier bevels.
Chose 0.5 because that won't result from interpolation, but
still allows some dilution (e.g., cascaded bevels on the
same vertex group).
2014-01-24 12:42:20 -05:00
Bastien Montagne
9e2ebecb21 Add convinient access to full bitangent for loops (some export formats like FBX expect full bitangents, better to compute them in C than in python...) 2014-01-24 17:49:29 +01:00
Brecht Van Lommel
257f408864 Fix T38347: adding object visibility keyframes in the outliner groups and
libraries view not working.

This was disabled in the operator, there may have been a reason for this at
some point, but I can't see any reason to disallow it in the current code or
find a good reason why it was done in the commit logs.
2014-01-24 16:12:56 +01:00
Howard Trickey
01c1790a11 Make multisegment bevel profiles even for all parameters.
The method for calculating points on the profile for non-circles
and non-lines meant that the segments making up an edge had
uneven widths.
Use a numeric search technique to find superellipse evaluation
points that lead to equal-sized chords across the profile.
Also calculate the actual profile points sooner, so that they
don't have to be recalculated again and again.
This also sets up for a possible later feature of arbitrary
profile shapes, set by user.
2014-01-24 10:07:24 -05:00
Sergey Sharybin
456dc16e4a Fix currently harmless issue with converting ImBuf from sequencer space 2014-01-24 14:29:50 +06:00
Sergey Sharybin
f0b9b65740 Fix compilation error caused by 67f1fd2
Did one tried building blender before commit even?
2014-01-24 14:06:23 +06:00
Dalai Felinto
67f1fd25ee game engine: implement hitMaterial for collision and ray sensors
Reviewed By: moguri, kupoman

Differential Revision: https://developer.blender.org/D167
2014-01-24 02:10:45 -02:00
Bastien Montagne
18db6c58ec Fix T38150: implementation mismatch in bmesh python
Hopefully this time all mismatches are fixed (quickly checked the whole BMesh API files,
found a few others in addition to those reported in T38150).
2014-01-23 20:17:54 +01:00
Jonathan Williamson
037730b683 Make Tab Divider interopolate between the region background and tab outline.
Previously the divider was using the region background and the region text, leading to bad outlines with custom themes. This makes the outline behave more expectedly and allows better control.
2014-01-23 12:30:28 -06:00
Sergey Sharybin
0f72a8a7f0 Fix T38337: Crash when calling to_mesh() on a Curve object after clearing its parent
This is rather a workaround which only works because curve evaluation is only called
for a temporary object. Not a big deal if we'll skip path creation for such objects.

Still would need to think of general solution.
2014-01-24 00:18:22 +06:00
Brecht Van Lommel
9f903208e8 Fix T36165: blender internal HDR textures with negative values got clamped.
For example for vector displacement, you may have an EXR texture that has
negative colors values. Blender clamps these by default, now the Colors panel
for textures has a Clamp option to disable this clamping.

This option affects all texture types and is enabled by default, you need
to disable it if you want negative values to have an influence.

Patch by Fredrik Hansson with modifications by me.
2014-01-23 18:49:10 +01:00
Brecht Van Lommel
0847549009 Fix T37685: automatic weights affected by face masking outside weight paint mode.
Only when in weight paint mode should it check the selected vertices and faces,
in object mode it should just affect the entire mesh.
2014-01-23 17:47:20 +01:00
Bastien Montagne
c37e8ecc50 Cleanup: int/short to bool in BKE_cdderivedmesh.h functions (and TRUE/FALSE to true/false in code using them). 2014-01-23 14:52:46 +01:00
Sergey Sharybin
26ae14d2dc Fix crash when changing space type to 3D space when having multiple windows
it is possible that different windows shares scene but displays different
layers. And it's also possible that different areas in the same window will
show different layers.

First case was violated in `dag_current_scene_layers()` which only checked
scene layers only once and if multiple windows shares the same scene only
one window was handled. Now made it so layers from all windows will be
squashed together into a single `DagSceneLayer`. This mainly solves issue
with `DAG_on_visible_update()` which didn't work reliable with multiple
open windows.

Second case required call of `DAG_on_visible_update()` when changing space
are type.

This commit slows things a bit actually because `dag_current_scene_layers()`
is actually called on every main WM loop iteration. It is possible to speed
some logic up perhaps. Not sure it's so much critical to do now because there
are unlikely to be more than few windows open anyway.

Will rather think of skipping all that flushing things if no objects are
tagged for update actually.
2014-01-23 19:35:20 +06:00
Campbell Barton
64bd4be6b2 Fix for crash getting the name of RNA properties with empty name 2014-01-24 00:25:11 +11:00
Campbell Barton
536800392a Code Cleanup: whitespace 2014-01-24 00:06:09 +11:00
Campbell Barton
45df9f4141 Code Cleanup: find operator once and reuse 2014-01-24 00:06:09 +11:00
Sergey Sharybin
898498c800 Fix for IMB_(un)premultiply_rect_float() not doing right business
- Made them receive number of channels rather than number of planes.
  This matches to how ImBuf structure stored planes and channels.
- IMB_premultiply_rect_float() was called with channels passed instead
  of planes already :S.
2014-01-23 16:51:32 +06:00