7 years agoCycles: add dedicated UV Map node, easier to find and has convenient auto complete.
Kevin Dietrich [Wed, 2 Apr 2014 09:40:29 +0000 (11:40 +0200)]
Cycles: add dedicated UV Map node, easier to find and has convenient auto complete.

Fixes T37954.

Reviewed By: brecht, dingto

Differential Revision:

7 years agoFix T39547: Toggling render passes on active scene does not update
Lukas Tönne [Wed, 2 Apr 2014 08:59:35 +0000 (10:59 +0200)]
Fix T39547: Toggling render passes on active scene does not update
render layer nodes in a pinned tree from different scene.

The way these updates work is a nasty legacy hack:$277

This function is called //very frequently// by the get_from_context
method. However, this does not get called for pinned node trees, so
when showing a different scene's compositing nodes in the editor they
may not get updated correctly.

Now moved this update call out of get_from_context so it happens in any
case. Will be called no more frequently than before (on every redraw).
Eventually the depsgraph should handle this more precisely, it's just a
simple ID dependency anyway ...

7 years agoFix T39545: "Track selected markers", does not stop at end of video
Sergey Sharybin [Wed, 2 Apr 2014 08:07:44 +0000 (14:07 +0600)]
Fix T39545: "Track selected markers", does not stop at end of video

Issue was cauzed by some weird clamping of current frame. Not sure
why it was here at the first point -- it's from the day0 of movie
clip datablock.

7 years agoUI: support for dragging popups title area
Campbell Barton [Wed, 2 Apr 2014 07:42:08 +0000 (18:42 +1100)]
UI: support for dragging popups title area

7 years agoCode cleanup: avoid redundant lookups for subwindows
Campbell Barton [Wed, 2 Apr 2014 06:33:20 +0000 (17:33 +1100)]
Code cleanup: avoid redundant lookups for subwindows

7 years agoFix for BLI_rng_shuffle_array noted by mont29
Campbell Barton [Tue, 1 Apr 2014 23:09:48 +0000 (10:09 +1100)]
Fix for BLI_rng_shuffle_array noted by mont29

7 years agoCode cleanup: use uint64_t for BLI_rand
Campbell Barton [Tue, 1 Apr 2014 22:57:48 +0000 (09:57 +1100)]
Code cleanup: use uint64_t for BLI_rand

7 years agoDyntopo: Delete OpenGL buffers of nodes that do not have any more
Antony Riakiotakis [Tue, 1 Apr 2014 22:40:05 +0000 (01:40 +0300)]
Dyntopo: Delete OpenGL buffers of nodes that do not have any more

It is possible to end up with such nodes using brushes in aggressive
collapse mode. Those nodes should normally be cleaned up, since they can
never be actually reused (adding more geometry to a node requires the
node having some geometry to begin with) but until we support dynamic
nodes, better delete those to avoid binding graphics driver resources.

If such zero elements buffers were used, GL error out of memory would be

7 years agoFix for building with MSVC2008
Campbell Barton [Tue, 1 Apr 2014 22:16:47 +0000 (09:16 +1100)]
Fix for building with MSVC2008

7 years agoFix linking on Mac OS X
Campbell Barton [Tue, 1 Apr 2014 22:01:48 +0000 (09:01 +1100)]
Fix linking on Mac OS X

D345 from Aleksandr Derbenev

7 years agoFix some redrawing and possibly other issues in dyntopo:
Antony Riakiotakis [Tue, 1 Apr 2014 21:55:19 +0000 (00:55 +0300)]
Fix some redrawing and possibly other issues in dyntopo:

When node face gets deleted, added or exchanged, the nodes should update
their draw buffers, normals and bounding boxes. This was not being done
before so there were graphical glitches apparent, especially in collapse

7 years agoSculpt: the thread controls where unintentianlly greyed out along with capabilities...
Jens Verwiebe [Tue, 1 Apr 2014 20:52:10 +0000 (22:52 +0200)]
Sculpt: the thread controls where unintentianlly greyed out along with capabilities.has_gravity condition

7 years agoFix T39550: has bad default
Campbell Barton [Tue, 1 Apr 2014 19:40:39 +0000 (06:40 +1100)]
Fix T39550: has bad default

