Commit Graph

53417 Commits

Author SHA1 Message Date
Sergey Sharybin
ccf9afddba Fix T39608: Blender 2.70 crashes when performing union
This was a nasty bug which was caused by specific of how face-edge
attributes are stored in Carve.

Face pointer is used in the map key which works just fine in all
cases except for the cases when some face is getting freed after
it was stored in the map.

This might give real issues when new face is allocating because
it's possible new face would have the same address as the freed
one.

Such cases used to happen when union of separate manifolds is
needed for the operands AND jemalloc is enabled.

Solved by dropping attributes for the freed faces from the map.
Maybe not the fastest ever approach, but not sure how to make
it faster actually. Should work just fine. It only happens for
complex setups with intersecting manifolds in the operands.
2014-04-09 14:27:34 +06:00
Tamito Kajiyama
dfbd994aaf Freestyle: fix for typos in Python API docstrings. 2014-04-09 16:30:44 +09:00
Campbell Barton
a068dda5f3 Code cleanup: ifdef unused linklist for GPU drawobject's 2014-04-09 15:42:18 +10:00
Campbell Barton
9de24c82ba View3D: disable LOD when game engine is disabled or ifdef'd 2014-04-09 11:52:34 +10:00
Campbell Barton
b1f97a0cdb Code cleanup: remove Object.bbsize, sizefac and pad 2014-04-09 11:52:33 +10:00
Antony Riakiotakis
d8c4763fb0 More stack cleanup on GPU_buffers 2014-04-09 04:42:26 +03:00
Antony Riakiotakis
b5d3f183b0 Add material storage to derivedmesh.
The variables are considered invalid unless DM_update_materials is
called prior to use. Only use case currently is
mesh drawing. This helps with excessive allocation on the stack during
GPUObject creation, but may help elsewhere in the future as well.
2014-04-09 04:03:44 +03:00
Sergej Reich
6ffabfae85 Fix T39646: Rigid Body Constraints non functional on release builds
-ffast-math is evil, not sure why it was enabled...
I seems to work better on OSX but it's still not a good idea.

The SConscript for bullet is a mess, I don't understand why
we use different flags for different platforms in the first place.
Seems to be a historical artifact but I don't know enough about scons
to try and clean it up.
2014-04-09 01:48:44 +02:00
Campbell Barton
2496636a65 GPU: replace callocs with malloc since reallocs aren't cleared 2014-04-09 09:31:20 +10:00
Thomas Dinges
297a2223b5 Cycles / CUDA: Increase sm_2x registers to 40.
This fixes the ptaxs "ACCESS_VIOLATION" error and should allow our Linux and Windows build bots to compile again.
Unfortunately this comes with a performance penalty on sm_2x cards, so this is only a workaround for now. Branched Path is still globally disabled on GPU.
2014-04-08 23:25:54 +02:00
Campbell Barton
5580afb5df GHash/Edgehash: make simple iterator checking functions inline.
also remove NULL check, only a few areas made use of this.
2014-04-08 15:50:38 +10:00
Campbell Barton
ebaf3781fa Dyntopo: replace GHash with GSet, saves some memory 2014-04-08 14:45:48 +10:00
Campbell Barton
593b698b44 DerivedMesh: replace edgehash with edgeset 2014-04-08 14:45:04 +10:00
Campbell Barton
c82371fc06 Mempool: simplify memory chunk list building 2014-04-08 13:41:57 +10:00
Campbell Barton
4614c63d5d BMesh: bmesh_sfme now initializes the copy 2014-04-08 12:58:57 +10:00
Campbell Barton
7867f32fce BMesh: minor speedup, avoid calloc+assign, assign all members instead 2014-04-08 12:58:57 +10:00
Campbell Barton
412826a504 Mempool: delay allocating an initial chunk, its not always used 2014-04-08 12:58:56 +10:00
Antony Riakiotakis
cced07661a Matcaps.
Instead of setting color every time, just set it on material enable.
Handles all cases of surfaces. Thanks to Campbell for pointing out!
2014-04-08 01:25:49 +03:00
Campbell Barton
1e6d2b1dbf Code cleanup: remove paranoid NULL check 2014-04-08 07:46:28 +10:00
Campbell Barton
c61eb64f06 Fix T39635: Crash convening curve to mesh 2014-04-08 07:41:38 +10:00
Antony Riakiotakis
3ab0a4da73 Enable openmp in MinGW-w64 2014-04-07 19:01:19 +03:00
Antony Riakiotakis
574b0e2c30 Fix T39626 Matcaps not working in edit mode.
Set a while color before the draw call. This will be ineffective in GLSL
but will affect matcaps.
2014-04-07 21:49:02 +03:00
Bastien Montagne
1645f4fef0 Weekly UI messages fixes... 2014-04-07 20:31:15 +02:00
Bastien Montagne
833029ba02 Fix own rB8714ae09f894: Forgot to handle bone constraints in versionning code! 2014-04-07 19:44:27 +02:00
Antony Riakiotakis
708b8d8716 Color pickers:
* Code Cleanup
* Fix some more color correction cases that were left unattended. (NDOF,
resetting the operation in circle pickers)
2014-04-07 19:35:29 +03:00
Bastien Montagne
6eb20ca048 Fix own broken rB95b25e7333c4 (crash on any undo op :/).
Issue here was that buttons_texture_context_compute() was getting scene from (button-customized) context,
before the button paths (and hence, context) had been updated. So after an undo, it was getting an invalid
(freed by undo) scene pointer.

