6 years agoCode cleanup: this was unintended change from quite a while ago..
Sergey Sharybin [Fri, 16 Aug 2013 08:03:35 +0000 (08:03 +0000)]
Code cleanup: this was unintended change from quite a while ago..

6 years agoCode cleanup: remove some ifdef code from guardedalloc
Sergey Sharybin [Fri, 16 Aug 2013 05:21:40 +0000 (05:21 +0000)]
Code cleanup: remove some ifdef code from guardedalloc

Didn't notice all needed functions are in atomic already.

6 years agoAtomic ops are only used in guarded allocator, so move include into ifdef
Sergey Sharybin [Thu, 15 Aug 2013 12:28:30 +0000 (12:28 +0000)]
Atomic ops are only used in guarded allocator, so move include into ifdef

6 years agoCode cleanup
Sergey Sharybin [Thu, 15 Aug 2013 12:15:42 +0000 (12:15 +0000)]
Code cleanup

And checking whether mail indeed works now.

6 years agoSpeedup for guarded allocator
Sergey Sharybin [Thu, 15 Aug 2013 12:13:01 +0000 (12:13 +0000)]
Speedup for guarded allocator

- Re-arrange locks, so no actual memory allocation
  (which is relatively slow) happens from inside
  the lock. operation system will take care of locks
  which might be needed there on it's own.

- Use spin lock instead of mutex, since it's just
  list operations happens from inside lock, no need
  in mutex here.

- Use atomic operations for memory in use and total
  used blocks counters.

This makes guarded allocator almost the same speed
as non-guarded one in files from Tube project.

There're still MemHead/MemTail overhead which might
be bad for CPU cache utilization.

TODO: We need smarter 32/64bit compile-time check,
      currently i'm afraid only x86 CPU family is
      detecting reliably.

6 years agoMerging r59153 through r59161 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Thu, 15 Aug 2013 12:08:18 +0000 (12:08 +0000)]
Merging r59153 through r59161 from trunk into soc-2013-depsgraph_mt

6 years agoCompilation error fix when using scons
Sergey Sharybin [Thu, 15 Aug 2013 12:05:42 +0000 (12:05 +0000)]
Compilation error fix when using scons

OpenEXR libraries shall go after OpenImageIO,
otherwise it'll fail to find symbols needed
for OIIO.

6 years ago== filebrowser ==
Andrea Weikert [Thu, 15 Aug 2013 10:14:41 +0000 (10:14 +0000)]
== filebrowser ==
* FIX: selecting bookmark or recent file caused UNDO push, also caused issue with the 'Open' and 'Cancel' buttons being grayed out.

Reported by Sergey Sharybin in IRC, many thanks.

6 years agoAdded detailed timing information output
Sergey Sharybin [Thu, 15 Aug 2013 10:11:08 +0000 (10:11 +0000)]
Added detailed timing information output

Used to visualize CPU threads activity during threaded
object update.

It prints whole bunch of timing information to STDERR
which then could be parsed and nicely visualized.

Detailed statistics is disabled by default.

File to parse and visualize statistics:

And screenshot for fun:

6 years agoSkip objects which doesn't need update from update statistics
Sergey Sharybin [Thu, 15 Aug 2013 10:11:05 +0000 (10:11 +0000)]
Skip objects which doesn't need update from update statistics

6 years agoMerging r59136 through r59152 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Thu, 15 Aug 2013 08:23:16 +0000 (08:23 +0000)]
Merging r59136 through r59152 from trunk into soc-2013-depsgraph_mt

6 years agoFix #36384: Inconsistent curve fill behaviour
Sergey Sharybin [Thu, 15 Aug 2013 07:59:32 +0000 (07:59 +0000)]
Fix #36384: Inconsistent curve fill behaviour

Creating new splines via Python API didn't take
curve dimension into account.

Now adding new splines will set 2D/3D flag for
spline according to curve's dimension.