7 years agoRevert 7955cb78d it causes GPU_pbvh_buffers_diffuse_changed to always
Antony Riakiotakis [Tue, 1 Apr 2014 17:17:23 +0000 (20:17 +0300)]
Revert 7955cb78d it causes GPU_pbvh_buffers_diffuse_changed to always
return false, causing update of all pbvh nodes all the time.

7 years agoMake matcaps suck less
Antony Riakiotakis [Sat, 29 Mar 2014 09:40:26 +0000 (11:40 +0200)]
Make matcaps suck less

This commit does various changes for matcaps:

One is taking advantage of drawing with pbvh (which would only happen
with dyntopo previously) and drawing with partial redraw during

The second one is support for masks. To make this work in the special
case of multires, which uses flat shading, I use the only available flat
shaded builtins in OpenGL 2.0 which are color and secondary color.

Abusing colors in that way is also essential for flat shading to work if
we are to use pbvh draw in multires, since it is the color that is being
interpolated flatly, not the normal (which can only interpolated
smoothly). The pbvh drawing code for multires used last triangle
element's normal to compute the shading which would only produce smooth
results. This could change if we did the shading in the vertex shader
for flat shaded primitives, but this is more complex and makes it harder
to have one shader to rule the mole.

Also increased the brightness of the default diffuse color for
sculpting. This should be useful since artists like to tweak the
lighting settings and it will give them the full dynamic range of the
lights, but also it helps with correct brightness of sculpted matcaps.

Reviewers: brecht

Differential Revision:

7 years agoImage and clip editor: change zoom step to end up at powers of two.
Harshit Mehta [Tue, 1 Apr 2014 15:33:43 +0000 (17:33 +0200)]
Image and clip editor: change zoom step to end up at powers of two.

When you press zoom 3 times you will now get 2:1, 4:1, 8:1, etc. Fixes T36916.

Reviewed By: brecht

Differential Revision:

7 years agoFix T39378: Revert, Recover Last Session and Load Factory Settings have no prompt.
Grigory Revzin [Tue, 1 Apr 2014 15:54:37 +0000 (17:54 +0200)]
Fix T39378: Revert, Recover Last Session and Load Factory Settings have no prompt.

Now they do, to make it harder to accidentally press them and lose work.

Reviewed By: brecht, carter2422

Differential Revision:

7 years agoFix T39546: blender crash on open recent file, when tracking is still in progress
Sergey Sharybin [Tue, 1 Apr 2014 12:43:49 +0000 (18:43 +0600)]
Fix T39546: blender crash on open recent file, when tracking is still in progress

7 years agoFix T39537: Multi button editing is unreliable
Campbell Barton [Tue, 1 Apr 2014 11:10:41 +0000 (22:10 +1100)]
Fix T39537: Multi button editing is unreliable

7 years agoRNA: clamp colors min to 0.0
Campbell Barton [Tue, 1 Apr 2014 10:29:49 +0000 (21:29 +1100)]
RNA: clamp colors min to 0.0

any colors which need to be negative can explicitly pass in a range.

7 years agoFix T38860: Video preview in VSE shows a distorted and jagged appearance at scale 1:1
Sergey Sharybin [Tue, 1 Apr 2014 10:40:31 +0000 (16:40 +0600)]
Fix T38860: Video preview in VSE shows a distorted and jagged appearance at scale 1:1

Issue was cauzed by the set zoom ratio optator which didn't really set pixel zoom to 1:1.

7 years agoFix an unused function warning without openmp present, some typos
Jens Verwiebe [Tue, 1 Apr 2014 09:23:28 +0000 (11:23 +0200)]
Fix an unused function warning without openmp present, some typos

7 years agoFix for "Show Diffuse Color" was having affect on mesh without mask
Sergey Sharybin [Tue, 1 Apr 2014 08:00:15 +0000 (14:00 +0600)]
Fix for "Show Diffuse Color" was having affect on mesh without mask

Only happened with VBOs enabled.

7 years agoCode cleanup: use bool instead of int
Sergey Sharybin [Tue, 1 Apr 2014 07:55:25 +0000 (13:55 +0600)]
Code cleanup: use bool instead of int

