Commit Graph

1257 Commits

Author SHA1 Message Date
Sergey Sharybin
a91bd43d38 Fix compilation error of blenderplayer caused by recent commit. 2011-11-23 16:44:33 +00:00
Sergey Sharybin
85497e35d0 Added method clear to most of collections which supports new/remove.
This method not added to animation-specific structures yet/
2011-11-23 16:12:11 +00:00
Sergey Sharybin
f48cc83b3e Fix #29367: Vertex parent regression
Regression was introduced in svn rev40343. It was caused by re-creating
EditMesh structure which was needed to solve issues with parenting to
vertices after topology changes. This would also erase derivedMesh.

Problem reported now is caused by missing derivedMesh which is used
to solve parenting and apply inverted matrix on ob->parentin, so
parented object used to stay at exactly the same position it used to
stay before parenting.

Not very nice solving of this issue: re-create derivedMesh after
re-creating EditMesh when parenting. Nicer solution would require
bigger changes and probably ful lrefactor of this tools.
2011-11-23 15:44:20 +00:00
Campbell Barton
c6391e8d23 svn merge ^/trunk/blender -r42053:42069 2011-11-22 15:33:44 +00:00
Campbell Barton
f9e00b5c99 svn merge ^/trunk/blender -r42009:42053 2011-11-22 11:51:42 +00:00
Joshua Leung
374214ecb2 Attempted bugfix to improve behaviour of inverse calculations for ChildOf
Constraint (bones case only for now). See [#29100] for some problematic test
cases

* It is no longer necessary to have to press "Clear Inverse" before doing "Set
Inverse" to get a reliable result. The calculation now calculates the pose with
the inverse cleared as it's "baseline" first now, which has the same result as
clearing the inverse manually first.

* Also, this commit trials a new method for computing inverses when there is
more than one constraint on the bone. Previously it just temporarily muted the
offending constraint, but kept all following constraints active, thus
potentially including their results in the inverse calculation. However, since
the inverse should only really care about what the stack looked like up to and
including when the constraint is applied, all constraints starting from this one
onwards are now disabled when calculating the inverse.  PLEASE TEST!!! In the
few tests I've done, the effects appear minimal, but this may be quite an issue
in the wild
2011-11-22 11:51:12 +00:00
Campbell Barton
30fd1ab523 replace ImBuf.depth with ImBuf.planes to match ImageFormatData.planes & to avoid confusion with ImageFormatData.depth 2011-11-21 20:47:19 +00:00
Dalai Felinto
450e25c231 silly bug in copying game properties between linked objects - reported on BlenderArtists by Bananaft
I guess I copied/pasted the original loop code blindly.
2011-11-21 20:08:16 +00:00
Campbell Barton
8eb41f0fdb svn merge ^/trunk/blender -r41998:42009 2011-11-20 16:05:51 +00:00
Campbell Barton
f1eb66aa68 share code for fluidsim, ocean & dynamic paint file paths.
- use BLI_join_dirfile for joining all paths (no need to ensure slash is appended).
- paths from linked library files now supported.
2011-11-20 14:38:11 +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
f72c668c07 add back feature from 2.4x - Shift+Del to delete objects from all scenes. 2011-11-15 04:11:01 +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
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
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
Andrew Wiggin
2266c7fc1c Add CD_POLYINDEX layer to reduce need for retesselations 2011-11-13 15:13:59 +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
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
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
Campbell Barton
eadb192986 svn merge -r41723:41751 ^/trunk/blender 2011-11-11 06:37:29 +00:00
Campbell Barton
11947f1a67 pep/style edits & quiet some warnings 2011-11-11 03:28:46 +00:00
Joshua Leung
4e5c03f06e Bugfix [#29210] ChildOf constraint Set Inverse
For Objects, Set Inverse was unreliable as the constraint didn't get reset
properly before being calculated
2011-11-11 00:44:48 +00:00
Campbell Barton
ee1828be19 svn merge -r41649:41650 ^/trunk/blender 2011-11-10 01:58:48 +00:00
Brecht Van Lommel
db75cc4cde Nodes: add cycles shader nodes, these will only be available to render engines
that use the new shading nodes system. Documentation:

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes
2011-11-08 11:38:16 +00:00
Campbell Barton
cb890a49fb svn merge ^/trunk/blender -r41602:41638 . 2011-11-08 02:57:28 +00:00
Sergey Sharybin
27d42c63d9 Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.
2011-11-07 12:55:18 +00:00
Campbell Barton
7508540c53 svn merge -r41575:41602 ^/trunk/blender 2011-11-07 07:01:24 +00:00
Campbell Barton
4b3cc63f73 fix [#29183] Make duplicates real: parent informations of the group is not copied
infact this is a feature request but we had reports about it before and its useful to have.

2 new options for OBJECT_OT_duplicates_make_real
- parent to original duplicator
- keep internal hierarchy
2011-11-07 05:28:26 +00:00
Campbell Barton
96d73bfdcf replace VECCOPY with copy_v3_v3, same for 2d copy, also added vec copy functions for int & char. 2011-11-07 01:38:32 +00:00
Campbell Barton
7c88bc5952 replace macros for bli math functions in editors 2011-11-06 16:34:44 +00:00
Campbell Barton
e936c78251 svn merge ^/trunk/blender -r41503:41575 2011-11-06 10:38:44 +00:00
Joshua Leung
440c1c2c17 As discussed on the mailing list, removing the non-functional,
incompatible, and unmaintainable Time Offset cruft.

- Slow Parenting lives another day (just), although it now carries
appropriate cautionary disclaimers. It's only really for the Game
Engine nowadays, as that's the only place where it can possibly work
with any reliability.
- "Animation Hacks" panel is now "Relations Extras". I could've merged
the two panels, though I figured these options weren't that frequently
used to justify taking up screen-space by default along with the panel
2011-11-06 05:46:45 +00:00
Brecht Van Lommel
647447db58 Code refactoring: split lamp functions from object.c into new lamp.c. 2011-11-05 13:11:49 +00:00
Brecht Van Lommel
9884129117 Code refactoring: split camera functions from object.c into new camera.c. 2011-11-05 13:00:39 +00:00
Campbell Barton
b0adf37ef9 - view bounds (now split from collision bounds) was still being used for bge physics in one place, comparison was incorrectly treating it as a flag too.
- cleanup Object struct - remove pad and unused flags, convert some shot's to char's, saving 24 bytes.
2011-11-05 02:30:25 +00:00
Sergey Sharybin
298790850c Fix #29051: Set Origin - Center: Bounds does not work
Operator sued to check incorrect property to check initialization.

Patch by Kalle-Samuli Riihikoski, thanks!
2011-11-04 11:37:13 +00:00
Campbell Barton
2d787e6e01 utility function to find the biggest area: BKE_screen_find_big_area(...), was being done with static functions that were copied about. 2011-11-04 01:15:04 +00:00
Campbell Barton
5fbf3b813c svn merge -r41458:41480 ^/trunk/blender 2011-11-02 23:16:10 +00:00
Brecht Van Lommel
723e129252 Depsgraph/Python: callbacks and properties to detect datablock changes
* Adds two new python handlers: scene_update_pre() and scene_update_post()
  These run before and after Blender does a scene update on making modifications
  to the scene.
* Datablocks now have an is_updated property. This will be set to true in the
  above callbacks if the datablock was tagged to be updated. This works for the
  most common datablocks used for rendering: object, material, world, lamsp,
  texture, mesh, curve.
* Datablock collections also have an is_updated property. If this is set, it
  means one datablock of this type was added, removed or modified. It's also
  useful as a quick check to avoid looping over all datablocks.
* RenderEngine.view_update() can also check these properties, for interactive
  viewport rendering.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI
2011-11-02 20:56:52 +00:00
Campbell Barton
9aa901cccc svn merge -r41422:41431 ^/trunk/blender 2011-11-01 09:05:38 +00:00
Campbell Barton
2ad80bf3bb vertex group mirror
- now works in vertex select + weight paint mode.
- added option not to mirror all vertex groups.
2011-11-01 08:11:55 +00:00
Campbell Barton
bcdcbb65c1 macro to check if an object type supports vgroups 2011-11-01 06:45:36 +00:00
Campbell Barton
b6e445a61f BMesh todo - mirror vertex groups back. 2011-11-01 05:43:35 +00:00
Campbell Barton
b8afde900c macro -> math replacements, uncomment mirror funcs. 2011-10-29 06:57:50 +00:00
Campbell Barton
a5bd610e70 uncomment shape key mirror. 2011-10-28 14:17:27 +00:00