Commit Graph

617 Commits

Author SHA1 Message Date
2d8637946b rigidbody: Add rigid body simulation
Add operators to add/remove rigid body world and objects.
Add UI scripts.

The rigid body simulation works on scene level and overrides the
position/orientation of rigid bodies when active.
It does not deform meshes or generate data so there is no modifier.

Usage:
* Add rigid body world in the scene tab
* Create a group
* Add objects to the group
* Assign group to the rigid body world
* Play animation
For convenience the rigid body tools operators in the tools panel of the 3d view
will add a world, group and add objects to the group automatically so you only have
to press one button to add/remove rigid bodies to the simulation.

Part of GSoC 2010 and 2012.
Authors: Joshua Leung (aligorith), Sergej Reich (sergof)
2013-01-23 05:56:44 +00:00
e224996f3d Avoid using python keyword as operator property name 2013-01-21 12:44:40 +00:00
159507dc2c fix for possible null pointer dereference in PE_create_particle_edit 2013-01-20 14:10:10 +00:00
6747dec926 style cleanup 2013-01-07 03:24:22 +00:00
c9b8839237 Bug fix #33647
Particle combing didn't always respond as expected. The combed effect was 
depending on the center of object in view, instead of on the center of 
selected hairs. That made combing in certain close ups impossible.

Same was actually true for transform tools for hairs!