7 years agoFix T39446: Blender Crashes when Camera Tracking
Sergey Sharybin [Tue, 1 Apr 2014 07:14:37 +0000 (13:14 +0600)]
Fix T39446: Blender Crashes when Camera Tracking

Issue is likely caused by thread-unsafe nature of IMB_freeImBuf
which might lead to race condition in some circumstances.

Now made it thread-safe and from Sebastian's tests seems crash is
gone now, so hopefully the root of the issue is finally nailed down.

7 years agoCorrection for error in own recent commit (makesrna c++ api, un-init var)
Campbell Barton [Tue, 1 Apr 2014 05:46:38 +0000 (16:46 +1100)]
Correction for error in own recent commit (makesrna c++ api, un-init var)

7 years agoBGE doc cleanup: Some small cleanups in the BGE docs:
Mitchell Stokes [Tue, 1 Apr 2014 05:20:03 +0000 (22:20 -0700)]
BGE doc cleanup: Some small cleanups in the BGE docs:

  * Fixing trailing whitespace in some files
  * Fixing some indentation
  * SCA_PythonController.owner is now documented
  * SCA_PythonKeyboard members now use the member directive instead of function

7 years agoCode cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT define
Campbell Barton [Tue, 1 Apr 2014 00:34:00 +0000 (11:34 +1100)]
Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT define

7 years agoCode cleanup: use macro to find vertex in face
Campbell Barton [Mon, 31 Mar 2014 23:08:54 +0000 (10:08 +1100)]
Code cleanup: use macro to find vertex in face

7 years agoFix for leak in freestyle transformVertices
Campbell Barton [Mon, 31 Mar 2014 22:43:40 +0000 (09:43 +1100)]
Fix for leak in freestyle transformVertices

7 years agoFix for leak in freestyle FitCurve
Campbell Barton [Mon, 31 Mar 2014 22:14:59 +0000 (09:14 +1100)]
Fix for leak in freestyle FitCurve

7 years agoFix for leak in BKE_sequence_sound_init
Campbell Barton [Mon, 31 Mar 2014 21:44:00 +0000 (08:44 +1100)]
Fix for leak in BKE_sequence_sound_init

7 years agoChanges to openmp threads commit (UI and RNA)
Campbell Barton [Mon, 31 Mar 2014 21:30:24 +0000 (08:30 +1100)]
Changes to openmp threads commit (UI and RNA)

- use same names as render threads
- remove OpenMP from UI
- remove details from tips

7 years agoUsual UI messages fixes...
Bastien Montagne [Mon, 31 Mar 2014 19:15:56 +0000 (21:15 +0200)]
Usual UI messages fixes...

7 years agoFix T39524: Backface culling is always on in Textured view in BI.
Bastien Montagne [Mon, 31 Mar 2014 18:05:09 +0000 (20:05 +0200)]
Fix T39524: Backface culling is always on in Textured view in BI.

Special case I did not think about in own previous culling fix (rB0f95149a7849).

7 years agoCycles: fix 3-5% performance regression in msvc builds caused by a typo in stackcheck...
Sv. Lockal [Mon, 31 Mar 2014 17:44:02 +0000 (21:44 +0400)]
Cycles: fix 3-5% performance regression in msvc builds caused by a typo in stackchecking flags.

7 years agoSculpt/dytopo: remove debug prints and add explanations
Jens Verwiebe [Mon, 31 Mar 2014 17:11:52 +0000 (19:11 +0200)]
Sculpt/dytopo: remove debug prints and add explanations

7 years agoRevert using slider for detail size on previous commit, makes changing
Antony Riakiotakis [Mon, 31 Mar 2014 17:01:28 +0000 (20:01 +0300)]
Revert using slider for detail size on previous commit, makes changing
detail slightly harder.

