blender.git
7 years agoCuda binaries workaround for buildbot shall no longer be needed.
Sergey Sharybin [Mon, 14 Jan 2013 17:30:41 +0000 (17:30 +0000)]
Cuda binaries workaround for buildbot shall no longer be needed.

7 years agoRemove usage WITH_CYCLES_CUDA_BINARIES in code, use check for
Sergey Sharybin [Mon, 14 Jan 2013 17:30:33 +0000 (17:30 +0000)]
Remove usage WITH_CYCLES_CUDA_BINARIES in code, use check for
precompiled cubins instead,

Logic here is following now:
- If there're precompiled cubins, assume CUDA compute is available,
  otherwise
- If cuda toolkit found, assume CUDA compute is available
- In all other cases CUDA compute is not available

For windows there're still check for only precompiled binaries,
no runtime compilation is allowed.

Ended up with such decision after discussion with Brecht. The thing
is, if we'll support runtime compilation on windows we'll end up
having lots of reports about different aspects of something doesn't
work (you need particular toolkit version, msvc installed, environment
variables set properly and so) and giving feedback on such reports
will waste time.

7 years agoChange some big functions from __device_inline to __device, which
Sergey Sharybin [Mon, 14 Jan 2013 17:30:20 +0000 (17:30 +0000)]
Change some big functions from __device_inline to __device, which
makes CPU kernel compilation much faster when using MSVC.

Sideeffect of this change is that CPU rendering is few percent
faster now. CUDA rendering is the same speed.

7 years agouse booleans for bmesh api.
Campbell Barton [Mon, 14 Jan 2013 16:42:43 +0000 (16:42 +0000)]
use booleans for bmesh api.

7 years agoFix #33868: cycles sample as lamp for world background not rendering with the
Brecht Van Lommel [Mon, 14 Jan 2013 16:24:47 +0000 (16:24 +0000)]
Fix #33868: cycles sample as lamp for world background not rendering with the
correct intensity on the GPU.

7 years agoFix #33863: cycles viewport render crash entering edit mode on an object with
Brecht Van Lommel [Mon, 14 Jan 2013 16:05:47 +0000 (16:05 +0000)]
Fix #33863: cycles viewport render crash entering edit mode on an object with
a subsurf modifier.

7 years agoDosvidanya, old compositor!
Sergey Sharybin [Mon, 14 Jan 2013 15:53:17 +0000 (15:53 +0000)]
Dosvidanya, old compositor!

You served well and now desired retirement, but you'll always live in our hearts.

And for sure -- monument!

       +-------------------------------------------+
      /   ++==+   .  ..   .   ...    .  ..     .  /
     /   //    ++==++  ++  ++     ++==++ ++==++  /
    /   //    //  //  //\\//\\   //  // //  //  /
   /   ++==+ ++==++  //      \\ //==++ ++==++  /
  /  .    ...   ..    .       //  ..  ...     /
 +-------------------------------------------+

Some notes:
- Removed all code which was from inside ifdef WITH_COMPOSITOR_LEGACY
- Removed some functions which were used by old compositor only but
  weren't ported to new color management
- Removed WITH_COMPOSITOR_LEGACY from build systems
- node_composite_util.h was in fatc used by compo nodes specification
  files, so added it back to cmake.

  Could be cleaned up by moving header files to files where they're
  actually needed but would consider this is a separate task.

- Should be no functional changes!

7 years agoFix cycles hair in a dupligroup not showing in the correct location for viewport
Brecht Van Lommel [Mon, 14 Jan 2013 13:05:01 +0000 (13:05 +0000)]
Fix cycles hair in a dupligroup not showing in the correct location for viewport
rendering.

7 years agofix own bug, edge crease and bevel weights lost on undo.
Campbell Barton [Mon, 14 Jan 2013 12:14:08 +0000 (12:14 +0000)]
fix own bug, edge crease and bevel weights lost on undo.

7 years agono need to call BLI_countlist on idproperty groups when comparing.
Campbell Barton [Mon, 14 Jan 2013 12:02:10 +0000 (12:02 +0000)]
no need to call BLI_countlist on idproperty groups when comparing.

7 years agofix fox AddonPreferences not getting registered automatically and leak when removing...
Campbell Barton [Mon, 14 Jan 2013 10:36:43 +0000 (10:36 +0000)]
fix fox AddonPreferences not getting registered automatically and leak when removing the addon (wasnt freeing ID-props).

7 years agocode cleanup: use BMW_begin insode for loops body.
Campbell Barton [Mon, 14 Jan 2013 09:53:56 +0000 (09:53 +0000)]
code cleanup: use BMW_begin insode for loops body.