6 years agoBlender might be compiled without guardedalloc again
Sergey Sharybin [Thu, 15 Aug 2013 07:36:56 +0000 (07:36 +0000)]
Blender might be compiled without guardedalloc again

This is useful for benchmark tests, to make CPU cache
utilization as good as we could with current design.

6 years agofix [#36455] importing obj data after saving doesn't work
Campbell Barton [Thu, 15 Aug 2013 00:32:12 +0000 (00:32 +0000)]
fix [#36455] importing obj data after saving doesn't work

6 years agoBGE: The Action Actuator can now make use of additive blending.
Mitchell Stokes [Wed, 14 Aug 2013 23:32:00 +0000 (23:32 +0000)]
BGE: The Action Actuator can now make use of additive blending.

6 years agoBGE: Finally adding support for additive layer blending.
Mitchell Stokes [Wed, 14 Aug 2013 23:31:49 +0000 (23:31 +0000)]
BGE: Finally adding support for additive layer blending.

Currently this is only for the Python API. The logic brick will be updated in a future commit.

6 years agoAdding a new state for sound handles in audaspace: stopped.
Joerg Mueller [Wed, 14 Aug 2013 21:21:00 +0000 (21:21 +0000)]
Adding a new state for sound handles in audaspace: stopped.

Now sounds that stopped playing but are still kept in the device can be differentiated from paused sounds with this state.
This should also fix the performance issues mentioned in [#36466] End of SequencerEntrys not set correctly.
Please test if sound pausing, resuming and stopping works fine in the BGE and sequencer, my tests all worked fine, but there might be a use case that needs some fixing.

6 years agoFix #36467: ends of curves - 2D differs to 3D
Sergey Sharybin [Wed, 14 Aug 2013 19:45:35 +0000 (19:45 +0000)]
Fix #36467: ends of curves - 2D differs to 3D

This is getting confused, why bevel is handled different
for 2D and 3D curves?

Anyway, made bevel work for 2D case nice again, but it's
probably nice to unify 2D and 3D cases.

6 years agoCycles:
Thomas Dinges [Wed, 14 Aug 2013 19:38:14 +0000 (19:38 +0000)]
* Remove an unneeded return in shader_bsdf_eval(), function is void.
* if / else if tweak in shader_bsdf_ao().

6 years agofix [#36349] Separate mesh by material creates meshes with all the materials from...
Campbell Barton [Wed, 14 Aug 2013 14:36:43 +0000 (14:36 +0000)]
fix [#36349] Separate mesh by material creates meshes with all the materials from the original

6 years agoadd materials.clear() method, matching other python list method.
Campbell Barton [Wed, 14 Aug 2013 11:29:58 +0000 (11:29 +0000)]
add materials.clear() method, matching other python list method.

6 years agoquiet compiler warnings.
Campbell Barton [Wed, 14 Aug 2013 11:29:22 +0000 (11:29 +0000)]
quiet compiler warnings.

6 years agoMerging r59130 through r59135 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Wed, 14 Aug 2013 10:42:18 +0000 (10:42 +0000)]
Merging r59130 through r59135 from trunk into soc-2013-depsgraph_mt

6 years agoFix double-free happening when having proxy with motion paths
Sergey Sharybin [Wed, 14 Aug 2013 10:39:16 +0000 (10:39 +0000)]
Fix double-free happening when having proxy with motion paths

Make it so mpath is not shared between several bones now.

Fix suggested by Joshua Leung, thanks!

6 years agoRecent spinlock commit made scheduling unsafe for threading
Sergey Sharybin [Wed, 14 Aug 2013 09:24:15 +0000 (09:24 +0000)]
Recent spinlock commit made scheduling unsafe for threading

Namely, it caused nodes be adding to the pool multiple times.

Returned spin back, but use it only in cases node valency is
zero. So now valency is decreasing without any locks, then
if it's zero spin lock happens, node color (which indicates
whether node is scheduled or not) happens. Actual new task
creation happens outside of locks.

This might sound a bit complicated, but it's straightforward
code which is free from any thread synchronization latency.

6 years agofix bug with editmesh rip, active edge could be left on the unselected side of the...
Campbell Barton [Wed, 14 Aug 2013 09:14:33 +0000 (09:14 +0000)]
fix bug with editmesh rip, active edge could be left on the unselected side of the edge loops.

6 years agobmesh utility functions for storing an editselection after another in the list.
Campbell Barton [Wed, 14 Aug 2013 09:13:11 +0000 (09:13 +0000)]
bmesh utility functions for storing an editselection after another in the list.

6 years agofix own error in BM_mesh_calc_edge_groups() was clearning wrong dirty-index flag.
Campbell Barton [Wed, 14 Aug 2013 08:14:50 +0000 (08:14 +0000)]
fix own error in BM_mesh_calc_edge_groups() was clearning wrong dirty-index flag.
also remove unused transform defines.

6 years agoMerging r59113 through r59129 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Wed, 14 Aug 2013 07:08:59 +0000 (07:08 +0000)]
Merging r59113 through r59129 from trunk into soc-2013-depsgraph_mt

6 years agoinclude order change for osl, fixes gcc compile error - undefined uintptr_t
Campbell Barton [Wed, 14 Aug 2013 06:51:18 +0000 (06:51 +0000)]
include order change for osl, fixes gcc compile error - undefined uintptr_t

6 years agoFix for uninitialized covariance matrix
Sergey Sharybin [Wed, 14 Aug 2013 05:30:35 +0000 (05:30 +0000)]
Fix for uninitialized covariance matrix

This is likely a culptrit caused #36231: Motion tracker bug in 2.68

6 years agoBGE Dome: bugfix - Warp Mesh not working
Dalai Felinto [Wed, 14 Aug 2013 02:59:09 +0000 (02:59 +0000)]
BGE Dome: bugfix - Warp Mesh not working

Fix: to swap the drawing order for the warp mesh polygon
The code was drawing CW instead of CCW.

It would work in some cases where the drawing flags would allow for the
back faces to be visible.

More specifically the alternative fix were:
glDisable ( GL_CULL_FACE );
glFrontFace( GL_CW );

Bug originally reported in the small_planetarium mailing list.
This bug fix was a comissioned job by a group who prefer not to be
credited. Thanks regardless.

6 years agobmesh edge-net: refactor out face creation into its own function, replace array reall...
Campbell Barton [Tue, 13 Aug 2013 23:48:48 +0000 (23:48 +0000)]
bmesh edge-net: refactor out face creation into its own function, replace array reallocation with alloca.
fix for error increasing the face tag count when the face might not be created.

6 years agoutility functions to reverse and wrap arrays.
Campbell Barton [Tue, 13 Aug 2013 23:43:44 +0000 (23:43 +0000)]
utility functions to reverse and wrap arrays.

6 years agobmo_edgenet_fill_exec was building a vertex array when it didnt need to. also simplif...
Campbell Barton [Tue, 13 Aug 2013 22:28:16 +0000 (22:28 +0000)]
bmo_edgenet_fill_exec was building a vertex array when it didnt need to. also simplify for loops.

6 years agoTypo (dimention instead of dimension).
Bastien Montagne [Tue, 13 Aug 2013 18:35:39 +0000 (18:35 +0000)]
Typo (dimention instead of dimension).

6 years agoFix #36461: ends of curves - twist still not good
Sergey Sharybin [Tue, 13 Aug 2013 15:27:49 +0000 (15:27 +0000)]
Fix #36461: ends of curves - twist still not good

Needed correct quat for first point as well.

Maybe it's time to refactor make_minimum_twist function a bit..

6 years agoMerging r59104 through r59112 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Tue, 13 Aug 2013 15:09:19 +0000 (15:09 +0000)]
Merging r59104 through r59112 from trunk into soc-2013-depsgraph_mt

6 years agoFix crash happening when clearing parent in outliner modes which doesn't support...
Sergey Sharybin [Tue, 13 Aug 2013 14:46:39 +0000 (14:46 +0000)]
Fix crash happening when clearing parent in outliner modes which doesn't support this.

6 years agouse __builtin_nanf with gcc and clang.
Campbell Barton [Tue, 13 Aug 2013 10:40:23 +0000 (10:40 +0000)]
use __builtin_nanf with gcc and clang.

6 years agomake materials.pop() and more like pythons list.pop
Campbell Barton [Tue, 13 Aug 2013 10:21:11 +0000 (10:21 +0000)]
make materials.pop() and more like pythons list.pop
- allow negative index values.
- error when invalid index value are passed in.
- remove last item if no index argument is given.

also change behavior to remove the material slot, it was only clearning by default but the list length remained the same.

6 years agoMoved NAN_FLT define to BLI_math, this may come in useful.
Lukas Toenne [Tue, 13 Aug 2013 10:09:27 +0000 (10:09 +0000)]
Moved NAN_FLT define to BLI_math, this may come in useful.

6 years agoCode cleanup:
Thomas Dinges [Tue, 13 Aug 2013 08:43:31 +0000 (08:43 +0000)]
Code cleanup:
* Some typo fixes.

6 years agoFix compilation error, missing size_t declaration
Sergey Sharybin [Tue, 13 Aug 2013 07:54:55 +0000 (07:54 +0000)]
Fix compilation error, missing size_t declaration

6 years agoBGE: Updating the bge.logic.expandPath() documentation to better reflect its current...
Mitchell Stokes [Tue, 13 Aug 2013 07:48:07 +0000 (07:48 +0000)]
BGE: Updating the bge.logic.expandPath() documentation to better reflect its current behavior.

6 years agoMerging r59083 through r59103 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Tue, 13 Aug 2013 07:37:13 +0000 (07:37 +0000)]
Merging r59083 through r59103 from trunk into soc-2013-depsgraph_mt

