Same mingw fix as for compile

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46009 954f8c5b-7b00-dc11-b283-0030488c597c
style cleanup: changes to brace placement / newlines - for/while/if/switch


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46010 954f8c5b-7b00-dc11-b283-0030488c597c
Release Cycles for 2.64 begins.
* BCon1: Alpha. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46013 954f8c5b-7b00-dc11-b283-0030488c597c
fix for crash when multires subdividing a mesh with no faces (new bug in bmesh grr!)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46014 954f8c5b-7b00-dc11-b283-0030488c597c
fix for incorrect selection check in opencollada integration.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46015 954f8c5b-7b00-dc11-b283-0030488c597c
fix memory leak in BM_face_copy()

note that this doesnt run when duplicating faces normally, only way to cause this bug I could find was to knife cut a 33+ sided ngon with multi-res applied.

also small improvement not to grow the array but allocate at once if needed.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46016 954f8c5b-7b00-dc11-b283-0030488c597c
Plugin system:
* Remove RNA, Operator and UI for Texture and Sequence plugins.
Since 2.5x no effort has been done to bring that back, so there is simply no reason in keeping that code and the UI for that ;-)
* Low Level code still exists and is unchanged. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46017 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: 
- replace inline face UV center calc.
- use const float[3] for mesh and uv functions.
- remove unused define


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46018 954f8c5b-7b00-dc11-b283-0030488c597c
* UI fix for last commit, forgot to remove the plugin text strings. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46019 954f8c5b-7b00-dc11-b283-0030488c597c
Style cleanup in own compositor nodes

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46020 954f8c5b-7b00-dc11-b283-0030488c597c
Add MingW as "platform"

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46021 954f8c5b-7b00-dc11-b283-0030488c597c
bump commit count, mingw32 -> mingw64

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46022 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles: merging features from tomato branch.

=== BVH build time optimizations ===

* BVH building was multithreaded. Not all building is multithreaded, packing
  and the initial bounding/splitting is still single threaded, but recursive
  splitting is, which was the main bottleneck.

* Object splitting now uses binning rather than sorting of all elements, using
  code from the Embree raytracer from Intel.
  http://software.intel.com/en-us/articles/embree-photo-realistic-ray-tracing-kernels/

* Other small changes to avoid allocations, pack memory more tightly, avoid
  some unnecessary operations, ...

These optimizations do not work yet when Spatial Splits are enabled, for that
more work is needed. There's also other optimizations still needed, in
particular for the case of many low poly objects, the packing step and node
memory allocation.

BVH raytracing time should remain about the same, but BVH build time should be
significantly reduced, test here show speedup of about 5x to 10x on a dual core
and 5x to 25x on an 8-core machine, depending on the scene.

=== Threads ===

Centralized task scheduler for multithreading, which is basically the
CPU device threading code wrapped into something reusable.

Basic idea is that there is a single TaskScheduler that keeps a pool of threads,
one for each core. Other places in the code can then create a TaskPool that they
can drop Tasks in to be executed by the scheduler, and wait for them to complete
or cancel them early.

=== Normal ====

Added a Normal output to the texture coordinate node. This currently
gives the object space normal, which is the same under object animation.

In the future this might become a "generated" normal so it's also stable for
deforming objects, but for now it's already useful for non-deforming objects.

=== Render Layers ===

Per render layer Samples control, leaving it to 0 will use the common scene
setting.

Environment pass will now render environment even if film is set to transparent.

Exclude Layers" added. Scene layers (all object that influence the render,
directly or indirectly) are shared between all render layers. However sometimes
it's useful to leave out some object influence for a particular render layer.
That's what this option allows you to do.

=== Filter Glossy ===

When using a value higher than 0.0, this will blur glossy reflections after
blurry bounces, to reduce noise at the cost of accuracy. 1.0 is a good
starting value to tweak.

Some light paths have a low probability of being found while contributing much
light to the pixel. As a result these light paths will be found in some pixels
and not in others, causing fireflies. An example of such a difficult path might
be a small light that is causing a small specular highlight on a sharp glossy
material, which we are seeing through a rough glossy material. With path tracing
it is difficult to find the specular highlight, but if we increase the roughness
on the material the highlight gets bigger and softer, and so easier to find.

Often this blurring will be hardly noticeable, because we are seeing it through
a blurry material anyway, but there are also cases where this will lead to a
loss of detail in lighting.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46023 954f8c5b-7b00-dc11-b283-0030488c597c
Addons: "persistent" parameter for addon_utils.enable(), so that you can enable
addons from a startup script and keep them enabled after loading .blend files.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46024 954f8c5b-7b00-dc11-b283-0030488c597c
Point Cache: allow baking external smoke caches. This needs to be cleaned up
a bit, I couldn't fully understand how the External setting is supposed to
work to make further changes, but this should make it work at least.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46025 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles: fix for CUDA build.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46026 954f8c5b-7b00-dc11-b283-0030488c597c
Fix: #31095: Incorrect clamping of labels for multibyte languages

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46027 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #31117: Segfault when removing Meshdeform Modifier

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46028 954f8c5b-7b00-dc11-b283-0030488c597c
Camera tracking: if there's no image for current frame display default grid
and allow to interact with tracks for operators which doesn't require image.

Merged from tomato branch: svn merge ^/branches/soc-2011-tomato -r45624:45625



git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@46030 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: replace some long ELEM7 checks with macro OB_TYPE_SUPPORT_EDITMODE()


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