Commit Graph

37969 Commits

Author SHA1 Message Date
Brecht Van Lommel
44924a2e5e Cycles: fix for CUDA build. 2012-04-28 09:10:20 +00:00
Brecht Van Lommel
2c592b0d96 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.
2012-04-28 09:00:11 +00:00
Brecht Van Lommel
61752c926d 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.
2012-04-28 09:00:09 +00:00
Brecht Van Lommel
07b2241fb1 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.
2012-04-28 08:53:59 +00:00
Nathan Letwory
fd2439f47a bump commit count, mingw32 -> mingw64 2012-04-28 08:47:37 +00:00
Nathan Letwory
5d70a6aedf Add MingW as "platform" 2012-04-28 08:45:55 +00:00
Sergey Sharybin
3cceab304a Style cleanup in own compositor nodes 2012-04-28 08:43:24 +00:00
Thomas Dinges
de923eba57 * UI fix for last commit, forgot to remove the plugin text strings. 2012-04-28 08:32:00 +00:00
Campbell Barton
950ed69297 code cleanup:
- replace inline face UV center calc.
- use const float[3] for mesh and uv functions.
- remove unused define
2012-04-28 08:29:20 +00:00
Thomas Dinges
0281ff408d 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.
2012-04-28 08:27:09 +00:00
Campbell Barton
f8f7523fb2 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.
2012-04-28 07:43:21 +00:00
Campbell Barton
3553bf6db0 fix for incorrect selection check in opencollada integration. 2012-04-28 07:02:44 +00:00
Campbell Barton
f1d680d4b5 fix for crash when multires subdividing a mesh with no faces (new bug in bmesh grr!) 2012-04-28 07:00:53 +00:00
Thomas Dinges
d95887d756 Release Cycles for 2.64 begins.
* BCon1: Alpha.
2012-04-28 06:40:12 +00:00
Campbell Barton
b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
Nathan Letwory
09dc600839 Same mingw fix as for compile 2012-04-28 06:28:07 +00:00
Campbell Barton
dc313ff00d add back lasso tool in the UV editor (Ctrl+LMB / Ctrl+Shift+LMB) 2012-04-28 01:59:21 +00:00
Nathan Letwory
a299855e34 Changes to get mingw buildslaves going. 2012-04-27 13:18:55 +00:00
Campbell Barton
dbe68289f4 fix for select flushing in UV-sync-selection mode (regression from 2.62), both border select and circle select failed in edge and vertex mode (though de-selecting worked ok). 2012-04-27 12:44:32 +00:00
Jens Ole Wund
5d6f746c87 Patch by Jose Geraldo Brito
Tracker 31061
It cures the stiff quad option and does not seem to harm.
Nowever the stiff quads behave strange in a ngom mesh. 
I can imagine that other parts in the sofybody module may be broken by the ngon structure. Well ngons and softbodies are not relly friends:
negon wants less edges softbodies would work better if more structural edges were possible
2012-04-27 11:49:09 +00:00
Campbell Barton
da1e128d77 fix for modal timer template, wasnt updated for changes to themes. 2012-04-27 10:00:21 +00:00
Campbell Barton
4469ab9857 code cleanup:
- move lasso functions into BLI (were in 3D view but UV editor needs access)
- remove unused UV functions (ones that assumed 3-4 sized UVs only)
2012-04-27 07:26:28 +00:00
Campbell Barton
bb4942c920 code cleanup: quiet msvc warnings 2012-04-27 03:01:27 +00:00
Campbell Barton
2700064c0a cleanup msvc build flags, many were included more than once.
also make use of C_WARNINGS, CXX_WARNINGS as other platforms do.
2012-04-27 02:29:37 +00:00
Campbell Barton
6e2cff8c9f rename WholeCharacter in C too, add pthreads include back for msvc which needs it. 2012-04-26 18:18:09 +00:00
Campbell Barton
458600d692 don't have spaces in idnames, confuses py types:
http://www.blender.org/documentation/blender_python_api_2_62_4/bpy.types.Whole%20Character.html
2012-04-26 18:07:15 +00:00
Campbell Barton
b801c6098a remove pthread include for windows, after this was added I couldn't build anymore with mingw, gave and error with ./source/icons/winblender.rc 2012-04-26 17:56:21 +00:00
Sergey Sharybin
802998b971 And for sure we're in release stage now! 2012-04-26 17:51:41 +00:00
Sergey Sharybin
e75e40c972 Release commit, 2.63!
Special thanks to Mango team for awesome splash screen!
And everybody else who made this release! :)
2012-04-26 17:49:48 +00:00
Brecht Van Lommel
73a6ae7106 Fix crash clicking Render button in render layer compositing node. Actually
this crash could happen in other situations too, problem was a bug in the
jobs system. A job could be suspended, and the operator would stop before
the job was actually done since it was not marked as running.
2012-04-26 17:48:07 +00:00
Sergey Sharybin
7e5c02672a Fix for undefined reference to abort() in outliner selection module 2012-04-26 17:01:04 +00:00
Campbell Barton
d3c1ece201 fix [#31113] bmesh.types.BMLayerCollection getter calculate key indices wrong (own fault)
also add check so layer.name won't crash incase the layer becomes invalid.
2012-04-26 16:32:30 +00:00
Campbell Barton
ef0a4c0ba9 fix for bevel modifier creating invalid geometry - simply tell BM_face_split() to check for doubles. 2012-04-26 15:38:16 +00:00
Campbell Barton
6d2cd24010 fix memory leak in validating mesh and remove unneeded knife operator settings store. 2012-04-26 15:20:26 +00:00
Brecht Van Lommel
ec6c3f632e Fix #31066: cycles keeps rendering in viewport after window closed. 2012-04-26 12:30:37 +00:00
Brecht Van Lommel
6d4841ba82 Fix #31058: missing Simplify panel for cycles. 2012-04-26 12:13:26 +00:00
Brecht Van Lommel
426daf8cc5 Fix related to #31067: missing update when toggling Premultiply on a sequencer strip. 2012-04-26 12:13:22 +00:00
Thomas Dinges
41ebd0bb77 * Compile fix for recent Outliner header cleanup. 2012-04-26 11:48:36 +00:00
Bastien Montagne
f92fcbd413 Minor fix in response to Koji Iigura's mail. Own error, sorry about that (I tend to forget not all OS are utf-8 yet :/ ). 2012-04-26 11:23:37 +00:00
Campbell Barton
2118d3c19c code cleanup: bmesh comments/todos, no functional changes. 2012-04-26 08:27:50 +00:00
Nathan Letwory
c30dba9a92 Fix OIIO dll copying for win32-mingw 2012-04-26 08:04:11 +00:00
Campbell Barton
5b0fcbd8f9 outliner header cleanup (copy pasted headers when split up Im guessing) 2012-04-26 05:17:54 +00:00
Campbell Barton
61015fbd8c fix for memory leak in the knife tool 2012-04-26 04:41:27 +00:00
Campbell Barton
bd7d3c5e9d removed unneeded fnmatch include from outliner, comment files as needing header cleanup. 2012-04-26 04:15:27 +00:00
Campbell Barton
af7eb3f210 fix for buffer overrun crash with saving scene name longer then 24 characters.
writing render info would try write= 64 length string into 24 length buffer.

updated py script to extract render info too.
2012-04-26 04:03:25 +00:00
Campbell Barton
0daa5b0c47 bmesh: inset tool depth used bad normals for edge verts. 2012-04-26 03:40:10 +00:00
Campbell Barton
2f74471dd9 fix invalid memcpy() use in text editor (backspace would call memcpy with overlapping source and destination). 2012-04-26 02:24:55 +00:00
Thomas Dinges
3a94746169 2.6 Ocean Modifier UI:
* Fix an alignment issue, column_flow layout apparently does not use the whole width, leaving a small gap on the right side. This should be fixed in the layout engine, but too close to release now.
2012-04-25 18:12:41 +00:00
Campbell Barton
d53133d25f fix for border de-selecting with sync selection 2012-04-25 11:31:01 +00:00
Antony Riakiotakis
7ac4bd9105 Enable building of the installer with MinGW-w64, patch by Caleb Joseph (Dobz) thanks a lot! 2012-04-25 11:15:55 +00:00