6 years agoadd support for loading 8bit BMP images
Campbell Barton [Tue, 13 Aug 2013 07:18:07 +0000 (07:18 +0000)]
add support for loading 8bit BMP images

6 years agoFix #36451, Particle system crashes blender. The psys_render_restore function was...
Lukas Toenne [Tue, 13 Aug 2013 06:21:39 +0000 (06:21 +0000)]
Fix #36451, Particle system crashes blender. The psys_render_restore function was accessing the psys->frand random number array, but since the particle modifier is disabled this array does not get
initialized. Added a sanity check to skip disabled particle systems in BI render. (why wasn't this done before?)

6 years agochange VIEW3D_OT_camera_to_view_selected poll function so it can be called from a...
Campbell Barton [Tue, 13 Aug 2013 04:35:14 +0000 (04:35 +0000)]
change VIEW3D_OT_camera_to_view_selected poll function so it can be called from a script (without a view3d).

6 years agoBGE: Adding a GPU Latency profile category to represent the CPU time spent waiting...
Mitchell Stokes [Tue, 13 Aug 2013 03:09:58 +0000 (03:09 +0000)]
BGE: Adding a GPU Latency profile category to represent the CPU time spent waiting on the graphics card.

6 years agofix for bug in rip tool, isolated verts would remain selected after ripping.
Campbell Barton [Tue, 13 Aug 2013 01:52:36 +0000 (01:52 +0000)]
fix for bug in rip tool, isolated verts would remain selected after ripping.

6 years agofix own regression, rip tool wasn't handling selection.
Campbell Barton [Tue, 13 Aug 2013 01:00:07 +0000 (01:00 +0000)]
fix own regression, rip tool wasn't handling selection.

6 years agoswitch arg order for BM_elem_select_copy(), would like to make this constant for...
Campbell Barton [Tue, 13 Aug 2013 00:35:23 +0000 (00:35 +0000)]
switch arg order for BM_elem_select_copy(), would like to make this constant for all bmesh functions eventually.

6 years agobmesh: simplify mode check for setting the edge selection
Campbell Barton [Tue, 13 Aug 2013 00:17:39 +0000 (00:17 +0000)]
bmesh: simplify mode check for setting the edge selection

6 years agobmesh_vert_separate: remove unused return value
Campbell Barton [Mon, 12 Aug 2013 23:49:56 +0000 (23:49 +0000)]
bmesh_vert_separate: remove unused return value

6 years agobmesh_edge_separate: avoid counting radial loops when splitting edges, we only need...
Campbell Barton [Mon, 12 Aug 2013 22:36:46 +0000 (22:36 +0000)]
bmesh_edge_separate: avoid counting radial loops when splitting edges, we only need to check if the edge is boundary or not. will speedup edgesplit modifier a little.

6 years agoFix [#36439] Switching windows on Win7 x64 under certain outliner conditions will...
Sv. Lockal [Mon, 12 Aug 2013 17:05:02 +0000 (17:05 +0000)]
Fix [#36439] Switching windows on Win7 x64 under certain outliner conditions will cause crash

6 years agoFix crash happening in particle code caused by non-reentrant qsort()
Sergey Sharybin [Mon, 12 Aug 2013 14:37:23 +0000 (14:37 +0000)]
Fix crash happening in particle code caused by non-reentrant qsort()

Particle system code used global variable to sort hair by orig index,
which is not safe for threading at all.

Replaced this with usage of reentrant version of qsort, which is
now implemented in BLI. It was moved from recast navigation code
to BLI, so more areas could use it (if needed).

6 years agoUse atomic operations instead of spin lock for threaded update
Sergey Sharybin [Mon, 12 Aug 2013 14:37:15 +0000 (14:37 +0000)]
Use atomic operations instead of spin lock for threaded update

This replaces code (pseudo-code):




The reason for this is that scheduling new nodes implies
mutex lock, and having spin around it is a bad idea.

Alternatives could have been to use spinlock around
child nodes update only, but that would either imply having
either per-node spin-lock or using array to put nodes
ready for update to an array.

Didn't like an alternatives, using atomic operations makes
code much easier to follow, keeps data-flow on cpu nice.

Same atomic ops might be used in other performance-critical
areas later.

Using atomic ops implementation from jemalloc project.

6 years agoFollowup for r58992, fixing user decrement error
Sergey Sharybin [Mon, 12 Aug 2013 13:52:13 +0000 (13:52 +0000)]
Followup for r58992, fixing user decrement error

Some places like proxy rebuild didn't increent
custom shape user counter which lead to user
decrement errors later when freeing pose channels.

Try to keep custom object counter relevent, but
some corner cases might still be missing.

6 years agoGPL V3 license, which will be valid for the binary releases.
Ton Roosendaal [Mon, 12 Aug 2013 12:31:51 +0000 (12:31 +0000)]
GPL V3 license, which will be valid for the binary releases.
(Because Blender links with the Apache2 license).

Cleanup of this directory will happen before official release.

6 years agoMerging r59081 through r59082 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Mon, 12 Aug 2013 12:19:41 +0000 (12:19 +0000)]
Merging r59081 through r59082 from trunk into soc-2013-depsgraph_mt

6 years agoAdd jemalloc license to release/text
Sergey Sharybin [Mon, 12 Aug 2013 12:17:54 +0000 (12:17 +0000)]
Add jemalloc license to release/text

Official linux builds are linking against jemalloc,
and in the own branch i'm using some of it's code.

License files location could be changed a bit later
(i.e. make it so all the license files are in the
single folder, not in the root of the blender distro).

6 years agoMerging r58778 through r59080 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin [Mon, 12 Aug 2013 09:35:16 +0000 (09:35 +0000)]
Merging r58778 through r59080 from trunk into soc-2013-depsgraph_mt

6 years agoFix #36420: ends of curves - caps & twist not good
Sergey Sharybin [Mon, 12 Aug 2013 09:00:48 +0000 (09:00 +0000)]
Fix #36420: ends of curves - caps & twist not good

Forgot to calculate directions of first/last points
for NURBS and POLY splines.

6 years agoimage_load() utility function's 'recursive' option wasn't functional since 2.4x
Campbell Barton [Mon, 12 Aug 2013 07:48:31 +0000 (07:48 +0000)]
image_load() utility function's 'recursive' option wasn't functional since 2.4x

6 years agoFix #36408: Setting `` changes saved alpha
Sergey Sharybin [Mon, 12 Aug 2013 07:47:44 +0000 (07:47 +0000)]
Fix #36408: Setting `` changes saved alpha

Issue was caused by reload caused by input colorspace change.

For generated images generated alpha flags weren't saved to
DNA, which lead to fallback from 32 bit depth to 24 when
doing any kind reload of generated image.

The same alpha loss happens when you save .blend file with
generated images.

Now added generated depth to DNA, so reload image and .blend
file wouldn't loss alpha.

6 years agobpy.path.reduce_dirs() - new utility function to de-duplicate and remove nested paths...
Campbell Barton [Mon, 12 Aug 2013 07:44:38 +0000 (07:44 +0000)]
bpy.path.reduce_dirs() - new utility function to de-duplicate and remove nested paths before doing a recursive search.

6 years agoFix #36437 Cycles no longer rendering Emitter object (Particle Systems). The change...
Lukas Toenne [Mon, 12 Aug 2013 06:53:17 +0000 (06:53 +0000)]
Fix #36437 Cycles no longer rendering Emitter object (Particle Systems). The change r58999 was ignoring the "show_emitter" setting by particles (the result would be the same as long as hair was not
used). If particle emitters are forced to show all other of the usual duplicator hiding should be disabled.

6 years agochange to object-smooth poll function, no need to check for active object, just check...
Campbell Barton [Mon, 12 Aug 2013 06:10:29 +0000 (06:10 +0000)]
change to object-smooth poll function, no need to check for active object, just check we're not in editmode.

6 years agoCode cleanup / Cycles:
Thomas Dinges [Sun, 11 Aug 2013 16:55:24 +0000 (16:55 +0000)]
Code cleanup / Cycles:
* Remove unused "PathThroughput" variable.
* Don't compile unused voronoi code, we only use Distance Squared atm.
* Various typo and comment fixes.

6 years agoFix RNA parameter passing issue with dynamic arrays, was computing the wrong
Brecht Van Lommel [Sun, 11 Aug 2013 15:49:27 +0000 (15:49 +0000)]
Fix RNA parameter passing issue with dynamic arrays, was computing the wrong
size in some cases.

6 years agoCode cleanup / Cycles:
Thomas Dinges [Sun, 11 Aug 2013 15:27:04 +0000 (15:27 +0000)]
Code cleanup / Cycles:
* Rename "curve_kernel_data" to just "curve", to avoid redundant naming.

6 years agodisplay an error with python driver expressions when script execution is disabled.
Campbell Barton [Sun, 11 Aug 2013 08:29:56 +0000 (08:29 +0000)]
display an error with python driver expressions when script execution is disabled.

6 years agouse 'greater/less then or equal to' operators rather then adding 1.
Campbell Barton [Sun, 11 Aug 2013 05:40:35 +0000 (05:40 +0000)]
use 'greater/less then or equal to' operators rather then adding 1.

6 years agoremove unused auto-key struct-member from uiAfterFunc, add compiler defines to cppche...
Campbell Barton [Sat, 10 Aug 2013 23:27:42 +0000 (23:27 +0000)]
remove unused auto-key struct-member from uiAfterFunc, add compiler defines to cppcheck utility script.

6 years agoedge-split now leaves split edges selected
Campbell Barton [Sat, 10 Aug 2013 23:22:35 +0000 (23:22 +0000)]
edge-split now leaves split edges selected

6 years agoBGE: Fixing the memory leaks reported when the BlenderPlayer exits.
Mitchell Stokes [Sat, 10 Aug 2013 21:17:46 +0000 (21:17 +0000)]
BGE: Fixing the memory leaks reported when the BlenderPlayer exits.

They were caused by not having a free_windowmanager_cb set and by not having registered SpaceTypes, which meant data allocated for thosse SpaceTypes could not be freed. These were solved by defining a free_windowmanager_cb for the player that just frees wmWindows, and by making sure we only allocate memory for registered SpaceTypes.

6 years agoAdd better UI for "Add Torus" function
Sv. Lockal [Sat, 10 Aug 2013 15:37:24 +0000 (15:37 +0000)]
Add better UI for "Add Torus" function

The previous one did nothing in many cases and was very unintuitive:

6 years agoLinux install_deps: update OpenCOLLADA to 828b60384552b83e55d2af7055f07d2c40b4d3f4...
Bastien Montagne [Sat, 10 Aug 2013 11:06:46 +0000 (11:06 +0000)]
Linux install_deps: update OpenCOLLADA to 828b60384552b83e55d2af7055f07d2c40b4d3f4 repo UID.

6 years agoAs requested by Mitchell Stokes, reverting r58837 as it is causing some problems...
Daniel Stokes [Sat, 10 Aug 2013 01:29:23 +0000 (01:29 +0000)]
As requested by Mitchell Stokes, reverting r58837 as it is causing some problems with the embedded game engine's python execution.

6 years agoCode cleanup / Cycles:
Thomas Dinges [Sat, 10 Aug 2013 00:52:57 +0000 (00:52 +0000)]
Code cleanup / Cycles:
* Remove code for the unused Wave texture variations.

We have quite some unused code in the texture area, I guess it doesn't harm to clean a bit up here.
We can always get the code back from SVN if we need something.

6 years agoCycles:
Thomas Dinges [Fri, 9 Aug 2013 20:03:49 +0000 (20:03 +0000)]
* GPU kernel can now be compiled without __NON_PROGRESSIVE__ again, was broken after my last commit. Also add a check for have_error(), in case the GPU kernel comes without Non-Progressive, to avoid a crash.

* Don't compile progressive kernel twice on CPU, if __NON_PROGRESSIVE__ would be disabled there.

6 years agoFix cycles not rendering with 1x1 resolution anymore, not so common for users
Brecht Van Lommel [Fri, 9 Aug 2013 19:55:46 +0000 (19:55 +0000)]
Fix cycles not rendering with 1x1 resolution anymore, not so common for users
but nice for debugging.

6 years agoFix cycles passes UI panel to line up better.
Brecht Van Lommel [Fri, 9 Aug 2013 19:55:45 +0000 (19:55 +0000)]
Fix cycles passes UI panel to line up better.

6 years agoOpenGL VBO's: free VBO pool before redraw, otherwise this just holds onto memory
Brecht Van Lommel [Fri, 9 Aug 2013 19:55:43 +0000 (19:55 +0000)]
OpenGL VBO's: free VBO pool before redraw, otherwise this just holds onto memory
after objects are deleted until another big object is added. There's no good reason
to do this, or to think that our pool is somehow much faster than using the OpenGL
API to allocate and free buffers.

6 years agoCycles / Non-Progressive integrator:
Thomas Dinges [Fri, 9 Aug 2013 18:47:25 +0000 (18:47 +0000)]
Cycles / Non-Progressive integrator:
* Non-Progressive integrator is now available on the GPU (CUDA, sm_20 and above).

Implementation details:
* kernel_path_trace() has been split up into two functions:
kernel_path_trace_non_progressive() and kernel_path_trace_progressive().

* We compile two CUDA kernel entry functions (in for the two integrators, they are still inside one .cubin file but due to the kernel separation there should be no performance problem. I tested with the BMW file on my Geforce 540M and the render times were the same for 100 samples (1.57 min in my case).

This is part of my GSoC project, SVN merge of r59032 + manual merge of UI changes for this from my branch.

6 years agoFix #36146, Cycles SSS Shader Node - Scale Value Input Box - to sensitive. Changed...
Lukas Toenne [Fri, 9 Aug 2013 11:41:01 +0000 (11:41 +0000)]
Fix #36146, Cycles SSS Shader Node - Scale Value Input Box - to sensitive. Changed the ui limit from 1,000,000 to 1,000. Not sure if such huge values are needed in some cases, but they can always be
entered explicitly, bypassing the ui limit.

NOTE: this only applies to newly added nodes. For legacy reasons the limit values are stored directly in each socket, so changing them for existing nodes would require a do_versions, seems unnecessary
for such a minor change.

6 years agoFix #36417: vertex weight mix modifier crash with texture mask and subsurf modifier
Brecht Van Lommel [Thu, 8 Aug 2013 20:35:19 +0000 (20:35 +0000)]
Fix #36417: vertex weight mix modifier crash with texture mask and subsurf modifier
preceding it, was writing past end of array.

6 years agoFix #36298 and #36359: timeline no longer did redraw during animation render.
Brecht Van Lommel [Thu, 8 Aug 2013 19:04:28 +0000 (19:04 +0000)]
Fix #36298 and #36359: timeline no longer did redraw during animation render.

This got broken in 58217, but before that it only worked by accident because
of a missing break statement in a switch.

6 years agoFix #36274: empty particle texture slots should not have any influence, same
Brecht Van Lommel [Thu, 8 Aug 2013 18:12:07 +0000 (18:12 +0000)]
Fix #36274: empty particle texture slots should not have any influence, same
as for materials, world, lamps, etc.

6 years agoFix incorrect display of constraint names on retina / high DPI.
Brecht Van Lommel [Thu, 8 Aug 2013 17:36:19 +0000 (17:36 +0000)]
Fix incorrect display of constraint names on retina / high DPI.

6 years agoFix #36317: keyframing metaball elements did not work yet, now you can keyframe
Brecht Van Lommel [Thu, 8 Aug 2013 17:22:49 +0000 (17:22 +0000)]
Fix #36317: keyframing metaball elements did not work yet, now you can keyframe
properties like stiffness.

6 years agoFix #36243: one screen should never be used by multiple windows, but this could
Brecht Van Lommel [Thu, 8 Aug 2013 17:05:09 +0000 (17:05 +0000)]
Fix #36243: one screen should never be used by multiple windows, but this could
happen when a screen was maximized to a single editor, now that case is disabled

6 years agoFix #36394: rendering a point density texture with a hair particle system did
Brecht Van Lommel [Thu, 8 Aug 2013 15:36:03 +0000 (15:36 +0000)]
Fix #36394: rendering a point density texture with a hair particle system did
not work correct, the positions would change over time and child particles did
not render.

6 years agoLinking Brushes did not link the mask texture properly
Antony Riakiotakis [Thu, 8 Aug 2013 09:45:59 +0000 (09:45 +0000)]
Linking Brushes did not link the mask texture properly

6 years agopass compiler defines such as __FLT_MIN__ to smatch and sparse (they fail without...
Campbell Barton [Thu, 8 Aug 2013 01:53:02 +0000 (01:53 +0000)]
pass compiler defines such as __FLT_MIN__ to smatch and sparse (they fail without them).

6 years agodisable cycles when building without python, also use const for function args in...
Campbell Barton [Wed, 7 Aug 2013 22:40:03 +0000 (22:40 +0000)]
disable cycles when building without python, also use const for function args in more places.

6 years agoFix for a formatting error in the docstring of SVertex.viewvertex().
Tamito Kajiyama [Wed, 7 Aug 2013 21:49:11 +0000 (21:49 +0000)]
Fix for a formatting error in the docstring of SVertex.viewvertex().

6 years agoFix for docstrings of CurvePoint.first_svertex() and CurvePoint.second_svertex().
Tamito Kajiyama [Wed, 7 Aug 2013 21:40:59 +0000 (21:40 +0000)]
Fix for docstrings of CurvePoint.first_svertex() and CurvePoint.second_svertex().