Commit Graph

27625 Commits

Author SHA1 Message Date
Campbell Barton
49ccf975f2 minor cleanup
- use NULL rather then 0 for pointers
- use static functions where possible
- add own includes to ensure func's and their declarations don't get out of sync.
2011-11-14 16:05:44 +00:00
Thomas Dinges
5b5f776eae * Recommit of "a" BLENDER_VERSION_CHAR. 2011-11-14 15:29:59 +00:00
Campbell Barton
0b1066af8e fix [#29251] Properties options={'SKIP_SAVE'} not working, patch attached
patch from Domino Marama (domino)
2011-11-14 15:05:41 +00:00
Campbell Barton
9e6860d864 fix [#29242] menus have no keyboard shortcuts 2011-11-14 14:42:47 +00:00
Nathan Letwory
1ace39c86b Apply patch [#28632] Add individual invert to 3d mouse in turntable mode and when zooming
Submitted by Rainer Wahler

This patch adds the individual invert options for the turntable mode too. In turntable mode there are only the rotate and roll and no tilt axis to invert.
2011-11-14 14:02:19 +00:00
Brecht Van Lommel
74387f44af Fix #29252: GLSL not working with geometry material node after recent changes. 2011-11-14 12:47:47 +00:00
Lukas Toenne
9a2174f57a Better fix for crashes when rendering original edit mesh faces on empty edit mesh with constructive modifier (#29241). This avoids the additional test inside the loop. 2011-11-14 11:17:07 +00:00
Campbell Barton
a7ed8f5e4a fix for shiftx/y for recently added VIEW3D_OT_camera_to_view_selected operator. 2011-11-14 08:43:09 +00:00
Miika Hamalainen
5a01ec56da Fix for [#29247] Incorrect black color with dynamic paint 2011-11-14 08:18:04 +00:00
Lukas Toenne
ad943db0e3 Fix for #29241, ocean sim modifier crash when removing all vertices.
The object draw method did not check for valid data when mapping back to original face, constructive modifier on empty mesh does that.
2011-11-14 08:06:24 +00:00
Campbell Barton
c8f374f486 make ocean rna more consistent with existing rna names 2011-11-14 07:18:32 +00:00
Campbell Barton
972debc7eb make rna naming for dynamic paint consistent with existing names & conventions. 2011-11-14 07:07:59 +00:00
Campbell Barton
11a7a406fb DPAINT_OT_output_toggle operator was using an index option for what was really a toggle between 2 values, changed its index option to an enum.
if a value other than 1/0 was given it would use an uninitialized pointer too (compiler warning, review should pick up this stuff).

also renamed some RNA attrs:
 output_name --> output_name_a
 output_name2 --> output_name_b
 do_output1 --> use_output_a
 do_output2 --> use_output_b
 do_smudge --> use_smudge
 max_velocity --> velocity_max
2011-11-14 06:46:07 +00:00
Sergey Sharybin
f474576351 Camera tracking: interface cleanup and small buttons renaming
- Move tracking-related constraints to own section in list
  Currently there are only two constraints, so can look a bit odd,
  but it'll be other constraints like "Object Solver" and so.
- Move motion-tracking parameters from 3D viewport Display panel
  to it's own panel.
- Get rid of "Bundle" in 3d viewport. It's quite obvious that it's
  a 3D representation of tracks is used in 3D viewport and it shouldn't
  be so confusing for artists now.
- Also get rid of "Bundle" in Follow Track constraint.
  Old files can change a bit because of changes in DNA.
- Also get rid of "Bundles" in operator which creates vertices cloud
  from 3D position of tracks.
- Rename "Principal Point" to "Optical Center" in the interface.
2011-11-14 06:41:42 +00:00
Sergey Sharybin
0f82384fd0 Camera tracking: code cleanup 2011-11-14 06:41:32 +00:00
Sergey Sharybin
6fbc4186fd Assorted camera tracker improvements
- Add support for refining the camera's intrinsic parameters
  during a solve. Currently, refining supports only the following
  combinations of intrinsic parameters:

    f
    f, cx, cy
    f, cx, cy, k1, k2
    f, k1
    f, k1, k2

  This is not the same as autocalibration, since the user must
  still make a reasonable initial guess about the focal length and
  other parameters, whereas true autocalibration would eliminate
  the need for the user specify intrinsic parameters at all.

  However, the solver works well with only rough guesses for the
  focal length, so perhaps full autocalibation is not that
  important.

  Adding support for the last two combinations, (f, k1) and (f,
  k1, k2) required changes to the library libmv depends on for
  bundle adjustment, SSBA. These changes should get ported
  upstream not just to libmv but to SSBA as well.

- Improved the region of convergence for bundle adjustment by
  increasing the number of Levenberg-Marquardt iterations from 50
  to 500. This way, the solver is able to crawl out of the bad
  local minima it gets stuck in when changing from, for example,
  bundling k1 and k2 to just k1 and resetting k2 to 0.

- Add several new region tracker implementations. A region tracker
  is a libmv concept, which refers to tracking a template image
  pattern through frames. The impact to end users is that tracking
  should "just work better". I am reserving a more detailed
  writeup, and maybe a paper, for later.

- Other libmv tweaks, such as detecting that a tracker is headed
  outside of the image bounds.

This includes several changes made directly to the libmv extern
code rather expecting to get those changes through normal libmv
channels, because I, the libmv BDFL, decided it was faster to work
on libmv directly in Blender, then later reverse-port the libmv
changes from Blender back into libmv trunk. The interesting part
is that I added a full Levenberg-Marquardt loop to the region
tracking code, which should lead to a more stable solutions. I
also added a hacky implementation of "Efficient Second-Order
Minimization" for tracking, which works nicely. A more detailed
quantitative evaluation will follow.

Original patch by Keir, cleaned a bit by myself.
2011-11-14 06:41:23 +00:00
Campbell Barton
e058110b70 fix uninitialized memory use when an object has modifiers but no ocean modifier. 2011-11-14 06:11:40 +00:00
Campbell Barton
bb934ad883 Ocean baking was using uninitialized memory, but further investigation it was calculating foam values when they were not used.
avoid calculating foam and allocating memory when its not needed.
2011-11-14 05:55:50 +00:00
Campbell Barton
a34fed3f2c VIEW3D_OT_camera_to_view_selected operator to move the camera to frame
all selected, renderable objects.
2011-11-14 03:54:23 +00:00
Bastien Montagne
fea58943ec Moving all node angle-type values to radians. This also fixes [#29151] rotate node wrong input (mixing up radians and degrees).
Warning!

Angles in nodes have just been moved to consistant Radians values (ANGLE subtype of RNA Float property). You will still see them as degrees in the GUI, though, unless you chose otherwise in Scene properties, Units panel.

Conversion from degrees to radians for old files is obviously done at loading time, but if you use a mixed pipeline of trunk and releases, be carefull!

Loading a 2.60.4 file (or higher) into any previous version of Blender, your angles in nodes will have odd values (well, radians interpreted as degrees)!

And if you save such file in a pre-2.60.4 version, the angle node values will be converted again when loaded in Blender 2.60.4 or higher...

This affects following nodes:
* Compo: Rotate, Defocus, ChromaMatte, Glare and DirectionalBlur
* Shader: Mapping
And all future code using the TexMapping struct’s rotation part (its rot memember is now in radians).
2011-11-13 18:03:27 +00:00
Sergey Sharybin
c491b8bf45 Fix #29240: multi-res bake broken in 2.60
Use preview subdivision level even when in sculpt mode. Makes more sense
than baking against sculpting subdivision level.
2011-11-13 17:45:42 +00:00
Sergey Sharybin
3689830484 Camera solving: fixed incorrect warnings about failure of solving some frames
Error was caused y not very accurate calculating which frames should be solved.
2011-11-13 17:16:04 +00:00
Bastien Montagne
b9cc1f7590 Quiting a warning in Ocean code (commenting out var). 2011-11-13 16:38:14 +00:00
Campbell Barton
c993ee678a new math utility function isect_plane_plane_v3 2011-11-13 16:28:52 +00:00
Thomas Dinges
fbf9406785 Release cycle:
Moving on to BCon 3: beta
2011-11-13 16:24:15 +00:00
Campbell Barton
dfd20bb888 remove double promotions and some formatting edits (tabs & spaces mixed) 2011-11-13 16:10:01 +00:00
Campbell Barton
e094ebfcdf remove Id:'s from shader node headers 2011-11-13 16:08:01 +00:00
Bastien Montagne
2af9b9476e Make Ocean modifier compile again! Also removed it’s $ID$ heading stuff. 2011-11-13 15:41:40 +00:00
Campbell Barton
8b32341775 ensure that the path and directory are joined correctly for ocean cache (assumed path ended with a '/') 2011-11-13 15:17:24 +00:00
Brecht Van Lommel
00b695a6f3 Ocean Sim: sort alphabetically in modifier list, fix python error trying to
show "Built without OceanSim modifier" message.
2011-11-13 14:54:11 +00:00
Campbell Barton
2e32ce0ed2 add the ocean modifier to bpath visitor 2011-11-13 14:50:19 +00:00
Lukas Toenne
cbef65deda Stub data in Ocean modifier when disabled, C standard does not allow empty structs. 2011-11-13 14:39:10 +00:00
Campbell Barton
7d0b5920c6 rename cmake WITH_OCEANSIM --> WITH_MOD_OCEANSIM and tag CYCLES_CUDA_BINARIES_ARCH as advanced. 2011-11-13 14:16:43 +00:00
Campbell Barton
7edd4f93f1 add missing break in ocean_texture switch statement & quiet some warnings. 2011-11-13 14:11:02 +00:00
Campbell Barton
46a673c295 fix another buffer overrun error, also replace BLI_snprintf with BLI_strncpy since no formatting is needed in this case. 2011-11-13 13:56:40 +00:00
Campbell Barton
d4d95ea1c1 fix for buffer overrun when grease pencil drawing in the clip editor. 2011-11-13 13:52:15 +00:00
Brecht Van Lommel
b5a57b193d Fix #29041: parenting problem with tree IK for iTaSC and iksolver, where it
would use the wrong bone as parent on brancing. Patch by Juha Maki-Kanto.
2011-11-13 13:08:15 +00:00
Thomas Dinges
2414abae06 Ocean Modifer:
* Reuse the placeholder "eModifierType_EmptySlot" for the new Ocean modifier.

WARNING: 
DO NOT use Ocean modifier in trunk with a revision below this commit! Files won't load then!!
2011-11-13 13:04:46 +00:00
Thomas Dinges
4ad0456675 Ocean Sim:
* Changed the user interface for the Ocean modifier, to use less space and look better.
* Changed rna name cachepath to filepath for consistency (fluid cache path also uses "filepath")
2011-11-13 12:45:47 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
Sergey Sharybin
05d09feeee Speedup of multires baker
Issue was caused by how CCGDM handles ORIGINDEX cystom layer:
It runs cycle through all faces to fill origindex array on each
call of dm->getFaceDataArray(dm, CD_ORIGINDEX)

Solved issue by obtaining origindex array once on baker data initialization and
using this stored array when interpolating multires grid data.
2011-11-13 10:48:46 +00:00
Sergey Sharybin
11a1c1ec19 Fix crash when multires-baking in sculpt mode when sculpt mode is active and sculpt level is set to 0. 2011-11-13 10:09:34 +00:00
Campbell Barton
963e39e417 formatting edits only - no functional changes 2011-11-13 09:38:53 +00:00
Campbell Barton
72a7101576 include invalid type name in mathutils error messages. 2011-11-13 09:20:04 +00:00
Campbell Barton
817b6cb9a8 mathutils.geometry.distance_point_to_plane(pt, plane_co, plane_no) - utility function, BLI math version too. 2011-11-12 10:06:56 +00:00
Joshua Leung
e2c06d5fc9 Bugfix [#29212] Select before/after current frame deselects all channels in
graph editor

No need to deselect all channels when doing the select left/right operator,
since we don't replace the selection afterwards with anything useful. This would
be a problem when the "Only Show Selected" option is enabled (as it is by
default), as this results in the curves being worked on disappearing from view.

F-Curves though will still get deselected as a result of the code to deselect
keyframes. Will need to review whether this is still a good idea (original
intention was so that only curves with keyframes selected would remain
selected).
2011-11-12 05:00:24 +00:00
Joshua Leung
8da2812100 Bugfix [#29125] Motion paths odd behaviour
* Made it impossible to try to calculate/create new motion paths lasting 0
frames (i.e. 250 to 250) since we cannot allocate a zero-length array for these.
Start frame can now be at most end-frame - 1, and end frame at least start frame
+ 1

* If an invalid configuration does occur, warnings/reports will now be issued in
response to this instead of silently failing (as per this bugreport).
2011-11-12 04:40:53 +00:00
Brecht Van Lommel
e070823378 Fix #29207: cancelling volume precache at high resolution was too slow, added
more test_break calls.
2011-11-11 16:01:13 +00:00
Campbell Barton
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
Campbell Barton
094c9799f9 quiet -Wdouble-promotion warnings 2011-11-11 12:00:08 +00:00