Dynamic Paint: Added a new "smoothness" parameter for waves.

It greatly helps getting rid of that "noise" that occurs if you use really steep objects (like cubes) as a brush. New default value is 1.0 which is just high enough to only get rid of the sharpest spikes, so if you want really smooth waves it's better use higher values.

This also seems to "fix" bug [#35413].

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58850 954f8c5b-7b00-dc11-b283-0030488c597c
fix for [#36260] 2,300 Objects Makes Blender Unresponsive

- performance of outliner was low because of unoptimal data structures.
- now it uses BLI_mempool instead of custom mempool and GHash to make searches for duplicates faster.
- also fix undesired behaviour of BLI_mempool_as_arrayN

thanks to Campbell Barton and Lukas Tönne for helping me get a better fix put together.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58855 954f8c5b-7b00-dc11-b283-0030488c597c
skip BLI_STATIC_ASSERT for Coverity builds (caused parse error)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58857 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles / SSS:
* Render Passes are now available for Subsurface Scattering (Direct, Indirect and Color pass). 

This is part of my GSoC project, SVN merge of r58587, r58828 and r58835.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58858 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #36288, Renderlayer toggles behave unexpected in Outliner. The outliner was using the wrong flag variable for toggling render layers, was setting pass flags instead of the layer on/off flag.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58861 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: replace bmesh_radial_face_find -> BM_edge_in_face


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58862 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: bmesh use 'const' for query functions.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58863 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: remove duplicate checks


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58864 954f8c5b-7b00-dc11-b283-0030488c597c
fix error in pose bone selection - head/tail mixup


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58865 954f8c5b-7b00-dc11-b283-0030488c597c
correct invalid sizeof() use in bmesh (harmless in practice)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58866 954f8c5b-7b00-dc11-b283-0030488c597c
correct edgeloop tagging assigning an uninitialized value, also remove redundant NULL check in edgenet fill


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58867 954f8c5b-7b00-dc11-b283-0030488c597c
add versions of MEM_reallocN, MEM_recallocN which take a string arg so new allocs have an ID, changing existing functions signatures would be too disruptive at the moment.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58868 954f8c5b-7b00-dc11-b283-0030488c597c
fix for over-allocation in BKE_pbvh_search_gather, BKE_pbvh_gather_proxies,
each element was having the size of PBVHNode allocated rather then the size of a pointer (8 vs 184 bytes here)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58869 954f8c5b-7b00-dc11-b283-0030488c597c
bmesh: improve limited dissolve result

iteratively dissolve the best edge/vert, updating the heap as the dissolve runs.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58879 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles: 
* Forgot to rename some SSS pass strings.
* Some typo fixes. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58880 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles / SSS passes:
* Connecting the new passes in the compositor caused a crash, forgot to register the new passes in the compositor operations code. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58881 954f8c5b-7b00-dc11-b283-0030488c597c
add missing NULL checks from BKE_constraint_get_typeinfo(), so constraints from the future dont crash.
also remove some redundant NULL checks.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58882 954f8c5b-7b00-dc11-b283-0030488c597c
minor changes to BLI_heap, save some CPU cycles.
added an assert for incorrect use of BLI_heap_remove


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58883 954f8c5b-7b00-dc11-b283-0030488c597c
fix for strange error with BGE 2d filter code,
RAS_2DFilterManager::RenderFilters was casting an int to an unsigned int, then doing a subtraction which would give a negative number.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58884 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: remove unused define, correct header guard mismatch, add NULL check so DM_to_mesh() can have a NULL object passed (currently not used) and remove redundant NULL check.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@58885 954f8c5b-7b00-dc11-b283-0030488c597c