Commit Graph

6473 Commits

Author SHA1 Message Date
Campbell Barton
331dd678c7 error with recent commit, thanks Ender79 for finding. 2011-11-18 17:28:19 +00:00
Campbell Barton
4f7ecd79fe speedup for editmesh tesselation (approx 4.4x speedup in optimized builds),
this is important because it runs while transforming the mesh in editmode.

also made this code a bit more efficient.
2011-11-18 16:06:20 +00:00
Campbell Barton
cb2b92ce27 mesh_recalcTesselation speedup, ski[ check for 3-4 sided faces - dont use scanfill in these cases.
overall 6x speedup on an optized build (Suzanne subsurf level 5, applied)
2011-11-18 12:18:44 +00:00
Campbell Barton
e1250f2168 svn merge ^/trunk/blender -r41954:41961 2011-11-18 09:34:45 +00:00
Campbell Barton
aa19d53de1 edits to 41957, main changes to render layer removal.
- report an error if the layer can't be removed
- check the render layer is in the list before removing
2011-11-18 08:42:44 +00:00
Sergey Sharybin
9f0a6dca13 Added methods new and remove to scene.render.layers, so now render layers
can be created and removed from scripts.
2011-11-18 07:11:54 +00:00
Campbell Barton
5600d214f1 svn merge ^/trunk/blender -r41939:41954 2011-11-18 05:06:53 +00:00
Andrew Wiggin
8a8566c894 Fix [#29256] Import images as planes add on doesn't work correctly in bmesh 2011-11-17 18:48:49 +00:00
Campbell Barton
db44a92a11 pydrivers: 'frame' is now in the driver namespace,
- no need to link to scenes when using a frame from the pydriver, this made linking rigs for eg, quite messy.
- advantage that we get subframe values (where scenes from was fixed to a whole number).
2011-11-17 07:08:09 +00:00
Andrew Wiggin
cc64af9bfa warning cleanup 2011-11-17 06:08:58 +00:00
Campbell Barton
dfeda8688e svn merge ^/trunk/blender -r41932:41939 2011-11-17 05:33:02 +00:00
Bastien Montagne
819d1f417d Fix [#29190] VSE bugs.
Only real bug was, that effect strips' start frame and length were editable. Made all four frame properties readonly on RNA level for those kind of strips (those for which get_sequence_effect_num_inputs returns a non-null value).

Also fixed the tooltip of frame_final_duration.
2011-11-16 20:03:54 +00:00
Campbell Barton
3ed866d2fc svn merge -r41926:41932 ^/trunk/blender 2011-11-16 19:57:20 +00:00
Campbell Barton
3dcc9aef96 merge mempool changes from bmesh (adds mempool iterator). 2011-11-16 19:31:42 +00:00
Campbell Barton
9d05ccf9e8 svn merge -r41899:41926 ^/trunk/blender. also sync mempool with trunk and move BLI_mempool_alloc out of mempools header where it was inlined 2011-11-16 19:06:38 +00:00
Miika Hamalainen
9f51785c4d Dynamic Paint:
* Wave simulation speed doesn't anymore depend on surface size, but uses relative distances instead. This change will likely change simulation behavior on existing saves, but can be easily tweaked back using the "Wave Speed" parameter.
* Added a new wave brush type, "Depth Change". It uses the change of brush intersection between frames, giving a better looking "wake" for moving objects. It also doesn't leave any "dent" to the surface while remaining still.
2011-11-16 18:32:28 +00:00
Campbell Barton
9087cb91d4 quiet compiler warnings for BLI_array defines, split BLI_array_append into BLI_array_append / BLI_array_append_r, the latter returning the new array location. 2011-11-16 17:09:41 +00:00
Campbell Barton
4d9766aacf minor cleanup
- remove / comment unused python vars
- replace mul_v3_fl(somevec, -1.0f); with negate_v3(somevec);
2011-11-16 16:38:37 +00:00
Campbell Barton
da849bbfc0 prepare for flagging the bmesh has having invalid index values, so we can skip looping over all elements if its already valid.
- went over every BM_SetIndex call and added comments about its use, if its setting dirty values or correct ones.
- replace loops over all elements _just_ to set index values, with a new function, BM_ElemIndex_Ensure(...), this will eventually only initialize values when they are dirty.
2011-11-16 12:38:40 +00:00
Campbell Barton
c00c0134e0 svn merge -r41847:41899 ^/trunk/blender 2011-11-16 03:10:15 +00:00
Campbell Barton
0c7a25cd0e patch [#28993] wm_window_match_do(): Fix crash on null pointer dereference
from Ola Jeppsson (olajep)

also some cleanup edits
2011-11-15 16:38:48 +00:00
Campbell Barton
2bc7821913 add support for python __doc__ comments in menu classes showing in the tooltip, since menus are used as buttons too. 2011-11-15 14:58:14 +00:00
Campbell Barton
3ecb7b951e fix [#29272] Dynamic Paint crashes on duplicating a particle system
smoke had this same bug too
2011-11-15 13:45:24 +00:00
Sergey Sharybin
3d724d8df5 Camera tracking: made some options more easy to understand
- Changed some names so now people who aren't really familiar with
  motion tracking can understand what they exactly means
- Also cleaned up and rephraded some descriptions
- Changed behavior of operator which creates empty for 2d tracks:
  now it operates on all selected tracks rather than active track only
- Added checkbox to enable/disable rotation stabilization
2011-11-15 12:20:58 +00:00
Campbell Barton
6a340c1eb0 py/rna api was calling RNA_property_type more often then needed (no functional change) 2011-11-15 11:56:54 +00:00
Joshua Leung
1a47f9516e Formatting cleanup. No functional changes 2011-11-15 11:34:49 +00:00
Campbell Barton
3cf56d46d1 add IDP_EqualsProperties support for comparing non-null terminated byte strings. 2011-11-15 10:32:08 +00:00
Bastien Montagne
995ca539d0 Fixed compilation error in writeffmpg.c (caused by recent IDProp changes). 2011-11-15 10:01:18 +00:00
Campbell Barton
8623935aa8 pass a pointer to IDP_New's IDPropertyTemplate rather then a copy. 2011-11-15 09:22:52 +00:00
Campbell Barton
2ab1732613 support for non-null terminated byte strings in id properties (as a subtype of IDP_STRING types) 2011-11-15 09:12:10 +00:00
Campbell Barton
ab3295db33 fix for crash in blenderplayer when the engine isnt fount. 2011-11-15 07:30:26 +00:00
Campbell Barton
e6e265b2b5 svn merge -r41779:41847 ^/trunk/blender 2011-11-15 02:58:06 +00:00
Campbell Barton
e59ab6486f svn merge -r41751:41779 ^/trunk/blender 2011-11-15 02:05:32 +00:00
Andrew Wiggin
35ab6cabbf fix a leak from the CD_POLYINDEX changes that occurs for certain modifiers (when re-calculating normals over an existing ^C_NORMALs layer) 2011-11-14 17:38:34 +00:00
Dalai Felinto
d6e0508746 Text Editor: implement space-as-tab navigation
When "use tab as space" is on we will jump the spaces as if they were one single tab when navigating (left/right).
Tabsize still is hardcoded to 4, but this is a separate design issue left for another patch.

* patch done in the airplane while expaining the Text Editor code for a potencial new coder @ Blender PRO 2011 *
2011-11-14 17:33:32 +00:00
Miika Hamalainen
90871d54c5 Fix: Last triangle wasn't always drawn when VBO enabled. 2011-11-14 16:34:11 +00:00
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
9e6860d864 fix [#29242] menus have no keyboard shortcuts 2011-11-14 14:42:47 +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
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
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
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