Now update BCONTEXT_SCENE path before calling buttons_texture_context_compute().
2014-04-07 17:17:40 +02:00
Martijn Berger
163a3212b4 OpenCL Change opencl_assert to be more like cuda assert where possible.
added some extra warnings and feedback if things go wrong
2014-04-07 16:17:20 +02:00
Martijn Berger
b224fbf2e7 OpenCL + AMD adapt kernel to newer driver 2014-04-07 14:01:31 +02:00
Campbell Barton
5dc23e6df8 Code cleanup: make the source G rated again. 2014-04-07 20:44:26 +10:00
Campbell Barton
1279c39609 Code cleanup: use parens around multi-line defines. 2014-04-07 20:38:16 +10:00
Campbell Barton
ea01b24bba Fix T39623: deleting an object crashes 2014-04-07 20:25:52 +10:00
Bastien Montagne
95b25e7333 Fix T39562: Properties panel Pinning is broken
'scene' was simply not handled in button context.
2014-04-07 12:23:24 +02:00
Bastien Montagne
8714ae09f8 Fix T39563: Tiny unit-display problem in constraint panels.
There is no good solution here, since RNA props can only have one type/unit.
Tried to find the less worse one - have different RNA props for same DNA value
(a bit like the angle/length for camera lens).

Also fixed two other issues with Transform conctraint:
* Angle were still in degrees (yes, another backward-compatibility breacking).
* Scale was absolute, unlike loc/rot.

Also cleaned up a bit the code, replaced some magic numbers by proper enums, ...
2014-04-07 12:17:01 +02:00
Campbell Barton
f3db0389c0 Correct assert for RNA IDProps 2014-04-07 19:51:43 +10:00
Campbell Barton
b95e826841 Code cleanup: remove unused functions and convert int -> bool 2014-04-07 17:00:08 +10:00
Campbell Barton
e51841cbca Code cleanup: project gpencil in float coords & delete outdated comments 2014-04-07 15:21:01 +10:00
Campbell Barton
2527d0ce8f Dyntopo: minor speedups with bmesh use. 2014-04-07 13:48:36 +10:00
Campbell Barton
212717416b Dyntopo: avoid mask layer lookups while adding/removing verts 2014-04-07 13:05:39 +10:00
Campbell Barton
5c5d643938 Mempool: use define for used freeword and correct define 2014-04-07 12:52:23 +10:00
Campbell Barton
13d90ab8f7 Mempool: minor optimization to building free pointer list 2014-04-07 12:38:32 +10:00
Campbell Barton
aee82b4b2c Mempool: fix own error in recent commit
chunks must be added in order for iteration.
2014-04-07 12:38:32 +10:00
Antony Riakiotakis
aabf4154e5 Fix building for Windows. 2014-04-07 04:18:03 +03:00
Mitchell Stokes
fe05f97841 BGE: Multi-threading animation updates and skinning.
This required BL_ArmatureObject to have tighter control over armatures and poses.
Also, (Blender) armature objects are now copied instead of shared between
BL_ArmatureObjects to avoid race conditions. Also, due to the armature copy,
shape key drivers need a bit of extra fiddling to get the correct armature copy.

Initially OpenMP was used for threading, but then BLI_task was used due to being
less compiler dependent.

This commit also places time spent on skinning updates in the Animation
profiler category (was previously under the Rasterizer category).
2014-04-06 16:30:59 -07:00
Campbell Barton
be8b4b8b0c Todo T36849: support XDG thumbnail management standard 2014-04-07 08:43:46 +10:00
brita
1194037327 blenderplayer - Reviewed some command line options and the respective help
Doubts: are written as comments in the code
Current Problems:
 - stereo modes sometimes have different names and are ordered differently everywhere (blender properties panel names and tooltips, blenderplayer cmndline)
 - dome mode as several options, but can only take one at a time, like -D mode bla -D tilt X -D ...
 - gameoptions are also given one at a time, like above, but with an assignment -g option = X  . This is inconsistent.
 - gameoptions need to be reviewed and docummented
 - parent to window (-i) is useful for what? (there is no wiki on this either)
 - there is no support for verbose options like --help (blender itself supports it)

Reviewers: dfelinto, moguri

CC:

Differential Revision: https://developer.blender.org/D312
2014-04-06 14:38:15 -07:00
Bastien Montagne
07f8c5c3b6 Better code for (bone axis + roll) to mat
See T39470 and D436. Code by @tippisum, with some minor edits by @mont29.

Tested with various rigs, including Rigify, CGcookie flex rig, and gooseberry/pataz caterpillar.

Riggers, please test it, no change expected in behaviour.

Reviewers: aligorith

CC: tippisum

Differential Revision: https://developer.blender.org/D436
2014-04-06 19:15:50 +02:00
Bastien Montagne
959ec27ac9 Install_deps.sh: tweaks to support new LLVM-3.4.
Issue is, looks like Debian testing's graphic backend now uses LLVM-3.4,
which conflicts with 3.3 in Blender and makes it crash.

So add support to handle 3.4, by both allowing to force a specific version for some libs,
and switching back to head of official repo for OSL.
2014-04-06 17:50:50 +02:00
Bastien Montagne
ae792e930c Fix T39479: Transform mouse constraint fails in some situations.
Some more float precision issue...
2014-04-06 11:11:56 +02:00
Campbell Barton
43fb105ff1 Move LIKELY/UNLIKELY into header 2014-04-06 17:25:50 +10:00
Campbell Barton
43a201662a Guarded Alloc: use UNLIKELY for debug memset 2014-04-06 12:58:10 +10:00