And even worse - there was an optimize break in calculating center
which wasn't true even. Causing centers for transform to fail similar
in other cases.
2012-12-21 17:47:50 +00:00
b28c055508 Fix #33640: Blender crashes when I click on "Connect Hair" in "Particles" pannel
Issue was caused by disabled particle system modifier, now connect hair
will check on that and give an error message if modifier is disabled.
2012-12-21 09:27:39 +00:00
b2c66e268f replace MIN/MAX 3,4 with inline functions 2012-12-21 05:07:26 +00:00
c27d22ab71 fix own regression in 2.65 [#33643] Rotation does not work at certain zoom level
caused by not projecting points behind the perspective view,
even though this worked in 2.64 the values were flipped (rotating direction was reversed and the center point was flipped).

added V3D_PROJ_TEST_CLIP_NEAR, when omitted ED_view3d_project_*** will project points from behind a perspective view plane.
2012-12-21 03:49:47 +00:00
e72239c6a4 style cleanup 2012-12-18 01:52:18 +00:00
ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
11ffc7f5c2 remove modifiers_indexInObject(), just call BLI_findindex directly. 2012-12-15 05:46:41 +00:00
0990c84f3f Fixes for correct UI scaling display:
- Move to layer (and more popups) didn't scale yet
- User Prefs and render window now open on right location on Mac Retinas
- Brush sizes for painting now scale for Mac Retina
2012-12-14 15:09:59 +00:00
7c699a217a define the size of matrix args for both rows/cols. 2012-12-11 14:29:01 +00:00
a91814e94d style cleanup 2012-11-26 11:03:14 +00:00
7cc12e5170 Fix #33279: crash in particle brush cut tool when cutting hairs that go outside the view. 2012-11-23 21:22:13 +00:00
ef67ddeba9 Bugfix [#29186] Object contribute to fluid sim animation start earlier than keyframe
Also fix:
- Fluid simulation was always lagging 1 frame behind: E.g. the 250th frame in blender showed 249th frame of the fluid simulation.

Change:
- Animated enabled/disabled property only gets counted as "on" if value >= 1

Note that this bugfix should solve many problems with timings of animated fluid sim properties.
2012-11-23 05:00:07 +00:00
ebde2d579a each different remove doubles function used a different property name, use 'threshold' for all now. 2012-11-14 03:13:51 +00:00
b51908b913 Bugfix [#32939] Fluid sim reversed on X and Y with animated Control object
Bug was introduced in r48531 by accident since fluid control object abuse a variable for another flag which got reset.
2012-11-07 18:11:13 +00:00
fae6c35ca7 code cleanup: quiet -Wdouble-promotion, disabled this warnings for a few files since its done throughout the code in some places. 2012-11-04 07:18:29 +00:00
00b8c2afa1 style cleanup 2012-10-31 10:09:06 +00:00
aeba4950c3 style cleanup 2012-10-27 10:42:28 +00:00
c9dade4fe0 Big i18n commit: add "reports" from bmesh/readfile/tracking/dynapaint (and a few others), and another bunch of UI messages tweaks/fixes, as well as some BKE_report()<->BKE_reportf()... 2012-10-26 17:32:50 +00:00
f70d2c65d8 rename api functions...
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-23 13:28:22 +00:00
1767b65846 style cleanup: also rename bmesh_decimate.c --> bmesh_decimate_collapse.c 2012-10-23 03:38:26 +00:00
ddc2dbc2a4 style cleanup 2012-10-22 08:15:51 +00:00
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
b8267a0dfb More UI messages and BKE_reportf<->BKE_report fixes... 2012-10-18 16:25:58 +00:00
64add7c9c7 More UI messages and BKE_reportf<->BKE_report fixes... 2012-10-16 07:53:10 +00:00
67e2768570 quiet some -Wshadow warnings 2012-10-12 14:35:10 +00:00
57004cfb5a style cleanup:
also add helper makefile targets:
* tbz - makes a tar.bz2 of an svn export
* test_style_qtc - outputs style checks in qtc task format.
2012-10-10 23:44:07 +00:00
ccd9f1491a style cleanup: line length,
rename V3D_PROJ_RET_SUCCESS ->  V3D_PROJ_RET_OK
2012-10-07 14:00:18 +00:00
e8872a8ea2 style cleanup: if(); 2012-10-07 09:48:59 +00:00
db70bfc206 code cleanup: use functions to initialize selection user data structs, use radius-squared for circle select comparisons.
edge_fully_inside_rect() & edge_inside_rect() args were shorts when all callers were passing ints.
2012-10-05 15:44:11 +00:00
07a0463ac5 fix for circle select ignoring lock selection option for pose and edit modes, added macros PBONE_SELECTABLE, EBONE_SELECTABLE 2012-10-05 05:27:51 +00:00
6e65c7842b replace ED_view3d_project_short_* with ED_view3d_project_int_*, when the result was converted to an int after.
also optimization for particle editmode key_test_depth() was projecting the screen coords, but all callers had already done this, so pass an arg.
2012-10-05 05:11:10 +00:00
e77004157e make ED_view3d_project_int equivalent to ED_view3d_project_short functions. 2012-10-04 17:52:12 +00:00
709903c6bb refactor ED_view3d_project_short & ED_view3d_project_short_noclip,
This is apart of a code cleanup to make  ED_view3d_project_short/ED_view3d_project_int/ED_view3d_project_float interchangeable. Currently they work very differently in a way thats quite confusing (and cause of bugs in blender that remain uncorrected) - fixes coming.

There are also cases where ED_view3d_project_short is used, then the values are converted from shorts into int's after because ED_view3d_project_int() behaves differently, will unify behavior of these functions after this commit.

- rather then clip/noclip versions, pass flags (for bound-box clip, window clip).
- rather then store the invalid clip-value, return success (or error value clip_near, clip_bb, clip_win, overflow).
- remove local copies of project functions from drawobject.c: view3d_project_short_clip, view3d_project_short_noclip, view3d_project_short_clip_persmat.


add functions:
- ED_view3d_project_short_global() global space projection
- ED_view3d_project_short_object() object space projection.
- ED_view3d_project_short_ex() take perspective matrix and local space option as args.
- ED_view3d_project_base() - special function to set the Object 'Base' screen coords (sx, sy), since this is a common enough operation.
2012-10-04 16:46:15 +00:00
872cc0c4c0 Kind of cleanup of "menu strings": always have a space between the entry's label and value (these strings are a nightmare to handle in RTL languages like arabic or persian, but a bit less of a nightmare this way ;) ). 2012-10-04 13:59:14 +00:00
ed1cda9a6c style cleanup 2012-09-30 06:12:47 +00:00
edb78d090c code cleanup:
- make view3d project names more consistent.
- remove apply_project_float() its not needed.
- update comments referencing an old function name.
- move doxygen docs into the C file, prefer they are kept here to avoid getting out of sync with code.
2012-09-20 04:56:24 +00:00
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
7a71f58af3 fixes for NULL checks, remove some redundant checks and add some in that have been removed by accident as code has been updated. 2012-09-14 06:17:14 +00:00
a0ae47f06c add some missing NULL checks, a few parts of the code used a pointer then checked it for NULL after.
also made it more clear that some areas assume the pointer isnt null (remove redundant NULL checks).
2012-09-11 02:18:27 +00:00
0ecbc047e8 code cleanup 2012-09-06 23:41:03 +00:00
ee96cde864 style cleanup: whitespace 2012-08-26 11:35:43 +00:00
e982e9b04f fix [#32353] 'Focus'(center) applied on a rig should only take visible bones into account 2012-08-18 14:27:48 +00:00
502dfcce5f use job types when checking for jobs in areas of the code that made assumptions about job types (that could be wrong) 2012-08-15 10:23:06 +00:00
15bd03f958 fix for missing change to fluidsim from last commit and name jobs a more useful name - 'wm_job'. 2012-08-15 10:03:29 +00:00
97859e8709 add wm job types they are not used yet, so this just defines them for new jobs add add argument to search by job type. 2012-08-15 09:42:06 +00:00
b96c622015 style cleanup 2012-08-11 22:12:32 +00:00