7 years agofix [#33847] Ctrl+L doesnt works in edge selection mode
Campbell Barton [Mon, 14 Jan 2013 08:32:02 +0000 (08:32 +0000)]
fix [#33847] Ctrl+L doesnt works in edge selection mode
own bug caused be changes to selection flushing.

7 years agofix for own error with unwrap selection checking uvedit_have_selection() failed with...
Campbell Barton [Mon, 14 Jan 2013 08:02:06 +0000 (08:02 +0000)]
fix for own error with unwrap selection checking uvedit_have_selection() failed with no UV layer.
also add some safety checks for BM_ELEM_CD_GET_* macros.

7 years agodraw vector icons using the the scaled width,height. The buttons window context arrow...
Campbell Barton [Sun, 13 Jan 2013 18:21:47 +0000 (18:21 +0000)]
draw vector icons using the the scaled width,height. The buttons window context arrow wasn't scaling with the DPI.

7 years agoFurther tweaks to support libav from wheezy
Sergey Sharybin [Sun, 13 Jan 2013 17:54:09 +0000 (17:54 +0000)]
Further tweaks to support libav from wheezy

7 years agoMinor updates:
Bastien Montagne [Sun, 13 Jan 2013 17:43:04 +0000 (17:43 +0000)]
Minor updates:
*Made branches' po update multi-process!
*0.8 looks a bit too much a "similarity cutoff" value for messages, changed to 0.75.

7 years agoTweak to ffmpeg compatibility layer to support debian's wheezy libav
Sergey Sharybin [Sun, 13 Jan 2013 17:10:10 +0000 (17:10 +0000)]
Tweak to ffmpeg compatibility layer to support debian's wheezy libav

7 years agofix for building with cycles.
Campbell Barton [Sun, 13 Jan 2013 16:42:02 +0000 (16:42 +0000)]
fix for building with cycles.

7 years agosimplify WM_MT_context_menu_enum(), use expanded enum property.
Campbell Barton [Sun, 13 Jan 2013 16:25:46 +0000 (16:25 +0000)]
simplify WM_MT_context_menu_enum(), use expanded enum property.

7 years agoremove TRANSFORM_OT_snap_type, use WM_OT_context_menu_enum instead.
Campbell Barton [Sun, 13 Jan 2013 16:18:35 +0000 (16:18 +0000)]
remove TRANSFORM_OT_snap_type, use WM_OT_context_menu_enum instead.
add Ctrl+Shift+Tab shortcut for selecting snap type to the UV editor too.

also added icon drawing to WM_OT_context_menu_enum() so it gets the icons from the enum to draw them in the menu.

7 years agoAdd terminate call for crash handler for windows. Also add inactive code
Antony Riakiotakis [Sun, 13 Jan 2013 15:01:34 +0000 (15:01 +0000)]
Add terminate call for crash handler for windows. Also add inactive code
to do backtrace flushing. This code will need DbgHelp.lib which we may
want to only include for debug builds if at all.

7 years agoStupid keyboard should know what coders want to type ! (i.e. another typo fix in...
Bastien Montagne [Sun, 13 Jan 2013 14:52:31 +0000 (14:52 +0000)]
Stupid keyboard should know what coders want to type¬†! (i.e. another typo fix in UI messages :p )

7 years agooptimization for calcNonProportionalEdgeSlide(), avoid matrix multiply for each vertex.
Campbell Barton [Sun, 13 Jan 2013 14:49:04 +0000 (14:49 +0000)]
optimization for calcNonProportionalEdgeSlide(), avoid matrix multiply for each vertex.

7 years agoGrumph, going quicker than the music! :P
Bastien Montagne [Sun, 13 Jan 2013 14:36:50 +0000 (14:36 +0000)]
Grumph, going quicker than the music! :P

7 years agotransform feature - G-key during transform toggles slide (edge slide or vertex slide...
Campbell Barton [Sun, 13 Jan 2013 14:22:37 +0000 (14:22 +0000)]
transform feature - G-key during transform toggles slide (edge slide or vertex slide), similar to how trackbacll rotate toggles.

7 years agoadd new vertex slide transform operator, different from the existing vertex slide...
Campbell Barton [Sun, 13 Jan 2013 14:08:53 +0000 (14:08 +0000)]
add new vertex slide transform operator, different from the existing vertex slide tool based on user feedback.
- no 2-step select edge, then slide.  Instead you can slide and select the edge at the same time.
- ability to slide multiple verts at one.

supports proportional option for vertex slide and flipping, both matching edge slide functionality.

7 years agoAdd wave to boost libraries for MinGW if OSL is turned on (still not supported but...
Antony Riakiotakis [Sun, 13 Jan 2013 12:32:37 +0000 (12:32 +0000)]
Add wave to boost libraries for MinGW if OSL is turned on (still not supported but making sure it works correctly when it is)

7 years agoThree fixes;
Ton Roosendaal [Sun, 13 Jan 2013 12:25:56 +0000 (12:25 +0000)]
Three fixes;

- Previous commit had a line of code of WIP project in it... tss

- Packed Library data was not freed

- Removed recent (post 2.65a) code to exclude packed data from Undo system.
  It's internal data thats part of file spec, errors happen for example on
  restoring quit.blend or temp saves.

7 years agoUsability:
Ton Roosendaal [Sun, 13 Jan 2013 11:31:01 +0000 (11:31 +0000)]
Usability:

Using Proxy Armature on groups: an Undo now doesn't force a complete re-evalution
of this system anymore, so posing works similar as for regular (non linked)
armatures - an undo step goes back to the previous pose.

Before, an undo made the entire armature go to rest pose. Bad bad :)

I need animators to carefully check - report back if there's other issues!
Tested on Gilga character from Tube Open Movie.

7 years agoEven though we want to get rid of this legacy compo soon, code should compile as...
Bastien Montagne [Sun, 13 Jan 2013 08:38:14 +0000 (08:38 +0000)]
Even though we want to get rid of this legacy compo soon, code should compile as long as it is here! :)

7 years agocode cleanup: rename transform Slide operations to EdgeSlide.
Campbell Barton [Sun, 13 Jan 2013 05:19:47 +0000 (05:19 +0000)]
code cleanup: rename transform Slide operations to EdgeSlide.

7 years agoremove 2.57-windows workaround for WM_OT_copy_prev_settings
Campbell Barton [Sun, 13 Jan 2013 04:26:02 +0000 (04:26 +0000)]
remove 2.57-windows workaround for WM_OT_copy_prev_settings

7 years agobge track-to actuator: reverse the order of the cross product rather then negating.
Campbell Barton [Sun, 13 Jan 2013 03:48:48 +0000 (03:48 +0000)]
bge track-to actuator: reverse the order of the cross product rather then negating.

7 years agoBGE: Fix from HG1 for bug [#32831] "TrackTo aktuator +X direction not working correct...
Mitchell Stokes [Sat, 12 Jan 2013 23:48:40 +0000 (23:48 +0000)]
BGE: Fix from HG1 for bug [#32831] "TrackTo aktuator +X direction not working correct" reported by HG1.

Looks like a vector needed to be inverted for the +X calculation.

7 years agofix [#33846] Points of Curves in Vector Curves node can't have negative X or Y values/.
Campbell Barton [Sat, 12 Jan 2013 20:19:58 +0000 (20:19 +0000)]
fix [#33846] Points of Curves in Vector Curves node can't have negative X or Y values/.

7 years agoBGE: Adding preliminary alpha shadow support for Simple shadow maps. They do not...
Mitchell Stokes [Sat, 12 Jan 2013 20:01:58 +0000 (20:01 +0000)]
BGE: Adding preliminary alpha shadow support for Simple shadow maps. They do not work in the viewport nor do they work for Variance shadow maps.

7 years agospeedup for EDBM_uv_vert_map_create(), reduce customdata lookups. also remove redunda...
Campbell Barton [Sat, 12 Jan 2013 20:01:09 +0000 (20:01 +0000)]
speedup for EDBM_uv_vert_map_create(), reduce customdata lookups. also remove redundant check for hidden faces.

7 years agominor speedup for construct_param_handle_subsurfed() break out of texface_from_origin...
Campbell Barton [Sat, 12 Jan 2013 19:46:27 +0000 (19:46 +0000)]
minor speedup for construct_param_handle_subsurfed() break out of texface_from_original_index() early and dont get the offset for each vertex.

7 years agoreduce customdata lookups for UV drawing and tools.
Campbell Barton [Sat, 12 Jan 2013 19:39:03 +0000 (19:39 +0000)]
reduce customdata lookups for UV drawing and tools.

7 years agoBuildbot: fix for missing CUDA compute after recent changes
Sergey Sharybin [Sat, 12 Jan 2013 19:17:50 +0000 (19:17 +0000)]
Buildbot: fix for missing CUDA compute after recent changes

Issue was caused by how CUDA devices availability done in Cycles.
Basically, if there's no WITH_CUDA_BINARIES buildtime, nvcc becomes
mandatory dependency.

Since kernels are building in separate target now, this logic broke
a bit.

Perhaps condition in util_cuda shall be changed to be a bit smarter,
but for now just work-around by enabling CUDA binaries when building
Cycles. Made it empty arch list to be sure no kernels will try to
re-compile after cudakernels target is done.

7 years agopatch from Harley Acheson to remove multiple inline defines.
Campbell Barton [Sat, 12 Jan 2013 17:12:48 +0000 (17:12 +0000)]
patch from Harley Acheson to remove multiple inline defines.

7 years agoMac HiDPI ("retina") handling:
Ton Roosendaal [Sat, 12 Jan 2013 17:07:49 +0000 (17:07 +0000)]
Mac HiDPI ("retina") handling:

OK - so you have this nice crisp screen, and still you want to add extra
monitors to the laptop! That means Blender should switch back and forth to HiDPI
modes, when you move a window to another monitor.

This code makes the pixelsize scale factor a window property, and handles
an event when a window moves to another monitor. It then changes the
native pixelsize nicely and refreshes entire UI.

You can also have one Blender window on high, and other on low resolution.

Stretching a Blender window from 1 monitor to the other works too, but that
is Apple magic handling it.

7 years agominor cleanup to debug drawing code in the BGE, dont convert strings to STR_String...
Campbell Barton [Sat, 12 Jan 2013 16:49:37 +0000 (16:49 +0000)]
minor cleanup to debug drawing code in the BGE, dont convert strings to STR_String, only to get them back as regular strings.

7 years agoBig refactor of bl_i18n_utils, switching to an object-based model. Still a bit wip.
Bastien Montagne [Sat, 12 Jan 2013 16:49:06 +0000 (16:49 +0000)]
Big refactor of bl_i18n_utils, switching to an object-based model. Still a bit wip.

Notes:
* Most tools here have been updated, only a few (unused :p ) features should be missing. But some updates are rough for now, and performances are globally worse currently, will address this later (this is only really noticeable when you work over the whole repo, anyway ;) ).
* This update breaks "edit translations" addon, will fix it later, once core (i.e. this module) is considered stable again!

7 years agoquiet compiler warning with string formatting in CParser::Term
Campbell Barton [Sat, 12 Jan 2013 15:32:05 +0000 (15:32 +0000)]
quiet compiler warning with string formatting in CParser::Term

7 years agocode cleanup: style and replace (float)sin, (float)cos with sinf, cosf
Campbell Barton [Sat, 12 Jan 2013 14:28:23 +0000 (14:28 +0000)]
code cleanup: style and replace (float)sin, (float)cos with sinf, cosf

7 years agoPatch #33837: ffmpeg1.1 and libav9.1 compatibility update
Sergey Sharybin [Sat, 12 Jan 2013 12:51:10 +0000 (12:51 +0000)]
Patch #33837: ffmpeg1.1 and libav9.1 compatibility update

Patch makes it possible to compile blender with recent ffmpeg
and libav libraries, mainly by getting rid of deprecated API.

Original patch by Campbell Barton with own modifications to
support compilation with older ffmpeg versions.

This patch could break compatibility of FFV1 videos playing
back in older players, mainly because of alpha support changes.
Preserving compatibility with such players became a headache
and think it's high time to get rid of workarounds here.

7 years agoBug fix #33842
Ton Roosendaal [Sat, 12 Jan 2013 12:46:25 +0000 (12:46 +0000)]
Bug fix #33842

Old bug:

Image Editor, Generated Image, use "Replace" operator failed, was mising correct
signal to handle type change to "From File".

7 years agoSecurity fix:
Ton Roosendaal [Sat, 12 Jan 2013 11:59:22 +0000 (11:59 +0000)]
Security fix:

"Pack Blender Libraries" now first does a check if the .blend files are all used
with relative paths. This to prevent bad things happen on unpacking.

7 years agoUsability:
Ton Roosendaal [Sat, 12 Jan 2013 11:00:27 +0000 (11:00 +0000)]
Usability:

Ancient annoying thing for zooming in 2d views: when a view was restricted to keep
aspect ratio, it only allowed vertical or horizontal MMB-drag zooms, depending
portrait or landscape size of editors. Same for trackpad and magic mouse.

Now vertical zoom drag always works for editors like buttons, nodes.

7 years agoPacked and generated images support for Cycles
Sergey Sharybin [Sat, 12 Jan 2013 10:59:13 +0000 (10:59 +0000)]
Packed and generated images support for Cycles

This commit adds support of packed and generated images
for Cycles when using SVM backend. Movies are still not
supported. This changes also doesn't touch OSL which is
much less trivial to adopt for any images which are not
saved to disk.

Implementation details:

- When adding images to Image Manager is now possible
  to mark image as builtin. Builtin images will bypass
  OIIO loader and will use special loading callbacks.

- Callbacks are set by Blender Session and they're
  using C++ RNA interface to obtain needed data (pixels,
  dimensions, is_float flag).

- Image Manager assumes file path is used as reference
  to a builtin images, but in fact currently image
  datablock name is used for reference. This makes it
  easy to find an image in BlendData database.

- Added some extra properties to Image RNA:
  * channels, which denotes actual number of channels
    in ImBuf. This is needed to treat image's pixels
    correct (before it wasn't possible because API
    used internal number of channels for pixels which
    is in fact doesn't correlate with image depth)
  * is_float, which is truth if image is stored in
    float buffer of ImBuf.

- Implemented string lookup for C++ RNA collections
  for cases there's no manual lookup function.

OSL is not supported because it used own image loading
and filtering routines and there's seems to be no API
to feed pre-loaded pixels directly to the library.

Think we'll either need to add some API to support
such kind of feeding or consider OSL does not have
support of packed images at all.

Movies are not supported at this moment because of lack
of RNA API to load specified frame. It's not difficult
to solve, just need to consider what to best here:
* Either write some general python interface for ImBuf
  and use it via C++ API, or
* Write a PY API function which will return pixels for
  given frame, or
* Use bad-level BKE_* call

Anyway, small steps, further improvements later.

Reviewed by Brecht, thanks!

7 years agopatch [#33738] Extend Selection option unified and added to few operators
Campbell Barton [Sat, 12 Jan 2013 10:48:10 +0000 (10:48 +0000)]
patch [#33738] Extend Selection option unified and added to few operators
from Sebastian Nell (codemanx), with minor edits

7 years agoreplace inline with BLI_INLINE define.
Campbell Barton [Sat, 12 Jan 2013 10:39:09 +0000 (10:39 +0000)]
replace inline with BLI_INLINE define.

7 years agoBGE: Fix for [#33839] "a logic.joysticks Crashes BGE" reported by Josiah Lane (solarl...
Mitchell Stokes [Sat, 12 Jan 2013 05:44:08 +0000 (05:44 +0000)]
BGE: Fix for [#33839] "a logic.joysticks Crashes BGE" reported by Josiah Lane (solarlune).

On a scene change the SCA_JoystickManager gets destroyed which in turn means all of it's joystick instances are released. Since SCA_PythonJoystick was just using a borrowed reference, this allowed the joystick to be freed. Now the joystick's refcount is incremented so that the SCA_PythonJoystick's joystick reference will survive across scene changes.

7 years agoBug fix #33826
Ton Roosendaal [Fri, 11 Jan 2013 15:19:47 +0000 (15:19 +0000)]
Bug fix #33826

Post 2.65a issue

Now scrollbars appear/disappear correctly, a bug in checking if mouse clicks
where on panel headers popped up. That disabled using scrollers next to a
panel header.

7 years agoFix knife angle constraint bug #33813 by changing knife mvals to floats.
Howard Trickey [Fri, 11 Jan 2013 14:13:22 +0000 (14:13 +0000)]
Fix knife angle constraint bug #33813 by changing knife mvals to floats.

The problem was that by snapping the integer mouse values to
lines through the previous point, the angle was slightly off.

7 years agoadd padding for node view-all, view-home operators.
Campbell Barton [Fri, 11 Jan 2013 04:34:15 +0000 (04:34 +0000)]
add padding for node view-all, view-home operators.

7 years agofix for bpy.props string get-length callback, PyUnicode_GetLength() isn't a measure...
Campbell Barton [Fri, 11 Jan 2013 04:09:54 +0000 (04:09 +0000)]
fix for bpy.props string get-length callback, PyUnicode_GetLength() isn't a measure of the buffer size.

7 years agowin32 has no kill, force crash for now, perhaps windows devs can do this more correctly.
Campbell Barton [Fri, 11 Jan 2013 03:26:49 +0000 (03:26 +0000)]
win32 has no kill, force crash for now, perhaps windows devs can do this more correctly.

7 years agocode cleanup: warnings, also add check in crash handler that a wmWindowManager is...
Campbell Barton [Fri, 11 Jan 2013 03:21:24 +0000 (03:21 +0000)]
code cleanup: warnings, also add check in crash handler that a wmWindowManager is present.

7 years agofix for error in gradient theme rgba_char_args_set() use, was setting char's to float...
Campbell Barton [Fri, 11 Jan 2013 03:19:52 +0000 (03:19 +0000)]
fix for error in gradient theme rgba_char_args_set() use, was setting char's to float values.

7 years agoChanging units of stiffness parameter in classical (new) SPH solver: used to be speed...
Alex Fraser [Fri, 11 Jan 2013 03:06:10 +0000 (03:06 +0000)]
Changing units of stiffness parameter in classical (new) SPH solver: used to be speed of sound squared; now just speed of sound.

The classical SPH solver was not in 2.65, so this change is unlikely to affect many users. But beta users who have been trying it out will need to change the stiffness parameter to sqrt(old value).

7 years agoFix own mistake in SPH solver selection. Thanks Campbell for pointing it out.
Alex Fraser [Fri, 11 Jan 2013 02:03:22 +0000 (02:03 +0000)]
Fix own mistake in SPH solver selection. Thanks Campbell for pointing it out.

7 years agoremove CustomData_get_active_offset(), use CustomData_get_offset to return the active...
Campbell Barton [Fri, 11 Jan 2013 01:41:27 +0000 (01:41 +0000)]
remove CustomData_get_active_offset(), use CustomData_get_offset to return the active layer, matching CustomData_get()

7 years agoinclude a stacktrace in the crashlog text written by the segfault handler.
Campbell Barton [Fri, 11 Jan 2013 01:30:44 +0000 (01:30 +0000)]
include a stacktrace in the crashlog text written by the segfault handler.

7 years agoFix #33824: cycles non-progressive render mode did not do correct path termination,
Brecht Van Lommel [Thu, 10 Jan 2013 19:28:16 +0000 (19:28 +0000)]
Fix #33824: cycles non-progressive render mode did not do correct path termination,
leading to too much noise when the min bounce setting was lower than max bounce.

7 years agoFix [#33825] Menu list widget does not work on UV and Vertex Colors
Bastien Montagne [Thu, 10 Jan 2013 18:54:01 +0000 (18:54 +0000)]
Fix [#33825] Menu list widget does not work on UV and Vertex Colors

Own stupid mistake in recent UI list refactor - those two lists are a good example where a non-void 'id' is necessary, as they use the same class in the same window... Else, the same object is shared by the two, which can't work! :)

7 years agospeedup for DM_to_bmesh_ex(), no need to check vertex order when converting faces...
Campbell Barton [Thu, 10 Jan 2013 18:34:09 +0000 (18:34 +0000)]
speedup for DM_to_bmesh_ex(), no need to check vertex order when converting faces since the loops are already in order, will speedup modifiers that use bmesh.

7 years agominor speedup for DM_to_bmesh_ex(), only duplicate the edge array when the derivedMes...
Campbell Barton [Thu, 10 Jan 2013 18:31:14 +0000 (18:31 +0000)]
minor speedup for DM_to_bmesh_ex(), only duplicate the edge array when the derivedMesh type isn't a CDDM.

7 years agoDepsgraph hack feature - experimental
Ton Roosendaal [Thu, 10 Jan 2013 18:20:29 +0000 (18:20 +0000)]
Depsgraph hack feature - experimental

Many depsgraph failures are because some data in the graph is being
recalculated too early (or not at all).

Since we better support animators with working renders, here's a hack to
allow manual additional updates on frame changes.

In Property Editor, Object, Panel "Relations Extra" you now have two
buttons:
- Extra Object Update
- Extra Data Update

This will do an extra update of object and/or its data ONLY on frame changes.
Update happens as last.

Tested on files collected in Wiki todo, several cases now work OK, especially
the lags on updates.

7 years agoCorrection to do_versions() in 53676
Sergey Sharybin [Thu, 10 Jan 2013 18:11:56 +0000 (18:11 +0000)]
Correction to do_versions() in 53676

Affect on curve radius only if offset/extrude was used,
otherwise radius could have been used for other things
(like controlling hair) which will likely break
compatibility.

Reported by Tube project guys.

7 years agoFix build error on Mac, bool needs an #include.
Brecht Van Lommel [Thu, 10 Jan 2013 17:46:23 +0000 (17:46 +0000)]
Fix build error on Mac, bool needs an #include.

7 years agoFix #33821: cycles background intensity fix had uninitialized memory usage
Brecht Van Lommel [Thu, 10 Jan 2013 17:37:26 +0000 (17:37 +0000)]
Fix #33821: cycles background intensity fix had uninitialized memory usage
for area lights.

7 years agoFix #33752: UV Orco coordinates were wrong for Cycles (and other external
Brecht Van Lommel [Thu, 10 Jan 2013 17:37:17 +0000 (17:37 +0000)]
Fix #33752: UV Orco coordinates were wrong for Cycles (and other external
render engines). Replaced generating orco_index by filling the UV loop data
directly which is easier and all that needed to be done anyway.

7 years agoadd a segfault handler that writes out the info log into a crash file alongside the...
Campbell Barton [Thu, 10 Jan 2013 16:37:48 +0000 (16:37 +0000)]
add a segfault handler that writes out the info log into a crash file alongside the blend file.

7 years agoFix #33822: Compositor gets stuck if a sequencer window is also visible
Sergey Sharybin [Thu, 10 Jan 2013 16:11:12 +0000 (16:11 +0000)]
Fix #33822: Compositor gets stuck if a sequencer window is also visible

Issue was caused by a fix for rendered sequencer preview mode, which
will likely conflict with compositor job. Made it so compositor job
will be killed when sequencer uses rendered preview.

7 years agopyapi internal api code: check for == -1 rather then < 0, for known error returns.
Campbell Barton [Thu, 10 Jan 2013 15:22:19 +0000 (15:22 +0000)]
pyapi internal api code: check for == -1 rather then < 0, for known error returns.

7 years agosimple speedup for view3d numeric panel - dont loop on verts or edges if none are...
Campbell Barton [Thu, 10 Jan 2013 14:38:30 +0000 (14:38 +0000)]
simple speedup for view3d numeric panel - dont loop on verts or edges if none are selected.

7 years agoAnother fix for bpy.props getters/setters: PyC_AsArray does a refcount decrement...
Lukas Toenne [Thu, 10 Jan 2013 14:36:08 +0000 (14:36 +0000)]
Another fix for bpy.props getters/setters: PyC_AsArray does a refcount decrement internally on errors, need to skip Py_DECREF in that case to avoid negative refcounts.

7 years agofix for own mistake in recent changes to scanfill, bmo_triangle_fill_exec() (alt...
Campbell Barton [Thu, 10 Jan 2013 14:28:06 +0000 (14:28 +0000)]
fix for own mistake in recent changes to scanfill, bmo_triangle_fill_exec() (alt+f), was missing BLI_SCANFILL_CALC_HOLES argument.
reported as [#33819]

7 years agoadding vertex color layer in mesh editmode would overwrite UV's, strange nobody repor...
Campbell Barton [Thu, 10 Jan 2013 13:59:52 +0000 (13:59 +0000)]
adding vertex color layer in mesh editmode would overwrite UV's, strange nobody reported this since its been there since 2.63.

7 years agoFix too bright result in background multiple importance after recent changes.
Brecht Van Lommel [Thu, 10 Jan 2013 12:35:09 +0000 (12:35 +0000)]
Fix too bright result in background multiple importance after recent changes.

7 years agoFix for bpy.props getter/setter callbacks. These were missing a valid GIL state when...
Lukas Toenne [Thu, 10 Jan 2013 12:32:09 +0000 (12:32 +0000)]
Fix for bpy.props getter/setter callbacks. These were missing a valid GIL state when being called outside the UI context.

7 years agoeditmesh texface drawing, reuse customdata offset rather then looking up each UV...
Campbell Barton [Thu, 10 Jan 2013 12:07:01 +0000 (12:07 +0000)]
editmesh texface drawing, reuse customdata offset rather then looking up each UV and vertex color, gives overall ~9.5% drawing speedup in my tests.
was also doing NULL checks on UV's which are never NULL in this case.

7 years agoBug fix 33732
Ton Roosendaal [Thu, 10 Jan 2013 11:08:38 +0000 (11:08 +0000)]
Bug fix 33732

Modal operators with hardcoded (in C) event handling now don't get
double clicks anymore. For modal keymaps things work OK.

This fixes number input typing for CTRL+B bevel, for example.

7 years agoFix #33816: property not found: World.use_textures
Sergey Sharybin [Thu, 10 Jan 2013 10:10:34 +0000 (10:10 +0000)]
Fix #33816: property not found: World.use_textures

Issue was caused bu svn rev53355 and now logic seems to mimic
behavior before that change.

7 years agoStripping and packaging shall happen inside of chroot as well
Sergey Sharybin [Thu, 10 Jan 2013 09:21:12 +0000 (09:21 +0000)]
Stripping and packaging shall happen inside of chroot as well

7 years agoFurther tweaks to buildbot
Sergey Sharybin [Thu, 10 Jan 2013 08:55:44 +0000 (08:55 +0000)]
Further tweaks to buildbot

- BF_BITNESS should be passed as a command line argument
- Made it so CUDA binaries and OSL compiled scripts would
  be installed regardless WITH_BF_PYTHON (which seems to
  be quite obvious)
- Disable overwrite install, so CUDA kernels installed by
  it's build target will be preserved when building blender
  itself.

7 years agobmesh todo: uv stretch area draw mode wasn't calculating ngon area - added area_poly_...
Campbell Barton [Thu, 10 Jan 2013 08:16:19 +0000 (08:16 +0000)]
bmesh todo: uv stretch area draw mode wasn't calculating ngon area - added area_poly_v2().

7 years agoSwitch linux buildbot to compile all cuda kernels in 64bit environment
Sergey Sharybin [Thu, 10 Jan 2013 08:01:19 +0000 (08:01 +0000)]
Switch linux buildbot to compile all cuda kernels in 64bit environment

Solves memory limit issues when building sm_13 for 32bit platform.

Some further refinement of patch could be needed.

7 years agoAdded new scons target: cudakernels
Sergey Sharybin [Thu, 10 Jan 2013 08:01:07 +0000 (08:01 +0000)]
Added new scons target: cudakernels

It's intended to perform compilation of CUDA kernels only,
without doing anything with other sources/resources and
main purpose of this target is to be able to compile cuda
kernels in completely different environment than the rest
of blender was compiled.

This is needed for linux build environment, where sm_13
compilation fails dramatically in 32bit chroot but could
be compiled in 64bit environment.

7 years agodon't call BKE_mesh_tessface_ensure() from DM_to_mesh(), caller must do this instead.
Campbell Barton [Thu, 10 Jan 2013 05:50:21 +0000 (05:50 +0000)]
don't call BKE_mesh_tessface_ensure() from DM_to_mesh(), caller must do this instead.

7 years agotransforming verts was getting the bevel weight for each vertex even if bevel-weight...
Campbell Barton [Thu, 10 Jan 2013 05:35:10 +0000 (05:35 +0000)]
transforming verts was getting the bevel weight for each vertex even if bevel-weight wasnt being transformed.

7 years agofix for editmesh calculating normals twice when using the number-buttons.
Campbell Barton [Thu, 10 Jan 2013 04:46:51 +0000 (04:46 +0000)]
fix for editmesh calculating normals twice when using the number-buttons.

7 years agodon't store bevel weights or edge crease customdata layers in editmode unless they...
Campbell Barton [Thu, 10 Jan 2013 04:43:31 +0000 (04:43 +0000)]
don't store bevel weights or edge crease customdata layers in editmode unless they are needed.

configurable in 'Geometry Data' panel, will be added when running crease edges transform for example.

7 years agoCycles: different fix for perlin noise generating nan values, now check for
Brecht Van Lommel [Wed, 9 Jan 2013 22:06:03 +0000 (22:06 +0000)]
Cycles: different fix for perlin noise generating nan values, now check for
the result to be finite afterwards which is a bit faster and works for OSL
too without needing to slow down OSL itself.

7 years agoCycles: multiple importance sampling for lamps, which helps reduce noise for
Brecht Van Lommel [Wed, 9 Jan 2013 21:09:20 +0000 (21:09 +0000)]
Cycles: multiple importance sampling for lamps, which helps reduce noise for
big lamps and sharp glossy reflections. This was already supported for mesh
lights and the background, so lamps should do it too.

This is not for free and it's a bit slower than I hoped even though there is
no extra BVH ray intersection. I'll try to optimize it more later.

* Area lights look a bit different now, they had the wrong shape before.
* Also fixes a sampling issue in the non-progressive integrator.
* Only enabled for the CPU, will test on the GPU later.
* An option to disable this will be added for situations where it does not help.

Same time comparison before/after:
http://www.pasteall.org/pic/show.php?id=43313
http://www.pasteall.org/pic/show.php?id=43314

7 years agospeedup for editmesh getVert and getEdge, were doing 2x customdata layer lookups...
Campbell Barton [Wed, 9 Jan 2013 18:20:11 +0000 (18:20 +0000)]
speedup for editmesh getVert and getEdge, were doing 2x customdata layer lookups for crease and bevel weight, also make use of the existing meshdata array for lookups.

7 years agoSmall fix for r53685: Allow setting NULL/None as parent, i.e. detach a node from...
Lukas Toenne [Wed, 9 Jan 2013 16:15:06 +0000 (16:15 +0000)]
Small fix for r53685: Allow setting NULL/None as parent, i.e. detach a node from a frame.