7 years agoMake dyntopo detail size maximum smaller (more than 40 pixels should not
Antony Riakiotakis [Mon, 31 Mar 2014 16:30:51 +0000 (19:30 +0300)]
Make dyntopo detail size maximum smaller (more than 40 pixels should not
be needed according to mapping in code) and change the property to

7 years agoFix deffects reported by CoverityScan (nothing dramatic, but at least one was a ...
Bastien Montagne [Mon, 31 Mar 2014 14:42:15 +0000 (16:42 +0200)]
Fix deffects reported by CoverityScan (nothing dramatic, but at least one was a (minor) bug).

7 years agoFix playercompile after boolifications
Jens Verwiebe [Mon, 31 Mar 2014 12:58:13 +0000 (14:58 +0200)]
Fix playercompile after boolifications

7 years agoFix T39291: "Stepped" F-curve modifier does not work as expected when stacked after...
Joshua Leung [Mon, 31 Mar 2014 12:51:45 +0000 (01:51 +1300)]
Fix T39291: "Stepped" F-curve modifier does not work as expected when stacked after other modifiers

Evaluation of time-warping modifiers ("Stepped" is one of them) didn't actually
end up distorting the time to look up what values other modifiers in the stack
generate. This meant that when a "stepped" fmodifier was on top of a "generator",
the stepped fmodifier looked like it didn't have any effect.

(This fix requires a bit of testing still, so should be left for 2.71)

7 years agoFix compile due forgot remove BKE_scene_omp_threads_update from patch
Jens Verwiebe [Mon, 31 Mar 2014 12:53:30 +0000 (14:53 +0200)]
Fix compile due forgot remove BKE_scene_omp_threads_update from patch

7 years agoCode cleanup: use bool
Campbell Barton [Mon, 31 Mar 2014 12:39:08 +0000 (23:39 +1100)]
Code cleanup: use bool

7 years agoCode cleanup: pack BezTriple a little (though size remains same)
Campbell Barton [Mon, 31 Mar 2014 08:56:00 +0000 (19:56 +1100)]
Code cleanup: pack BezTriple a little (though size remains same)

7 years agoVector handles were hidden but were allowed to slide apparently
Sergey Sharybin [Mon, 31 Mar 2014 12:32:27 +0000 (18:32 +0600)]
Vector handles were hidden but were allowed to slide apparently

7 years agoDidn't meant to commit debug-only-code in the previous commit!
Sergey Sharybin [Mon, 31 Mar 2014 12:02:46 +0000 (18:02 +0600)]
Didn't meant to commit debug-only-code in the previous commit!

7 years agoCode cleanup: use bool/true/false in movieclip.c
Sergey Sharybin [Mon, 31 Mar 2014 11:59:50 +0000 (17:59 +0600)]
Code cleanup: use bool/true/false in movieclip.c

7 years agoFix T39525: branched path + no lights + disabled use all lights option crash.
Brecht Van Lommel [Mon, 31 Mar 2014 11:51:52 +0000 (13:51 +0200)]
Fix T39525: branched path + no lights + disabled use all lights option crash.

7 years agoSculpt/dyntopo: Make the omp threads configurable to overcome performance issues
Jens Verwiebe [Mon, 31 Mar 2014 11:51:40 +0000 (13:51 +0200)]
Sculpt/dyntopo: Make the omp threads configurable to overcome performance issues
- autodetect optimal default, which typically avoids HT threads
- can store setting in .blend per scene
- this does not touch general omp max threads, due i found other areas where the calculations are fitting for huge corecount
- Intel notes, some of the older generation processors with HyperThreading would not provide significant performance boost for FPU intensive applications. On those systems you might want to set OMP_NUM_THREADS = total number of cores (not total number of hardware theads).

7 years agoFix T39510, Fix T39523: camera motion blur not working correct after recent changes.
Brecht Van Lommel [Mon, 31 Mar 2014 11:36:51 +0000 (13:36 +0200)]
Fix T39510, Fix T39523: camera motion blur not working correct after recent changes.

7 years agoCode cleanup: fixes for function prototypes
Sergey Sharybin [Mon, 31 Mar 2014 11:34:57 +0000 (17:34 +0600)]
Code cleanup: fixes for function prototypes

7 years agoFix T39405: Make "amplitude" for elastic easing more intuitive to use
Joshua Leung [Mon, 31 Mar 2014 11:24:34 +0000 (00:24 +1300)]
Fix T39405: Make "amplitude" for elastic easing more intuitive to use

Previously, amplitude was more of an "absolute" value in the sense that whatever value
you set it to became a sort of "maximum bounce" height. However, it turns out that this
approach isn't so nice when dealing with large gaps between the values of two keyframes,
as the elastic easing equations expect that "amplitude > |change|" (where change is the
difference in values from key1 to key2).

Now, the "amplitude" value we pass to the easing functions are "|change| + amplitude".
This is easier to control, as now, as soon as you start changing that value, there are
immediately visible effects.

7 years agoCode cleanup: use bool insted of int/short in MCE
Sergey Sharybin [Mon, 31 Mar 2014 09:31:28 +0000 (15:31 +0600)]
Code cleanup: use bool insted of int/short in MCE

7 years agoCode cleanup: use bool instead of short in motrack
Sergey Sharybin [Mon, 31 Mar 2014 09:24:23 +0000 (15:24 +0600)]
Code cleanup: use bool instead of short in motrack

7 years agoCode cleanup: use false/true/bool for masking
Sergey Sharybin [Mon, 31 Mar 2014 09:23:27 +0000 (15:23 +0600)]
Code cleanup: use false/true/bool for masking

7 years agoMasking: fix for initialdeather point not being offset to the mouse position
Sergey Sharybin [Mon, 31 Mar 2014 08:59:53 +0000 (14:59 +0600)]
Masking: fix for initialdeather point not being offset to the mouse position

7 years agoMaksing: fix issue when it's not possible to drag right handle of aligned handles
Sergey Sharybin [Mon, 31 Mar 2014 08:46:30 +0000 (14:46 +0600)]
Maksing: fix issue when it's not possible to drag right handle of aligned handles

7 years agoFix bug in image texture UI: "Use Alpha" checkbox doesn't appear if file format is...
IRIE Shinsuke [Mon, 31 Mar 2014 05:20:55 +0000 (14:20 +0900)]
Fix bug in image texture UI: "Use Alpha" checkbox doesn't appear if file format is BMP.

7 years agoAdd Simple randomize vertex tool
Campbell Barton [Mon, 31 Mar 2014 03:56:43 +0000 (14:56 +1100)]
Add Simple randomize vertex tool

D432 from Walid Shouman with normal & uniform options added.

7 years agoAdd normal option to ED_transverts
Campbell Barton [Mon, 31 Mar 2014 03:55:55 +0000 (14:55 +1100)]
Add normal option to ED_transverts

7 years agoTweak slerp assert to be less picky
Campbell Barton [Mon, 31 Mar 2014 03:55:12 +0000 (14:55 +1100)]
Tweak slerp assert to be less picky

7 years agoPy API: Vector.slerp(). also added interp_v3_v3v3_slerp(_safe) functions
Campbell Barton [Mon, 31 Mar 2014 02:18:23 +0000 (13:18 +1100)]
Py API: Vector.slerp(). also added interp_v3_v3v3_slerp(_safe) functions

7 years agoFix for error in normalize_vn_vn(), add len_squared_vn
Campbell Barton [Mon, 31 Mar 2014 00:17:46 +0000 (11:17 +1100)]
Fix for error in normalize_vn_vn(), add len_squared_vn

7 years agoCycles: Deformation Motionblur works on GPU, so remove the checks in the UI.
Thomas Dinges [Mon, 31 Mar 2014 00:18:29 +0000 (02:18 +0200)]
Cycles: Deformation Motionblur works on GPU, so remove the checks in the UI.

7 years agoCode cleanup: remove unused members of TransVert
Campbell Barton [Sun, 30 Mar 2014 22:57:34 +0000 (09:57 +1100)]
Code cleanup: remove unused members of TransVert

7 years agoRefactor: Add generic poll ED_transverts_poll
Campbell Barton [Sun, 30 Mar 2014 21:23:40 +0000 (08:23 +1100)]
Refactor: Add generic poll ED_transverts_poll

7 years agoFix T39490: BGE: Text to Mesh, then MouseOver does not work
Mitchell Stokes [Sun, 30 Mar 2014 20:55:10 +0000 (13:55 -0700)]
Fix T39490: BGE: Text to Mesh, then MouseOver does not work

Non-mesh objects default to no collisions. lordloki provided a
patch that sets the collision properties for a mesh converted from
a curve/meta/surf/text to the default collision properties for
a mesh.

7 years agoStyle cleanup
Campbell Barton [Sun, 30 Mar 2014 18:45:28 +0000 (05:45 +1100)]
Style cleanup

7 years agoFix for missing break statements
Campbell Barton [Sun, 30 Mar 2014 18:44:32 +0000 (05:44 +1100)]
Fix for missing break statements

7 years agoOSX: Remove the apple/omp workaround for now, to better judge compiler differences
Jens Verwiebe [Sun, 30 Mar 2014 15:38:33 +0000 (17:38 +0200)]
OSX: Remove the apple/omp workaround for now, to better judge compiler differences

7 years agoAnd another compile fix for M_PI and msvc2008...
Thomas Dinges [Sun, 30 Mar 2014 13:36:09 +0000 (15:36 +0200)]
And another compile fix for M_PI and msvc2008...

7 years agoCorrect own recent changes broke release builds
Campbell Barton [Sun, 30 Mar 2014 09:35:59 +0000 (20:35 +1100)]
Correct own recent changes broke release builds

7 years agoDoxy comment for main()
Campbell Barton [Sun, 30 Mar 2014 09:14:57 +0000 (20:14 +1100)]
Doxy comment for main()

7 years agoCode cleanup: warnings (clang)
Campbell Barton [Sun, 30 Mar 2014 08:37:43 +0000 (19:37 +1100)]
Code cleanup: warnings (clang)

7 years agoFix for uninitialized var use
Campbell Barton [Sun, 30 Mar 2014 08:36:51 +0000 (19:36 +1100)]
Fix for uninitialized var use

7 years agoEnable GCC pedantic warnings with strict flags,
Campbell Barton [Sun, 30 Mar 2014 04:02:24 +0000 (15:02 +1100)]
Enable GCC pedantic warnings with strict flags,

also modify MIN/MAX macros to prevent shadowing.

7 years agoCode cleanup: BKE_nurbList_handles_set used some strange logic
Campbell Barton [Sun, 30 Mar 2014 03:04:24 +0000 (14:04 +1100)]
Code cleanup: BKE_nurbList_handles_set used some strange logic

7 years agocorrect recent commit
Campbell Barton [Sun, 30 Mar 2014 02:22:01 +0000 (13:22 +1100)]
correct recent commit

7 years agoCode cleanup: use strict flags for BLI_rand
Campbell Barton [Sun, 30 Mar 2014 02:12:33 +0000 (13:12 +1100)]
Code cleanup: use strict flags for BLI_rand

7 years agoBLI_rand: Add BLI_rng_get_float_unit_v3, was static rayshade func
Campbell Barton [Sun, 30 Mar 2014 02:03:57 +0000 (13:03 +1100)]
BLI_rand: Add BLI_rng_get_float_unit_v3, was static rayshade func

7 years agoConvenience macro for print_ funcs, saves passing id each time
Campbell Barton [Sun, 30 Mar 2014 02:03:30 +0000 (13:03 +1100)]
Convenience macro for print_ funcs, saves passing id each time

7 years agofix scons ffmpeg libraries for mingw32
Antony Riakiotakis [Sat, 29 Mar 2014 23:34:55 +0000 (01:34 +0200)]
fix scons ffmpeg libraries for mingw32

7 years agoCode cleanup: reflect_v3_v3v3 made redundant copies
Campbell Barton [Sun, 30 Mar 2014 01:23:19 +0000 (12:23 +1100)]
Code cleanup: reflect_v3_v3v3 made redundant copies

7 years agoCorrection for poly_to_tri_count (used over-complicated method)
Campbell Barton [Sun, 30 Mar 2014 01:00:11 +0000 (12:00 +1100)]
Correction for poly_to_tri_count (used over-complicated method)

7 years agoFix mingw32 compilation
Antony Riakiotakis [Sat, 29 Mar 2014 22:51:30 +0000 (00:51 +0200)]
Fix mingw32 compilation

7 years agoCode cleanup: de-duplicate cotangent weight function & add arg sizes
Campbell Barton [Sun, 30 Mar 2014 00:08:33 +0000 (11:08 +1100)]
Code cleanup: de-duplicate cotangent weight function & add arg sizes

7 years agoCode cleanup: kdopbvh, move minmax init into function
Campbell Barton [Sat, 29 Mar 2014 23:33:01 +0000 (10:33 +1100)]
Code cleanup: kdopbvh, move minmax init into function

7 years agoSupport #ifndef WITH_SMOKE again
Campbell Barton [Sat, 29 Mar 2014 22:31:28 +0000 (09:31 +1100)]
Support #ifndef WITH_SMOKE again

7 years agoFix MinGW64 compilation until we update the libraries.
Antony Riakiotakis [Sat, 29 Mar 2014 20:12:52 +0000 (22:12 +0200)]
Fix MinGW64 compilation until we update the libraries.

7 years agoCycles UI: Do not grey out Object Motion Blur buttons, when we use CPU fallback ...
Thomas Dinges [Sat, 29 Mar 2014 20:58:34 +0000 (21:58 +0100)]
Cycles UI: Do not grey out Object Motion Blur buttons, when we use CPU fallback (User Preferences set to None).

7 years agoChange dyntopo detail size calculation slightly so the result is close
Antony Riakiotakis [Sat, 29 Mar 2014 16:16:36 +0000 (18:16 +0200)]
Change dyntopo detail size calculation slightly so the result is close
to the radius of the widget when setting the detail.

7 years agoFix scons CUDA build and compile error with more strict compilers.
Brecht Van Lommel [Sat, 29 Mar 2014 14:56:29 +0000 (15:56 +0100)]
Fix scons CUDA build and compile error with more strict compilers.

7 years agoCycles volume: change heterogeneous volume sampling in branched path first hit.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:50 +0000 (13:03 +0100)]
Cycles volume: change heterogeneous volume sampling in branched path first hit.

This now uses decoupled ray marching, and removes the probalistic scattering.
What this means is that each AA sample will be slower but contain less noise,
hopefully giving less render time to reach the same noise levels.

For those following along, there's still a bunch of volume sampling improvements
to do: all-light sampling, multiple importance sampling, transmittance threshold,
better indirect light handling, multiple scatter approximation.

7 years agoCycles code internals: add initial implementation of decoupled ray marching.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:50 +0000 (13:03 +0100)]
Cycles code internals: add initial implementation of decoupled ray marching.

This basically records all volumes steps, which can then later be used multiple
time to take scattering samples, without having to step through the volume
again. From the paper:

"Importance Sampling Techniques for Path Tracing in Participating Media"

This works only on the CPU, due to usage of malloc/free.

7 years agoCycles code refactor: minor refactoring and comments for volume code.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:49 +0000 (13:03 +0100)]
Cycles code refactor: minor refactoring and comments for volume code.

7 years agoCycles volume: change homogeneous volume sampling in branched path first hit.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:49 +0000 (13:03 +0100)]
Cycles volume: change homogeneous volume sampling in branched path first hit.

Similar to surfaces, this will now always scatter rather than probabilistically
scattering or not depending on the transmittance.

This also makes calculation of branched path throughput non-probalistic, which
makes thing slower too. That's to be solved by decoupled ray marching later.

7 years agoCycles code refactor: shuffle homogeneous volume code to factor out hit/miss decision.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:49 +0000 (13:03 +0100)]
Cycles code refactor: shuffle homogeneous volume code to factor out hit/miss decision.

This removes a few optimizations to avoid exp() calls and division, they will be
added back later, at the moment it's more important to make the code easier to
understand and refactor.

7 years agoCycles code refactor: move some more volume code into separate functions.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:49 +0000 (13:03 +0100)]
Cycles code refactor: move some more volume code into separate functions.

7 years agoCycles volumes: don't average coefficients over volume step.
Brecht Van Lommel [Sat, 29 Mar 2014 12:03:49 +0000 (13:03 +0100)]
Cycles volumes: don't average coefficients over volume step.

Rather use random point in each step instead of giving the steps random sizes.
Gives a bit more accurate results with large step sizes, but also convenient
convention for later changes.