7 years agoEditMesh: wireframe tool, add offset and vgroup support (not used yet)
Campbell Barton [Sat, 21 Dec 2013 19:54:37 +0000 (06:54 +1100)]
EditMesh: wireframe tool, add offset and vgroup support (not used yet)

7 years agoFix for mesh deform modifier missing copy for flag.
Campbell Barton [Sat, 21 Dec 2013 17:45:00 +0000 (04:45 +1100)]
Fix for mesh deform modifier missing copy for flag.

7 years agoMesh Modifiers: refactor copying using a generic function
Campbell Barton [Sat, 21 Dec 2013 17:35:52 +0000 (04:35 +1100)]
Mesh Modifiers: refactor copying using a generic function

7 years agoSupport units in modal numinput
Bastien Montagne [Sat, 21 Dec 2013 16:11:43 +0000 (17:11 +0100)]
Support units in modal numinput

This completly changes the way modal numinput is handled. Now, edited expression is a string, which then gets unit- and py-evaluated to get a float value.

We gain many power and flexibility, but lose a few "shortcuts" like '-' to negate, or '/' to inverse (if they are really needed, we still can add them with modifiers, like e.g. ctrl-/ or so).

- units (cm, ", deg, etc.).
- basic operations from python/BKE_unit (+, *, **, etc.), and math constants and functions (pi, sin, etc.).
- you can navigate in edited value (left/right key, ctrl to move by block) and insert/delete chars, e.g. to fix a typo without having to rewrite everything.
- you can go to next/previous value with (ctrl-)TAB key.
- As before, hitting backspace after having deleted all leading chars will first reset the edited value to init state, and on second press, the whole "modal numinput" editing will be cancelled, going back to usual transform with mouse.

- Did not touch to how values are shown in header when modal numinput is not enabled (would do that in another commit), so this is still quite inconsistent.
- Added back radian support in BKE_unit.
- Added arcminute/arcsecond to BKE_unit.
(those unit changes affect all angle UI controls, btw, so you can now enter radians or longitude/latitude values when in degrees units).

Related to T37600.

Reviewers: brecht, campbellbarton, carter2422

Reviewed By: brecht, campbellbarton, carter2422
Thanks everybody!

Differential Revision:

7 years agoFix T37906: Adding force field settings to boids gives hard crash
Sergey Sharybin [Sat, 21 Dec 2013 14:35:47 +0000 (20:35 +0600)]
Fix T37906: Adding force field settings to boids gives hard crash

Was a regression since fix for another bug T37189.

7 years agoFix T37907: Crash when change screen layout to "Motion Tracking"
Sergey Sharybin [Sat, 21 Dec 2013 14:26:23 +0000 (20:26 +0600)]
Fix T37907: Crash when change screen layout to "Motion Tracking"

Was a bug in recent change from my own.

Also fixed cache line being displayed twice.

7 years agoCleanup: Code and style cleanup for Cycles curve export code.
Thomas Dinges [Fri, 20 Dec 2013 23:20:16 +0000 (00:20 +0100)]
Cleanup: Code and style cleanup for Cycles curve export code.

7 years agoFix T37903: Operator log serialization broken for sets.
Bastien Montagne [Fri, 20 Dec 2013 22:35:28 +0000 (23:35 +0100)]
Fix T37903: Operator log serialization broken for sets.

Was a mistake in rB9d6f05ed style edits (TRUE became false ;) ).

7 years agoFix bookmarks not appearing in file browser after "copy previous settings".
Brecht Van Lommel [Fri, 20 Dec 2013 16:39:22 +0000 (17:39 +0100)]
Fix bookmarks not appearing in file browser after "copy previous settings".

7 years agoFix wrong display of movie clip cache with mask overlay enabled
Sergey Sharybin [Fri, 20 Dec 2013 16:16:53 +0000 (22:16 +0600)]
Fix wrong display of movie clip cache with mask overlay enabled

7 years agoSlightly improve undo performance in dyntopo when last operator was mask
Antony Riakiotakis [Fri, 20 Dec 2013 11:41:38 +0000 (13:41 +0200)]
Slightly improve undo performance in dyntopo when last operator was mask
modification. In that case no pbvh needs to be freed and recreated and
we can get away just with draw buffer update (all of them for now. When
pbvh nodes get logged for undo we will be able to only update the
affected ones).

7 years agoMSVC 2013 cmake changes
Martijn Berger [Fri, 20 Dec 2013 13:32:51 +0000 (14:32 +0100)]
MSVC 2013 cmake changes

I think we should try to use find_package more over just setting the variables it would set.
I added find_package with old behavior as a feedback for boost and openexr

@dingto can you test it in msvc2008 setup ?

Reviewers: dingto

Reviewed By: dingto

CC: dingto, brecht
Differential Revision:

7 years agoFix T37883: Dope Sheet - Selecting object channels in AnimEditors doesn't make them...
Joshua Leung [Fri, 20 Dec 2013 02:30:00 +0000 (15:30 +1300)]
Fix T37883: Dope Sheet - Selecting object channels in AnimEditors doesn't make them active

There was probably a reason in the past why this wasn't desirable, but since we allow
bones to be properly selected when clicking on corresponding channels here, we may as
well allow this case too.

7 years agoCode Cleanup: style
Campbell Barton [Fri, 20 Dec 2013 10:43:42 +0000 (21:43 +1100)]
Code Cleanup: style

7 years agoDon't use with_resol suffix for functions which doesn't get resolution
Sergey Sharybin [Fri, 20 Dec 2013 10:00:05 +0000 (16:00 +0600)]
Don't use with_resol suffix for functions which doesn't get resolution

7 years agoCode cleanup: remove unused functions from mask module
Sergey Sharybin [Fri, 20 Dec 2013 09:47:19 +0000 (15:47 +0600)]
Code cleanup: remove unused functions from mask module

This functions doesn't seem to be used even from a commented code.

7 years agoFix for border select doesn't work with normalization enabled
Sergey Sharybin [Fri, 20 Dec 2013 08:46:50 +0000 (14:46 +0600)]
Fix for border select doesn't work with normalization enabled

Some lazy developer named Sergey typed zero instead of actual
mapping flag in unit mapping function in the original f-curve
normalization commit.

7 years agoUI: restore confirmation popups for delete operators.
Brecht Van Lommel [Fri, 20 Dec 2013 00:38:07 +0000 (01:38 +0100)]
UI: restore confirmation popups for delete operators.

It turned out this was leading to accidental deleting in some cases when the
info message was missed by users. Fixes T37801.

7 years agoFix T37890: compositor did not take number of thread setting into account.
Brecht Van Lommel [Thu, 19 Dec 2013 23:43:26 +0000 (00:43 +0100)]
Fix T37890: compositor did not take number of thread setting into account.

7 years agoFix T37884: cycles hair rendering crash with UV coordinates.
Brecht Van Lommel [Thu, 19 Dec 2013 23:05:54 +0000 (00:05 +0100)]
Fix T37884: cycles hair rendering crash with UV coordinates.

This was broken in a recent bugfix for zero length hairs.

7 years agoRaise Python version to 3.3.3.
Bastien Montagne [Thu, 19 Dec 2013 21:44:51 +0000 (22:44 +0100)]
Raise Python version to 3.3.3.

7 years agoFix T37861: remove unnecessary error print when viewport rendering a curve that gives...
Brecht Van Lommel [Thu, 19 Dec 2013 18:19:31 +0000 (19:19 +0100)]
Fix T37861: remove unnecessary error print when viewport rendering a curve that gives an empty mesh.

7 years agoFix T37869: vertex paint + wireframe draw mode + smoke domain did not draw correct.
Brecht Van Lommel [Thu, 19 Dec 2013 17:52:26 +0000 (18:52 +0100)]
Fix T37869: vertex paint + wireframe draw mode + smoke domain did not draw correct.

7 years agoFix T37003, Fix T37859: smoke modifier taking deforming modifiers into account
Brecht Van Lommel [Thu, 19 Dec 2013 17:25:14 +0000 (18:25 +0100)]
Fix T37003, Fix T37859: smoke modifier taking deforming modifiers into account
in some cases.

The smoke modifier now ignores the modifier evaluation for generated texture
coordinates, which would previously cause the undeformed mesh to be cached for
flow objects. Dynamic paint has a similar exception, and other physics systems
avoid it by not being a constructive modifier.

7 years agoChange recent fix for T37864, now only check if the file is readonly
Campbell Barton [Thu, 19 Dec 2013 15:23:21 +0000 (02:23 +1100)]
Change recent fix for T37864, now only check if the file is readonly

Other error cases are already handled elsewhere

7 years agoFix T37795: Resetting a button to the default value could crash
Campbell Barton [Thu, 19 Dec 2013 14:04:01 +0000 (01:04 +1100)]
Fix T37795: Resetting a button to the default value could crash

Added ui_handle_afterfunc_add_operator so a button can queue an operator
to run without executing it immediately.

7 years agoFix missing F-Curve Generator modifier updates from the Python API.
Peter Staples [Thu, 19 Dec 2013 13:48:57 +0000 (14:48 +0100)]
Fix missing F-Curve Generator modifier updates from the Python API.

The poly_order and mode properties were missing update and range, now they
match the UI code.

Reviewed By: brecht

Differential Revision:

7 years agoSculpting:
Antony Riakiotakis [Thu, 19 Dec 2013 12:39:54 +0000 (14:39 +0200)]

* Support for symmetry in lasso masking
* Optimize away symmetry multiplication of gravity vector if no gravity
* Move flip_v3_v3 to paint_utils (used in masking as well)
* Use OpenMP for mask flood fill too.

7 years agoPatch T19235: bmesh comments (with updates)
Campbell Barton [Thu, 19 Dec 2013 11:40:25 +0000 (22:40 +1100)]
Patch T19235: bmesh comments (with updates)

7 years agoCode Cleanup: remove duplicate errorstack
Campbell Barton [Thu, 19 Dec 2013 11:38:01 +0000 (22:38 +1100)]
Code Cleanup: remove duplicate errorstack

7 years agoFollowup for fix T37718: image was not saving with proper settings second time
Sergey Sharybin [Thu, 19 Dec 2013 11:17:40 +0000 (17:17 +0600)]
Followup for fix T37718: image was not saving with proper settings second time

This was actually a regression after color management re-implementation, need
to copy settings from saved image buffer to an original one since they might
be modified during save.

Also noticed image format planes detection didn't work properly from an image
buffer. Made it so save operator works fine now, but also marked a TODO in
BKE_imbuf_to_image_format() which needs to be investigated further.

7 years agoFix for T37864, save/save_as blend now refuses to save and report an error, when...
Thomas Dinges [Thu, 19 Dec 2013 08:54:02 +0000 (09:54 +0100)]
Fix for T37864, save/save_as blend now refuses to save and report an error, when filepath is not writeable.

7 years agoFix T37830: UILists text now right align.
Bastien Montagne [Thu, 19 Dec 2013 08:34:53 +0000 (09:34 +0100)]
Fix T37830: UILists text now right align.

Simply check for non-embossed TEX buttons inside uiList items, and align their text like labels do.

7 years agoFix T37387 VIEW3D_OT_view_selected in sculpt mode zooms far from
Antony Riakiotakis [Thu, 19 Dec 2013 03:09:42 +0000 (05:09 +0200)]
Fix T37387 VIEW3D_OT_view_selected in sculpt mode zooms far from
sculpted object if last sculpt stroke ends outside the mesh.

Code here used the last true location which is invalid in that case,
just reuse the average stroke location instead.

7 years agoSupport for symmetry in gravity.
Antony Riakiotakis [Thu, 19 Dec 2013 00:14:25 +0000 (02:14 +0200)]
Support for symmetry in gravity.

Also fix previous commit original coordinate change for proxy calculation
(broke all non-anchored brushes -facepalm-) and cache the gravity support

7 years agoFix T37812, anchored sculpting on a flat plane created artifacts.
Antony Riakiotakis [Wed, 18 Dec 2013 23:48:30 +0000 (01:48 +0200)]
Fix T37812, anchored sculpting on a flat plane created artifacts.

This must be an ancient bug, almost as old as anchored brushes
themselves. Code did not do sphere node intersection against original
bounding boxes if an anchored brush required it. In practice this was
not easy to see because vertices were displaced inside brush radius most
of the time. However in the provided report file, displacement was far
away from the brush sphere, making the issue apparent.

Also added original check in proxy combination code (might cause issues
with dyntopo but quick test did not show any) and did some style int ->
bool style changes.

7 years agoFix T37807 gravity causes crashes when using shif-smoothing.
Antony Riakiotakis [Wed, 18 Dec 2013 22:48:26 +0000 (00:48 +0200)]
Fix T37807 gravity causes crashes when using shif-smoothing.

Turns out we didn't properly free node proxies that gravity did use and
strokes ended up accessing previous data. Also deactivated gravity when
a smooth brush is used. It is kind of distracting to get the mesh
gravitated while smoothing.

7 years agoFix T37691: Screw modifier created zero length normals
Campbell Barton [Wed, 18 Dec 2013 20:53:20 +0000 (07:53 +1100)]
Fix T37691: Screw modifier created zero length normals

7 years agoFix T37847: some buttons displayed too wide in multi-column menus.
Brecht Van Lommel [Wed, 18 Dec 2013 18:33:54 +0000 (19:33 +0100)]
Fix T37847: some buttons displayed too wide in multi-column menus.

7 years agoRevert svn r55587, fix for T34698 (Disable snap when transform axis is constrained)
Campbell Barton [Wed, 18 Dec 2013 17:54:11 +0000 (04:54 +1100)]
Revert svn r55587, fix for T34698 (Disable snap when transform axis is constrained)

Currently we don't properly support snapping + axis-constraints, but
there are cases where its handy to project-snap for eg, and constraint
to an axis so re-enable this.

7 years agoUI: avoid using AT define for malloc id's
Campbell Barton [Wed, 18 Dec 2013 16:08:48 +0000 (03:08 +1100)]
UI: avoid using AT define for malloc id's

They're very verbose and while useful for debugging leaks - a unique
string is normally enough to track down the problem.

7 years agoVertex/weight paint: remove "Use All Faces" option.
Brecht Van Lommel [Wed, 18 Dec 2013 16:49:01 +0000 (17:49 +0100)]
Vertex/weight paint: remove "Use All Faces" option.

This is now always enabled, when you want to paint on a individual faces you
can use face selection masking instead.

Fixes T37855.

7 years agoComment fix to previous commit
Antony Riakiotakis [Wed, 18 Dec 2013 16:36:07 +0000 (18:36 +0200)]
Comment fix to previous commit

7 years agoFix T37177, sculpting can act on opposite side of mesh in orthographic camera.
Antony Riakiotakis [Wed, 18 Dec 2013 16:34:02 +0000 (18:34 +0200)]
Fix T37177, sculpting can act on opposite side of mesh in orthographic camera.

Issue here most probably is that the start point in ray-casting is too
far away from the mesh. As a result the triangle intersection code can
sometimes miss the ray intersection. To solve this, we project the ray
segment to the boundary of the root node.

Reviewers: brecht, sergey, campbellbarton

Reviewed By: brecht

Maniphest Tasks: T37177

Differential Revision:

7 years agoFix T37834: smoke opengl render not delivering correct alpha channel.
Brecht Van Lommel [Wed, 18 Dec 2013 16:24:52 +0000 (17:24 +0100)]
Fix T37834: smoke opengl render not delivering correct alpha channel.

7 years agoView3D: small optimization for smoke drawing
Campbell Barton [Wed, 18 Dec 2013 14:49:20 +0000 (01:49 +1100)]
View3D: small optimization for smoke drawing

7 years agoFix T37675: blender internal viewport render not updating properly with volumes.
Brecht Van Lommel [Wed, 18 Dec 2013 14:41:28 +0000 (15:41 +0100)]
Fix T37675: blender internal viewport render not updating properly with volumes.

7 years agoRevert fix for T37705: it's messing up the panel order in another place.
Brecht Van Lommel [Wed, 18 Dec 2013 14:10:40 +0000 (15:10 +0100)]
Revert fix for T37705: it's messing up the panel order in another place.

7 years agoFix T37705: texture panel order wrong when switching from cycles to blender render.
Brecht Van Lommel [Wed, 18 Dec 2013 12:15:13 +0000 (13:15 +0100)]
Fix T37705: texture panel order wrong when switching from cycles to blender render.

7 years agoFix T37790: OSL not rendering subsurface scattering color correct since upgrade to...
Brecht Van Lommel [Wed, 18 Dec 2013 11:29:11 +0000 (12:29 +0100)]
Fix T37790: OSL not rendering subsurface scattering color correct since upgrade to 1.4.

7 years agoFix T37843: area split widget missing in python console editor.
Brecht Van Lommel [Wed, 18 Dec 2013 11:02:31 +0000 (12:02 +0100)]
Fix T37843: area split widget missing in python console editor.

Python was indirectly causing redraw tags during drawing, which interfered
with the ARegion.drawrct, now ignore these during draw.

7 years agoFix T37837: mirror modifier merge does not place vertices at the center.
Brecht Van Lommel [Wed, 18 Dec 2013 10:14:24 +0000 (11:14 +0100)]
Fix T37837: mirror modifier merge does not place vertices at the center.

This was broken since BMesh.

7 years agoFix T37842: missing 3D view redraw when editing group layers and offset.
Brecht Van Lommel [Wed, 18 Dec 2013 09:52:40 +0000 (10:52 +0100)]
Fix T37842: missing 3D view redraw when editing group layers and offset.

7 years agoColor management: added utility function to apply processor on a pixel
Sergey Sharybin [Wed, 18 Dec 2013 09:51:09 +0000 (15:51 +0600)]
Color management: added utility function to apply processor on a pixel

It applies color management on a pixel in a way, based on number of
channels of this pixel.

Simplifies partial update code a bit.

7 years agoError in recent commit
Campbell Barton [Wed, 18 Dec 2013 09:31:41 +0000 (20:31 +1100)]
Error in recent commit

7 years agoColor management: get rid of original byte buffer partial update
Sergey Sharybin [Wed, 18 Dec 2013 09:20:07 +0000 (15:20 +0600)]
Color management: get rid of original byte buffer partial update

It was only used by opengl render and in fact it needed just to
set DISPLAY_BUFFER_INVALID flag for the image buffer.

In theory it wouldn't make any change to opengl render speed
(because this change just moved rect_from_float from color
management code to image save code). And could not see any speed
changes on my laptop.

7 years agoFix for button selection offset
Campbell Barton [Wed, 18 Dec 2013 08:28:59 +0000 (19:28 +1100)]
Fix for button selection offset

Was using a different font size with selection and drawing,
But scaling both so they mostly matched.

This made selection shift noticeably when done on an interface zoomed in/out.

7 years agoBLF: debug function to print a fonts state
Campbell Barton [Wed, 18 Dec 2013 08:18:55 +0000 (19:18 +1100)]
BLF: debug function to print a fonts state

7 years agoCode Clenaup: use const for button checking functions
Campbell Barton [Wed, 18 Dec 2013 06:47:38 +0000 (17:47 +1100)]
Code Clenaup: use const for button checking functions

7 years agoFix artifact in partial buffer update after recent changes
Sergey Sharybin [Wed, 18 Dec 2013 08:05:06 +0000 (14:05 +0600)]
Fix artifact in partial buffer update after recent changes

The issue wasn't new in fact, just partial buffer update
function was still broken. Not sure how those issues were
not noticed for so long.

Perhaps partial_buffer_update_rect() could be simplified,
but i've got some more upcoming changes here which might
run into conflicts if i'll do simplification now.

7 years agoCode cleanup: Game Engine related panels belong into
Thomas Dinges [Wed, 18 Dec 2013 06:35:05 +0000 (07:35 +0100)]
Code cleanup: Game Engine related panels belong into

7 years agoUI: more fixes for text clipping
Campbell Barton [Wed, 18 Dec 2013 06:11:38 +0000 (17:11 +1100)]
UI: more fixes for text clipping

Were still cases where numbers could be clipped incorrectly and icon
size was accounted for twice when left clipping (error in own recent commit).

7 years agoError in last commit
Campbell Barton [Wed, 18 Dec 2013 04:37:55 +0000 (15:37 +1100)]
Error in last commit

7 years agoStyle Cleanup: minor edits in recent changes
Campbell Barton [Wed, 18 Dec 2013 04:35:31 +0000 (15:35 +1100)]
Style Cleanup: minor edits in recent changes

7 years agoStyle Cleanup
Campbell Barton [Wed, 18 Dec 2013 04:34:56 +0000 (15:34 +1100)]
Style Cleanup

7 years agoGame Engine: Level of detail support and tools
Daniel Stokes [Tue, 17 Dec 2013 22:42:47 +0000 (14:42 -0800)]
Game Engine: Level of detail support and tools

Levels of detail can be added and modified in the object panel. The object
panel also contains new tools for generating levels of detail, setting up
levels of detail based on object names (useful for importing), and
clearing an object's level of detail settings. This is meant as a game
engine feature, though the level of details settings can be previewed in
the viewport.

Reviewed By: moguri, nexyon, brecht

Differential Revision:

7 years agoFix compile on MSVC, we don't use "isfinite" anywhere else inside source/blender ;)
Thomas Dinges [Tue, 17 Dec 2013 20:36:27 +0000 (21:36 +0100)]
Fix compile on MSVC, we don't use "isfinite" anywhere else inside source/blender ;)

7 years agoFix issue with right aligned number buttons overlapping the label
Campbell Barton [Tue, 17 Dec 2013 20:15:25 +0000 (07:15 +1100)]
Fix issue with right aligned number buttons overlapping the label

This also simplifies button clipping which was attempting to detect
offsets that were applied afterwards,
Now apply text clipping after adjusting the button rect margins.

7 years agoCode Cleanup: comment unused functions
Campbell Barton [Tue, 17 Dec 2013 18:07:49 +0000 (05:07 +1100)]
Code Cleanup: comment unused functions

7 years agoUI: Theme Colors for Info space
Sv. Lockal [Tue, 17 Dec 2013 18:02:42 +0000 (05:02 +1100)]
UI: Theme Colors for Info space

7 years agoChanges to partial update during rendering
Sergey Sharybin [Tue, 17 Dec 2013 17:42:38 +0000 (23:42 +0600)]
Changes to partial update during rendering

Mainly addressed to solve old TODO with color managed fallback
to CPU mode when displaying render result during rendering.

That fallback was caused by the fact that partial image update
was always acquiring image buffer for composite output and was
only modifying display buffer directly.

This was a big issue for Cycles rendering which renders layers
one by one and wanted to display progress of each individual
layer. This lead to situations when display buffer was based on
what Cycles passes via RenderResult and didn't take layer/pass
from image editor header into account.

Now made it so image buffer which partial update is operating
with always corresponds to what is set in image editor header.

To make Cycles displaying progress of all the layers one by one
made it so image_rect_update switches image editor user to
newly rendering render layer. It happens only once when render
engine starts rendering next render layer, so should not be
annoying for navigation during rendering.

Additional change to render engines was done to make it so
they're able to merge composite output to final result
without marking tile as done. This is done via do_merge_result
argument to end_result() callback. This argument is optional
so should not break script compatibility.

Additional changes:

- Partial display update for Blender Internal now happens from
  the same thread as tile rendering. This makes it so display
  conversion (which could be pretty heavy actually) is done in
  separate threads. Also gives better UI feedback when rendering
  easy scene with small tiles.

- Avoid freeing/allocating byte buffer for render result
  if it's owned by the image buffer. Only mark it as invalid
  for color management.

  Saves loads of buffer re-allocations in cases when having
  several image editors opened with render result. This change
  in conjunction with the rest of the patch gave around
  50%-100% speedup of render time when displaying non-combined
  pass during rendering on my laptop.

- Partial display buffer update was wrong for buffers with number
  of channels different from 4.

- Remove unused window from RenderJob.

- Made image_buffer_rect_update static since it's only used
  in single file.

Reviewers: brecht

Reviewed By: brecht

CC: dingto
Differential Revision:

7 years agoFix T37718: Texture compression missing
Sergey Sharybin [Tue, 17 Dec 2013 16:16:53 +0000 (22:16 +0600)]
Fix T37718: Texture compression missing

Make sure image will saved as (not over) after changing
it's type to Generated by clearing image's path in signal

7 years agoCode Cleanup: comment unused define
Campbell Barton [Tue, 17 Dec 2013 13:20:18 +0000 (00:20 +1100)]
Code Cleanup: comment unused define

7 years agoFix compile after last commit, casting to (bArmature *), kudos to JesterKing
Jens Verwiebe [Tue, 17 Dec 2013 13:14:03 +0000 (14:14 +0100)]
Fix compile after last commit, casting to (bArmature *), kudos to JesterKing

7 years ago'Transform' Python Function for armature, curve and lattice.
Campbell Barton [Tue, 17 Dec 2013 11:13:15 +0000 (22:13 +1100)]
'Transform' Python Function for armature, curve and lattice.

patch by Paolo Acampora with some edits.

7 years agoFix bplayer broken in own rB51f5c994e9f0.
Bastien Montagne [Tue, 17 Dec 2013 09:46:21 +0000 (10:46 +0100)]
Fix bplayer broken in own rB51f5c994e9f0.

7 years agoCycles / OpenCL: Fix compile error on OS X
Thomas Dinges [Tue, 17 Dec 2013 08:54:36 +0000 (09:54 +0100)]
Cycles / OpenCL: Fix compile error on OS X

After update to Mac OS X 10.9.1, OpenCL works now on my Intel CPU in the 2013 Macbook Pro (even the entire kernel).
The Intel Iris Pro GPU still segfaults here though, even when all flags are disabled (building "clay like" kernel only).

Maybe we need the -no-missing-prototypes for AMD hardware still, but I couldn't find a way to distuinguish here.

7 years agoFix T37103: Keyframing custom properties issue (FCurve would not reflect Custom props...
Bastien Montagne [Tue, 17 Dec 2013 08:40:52 +0000 (09:40 +0100)]
Fix T37103: Keyframing custom properties issue (FCurve would not reflect Custom props type changes).

Add an helper func to re-compute integer-only fcurve flags, and call it when editing custom props.

Reviewed by aligorith, thanks!

Summary: Proposal fix for "keyframing custom properties issue" (T37103).

Reviewers: aligorith

Maniphest Tasks: T37103

Differential Revision:

7 years agoFix for crash in toolbar tabs with only one tab defined
Campbell Barton [Tue, 17 Dec 2013 08:16:44 +0000 (19:16 +1100)]
Fix for crash in toolbar tabs with only one tab defined

7 years agoPartial fix for T37604: Deadlock when stopping rendered viewport (Blender Internal)
IRIE Shinsuke [Tue, 17 Dec 2013 07:44:56 +0000 (18:44 +1100)]
Partial fix for T37604: Deadlock when stopping rendered viewport (Blender Internal)

- Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS macros cannot be used here, because the Py_BEGIN_ALLOW_THREADS causes a crash when quitting Blender.
- The low level function PyEval_ReleaseLock() is used assuming the Python library was built with multi-threads support.

7 years agoFix crash in freestyle vector parsing (hard to believe nobody noticed)
Campbell Barton [Tue, 17 Dec 2013 07:01:15 +0000 (18:01 +1100)]
Fix crash in freestyle vector parsing (hard to believe nobody noticed)

Vectors were being assigned as an array of classes in Vec2f_ptr_from_PyObject and similar functions,
rather then assigning a number to each axis.

7 years agoFix for obscure freestyle crash when attempting to negate INT_MIN
Campbell Barton [Tue, 17 Dec 2013 06:53:29 +0000 (17:53 +1100)]
Fix for obscure freestyle crash when attempting to negate INT_MIN

This gives undefined behavior - in my case stays the same value and crashes.

Check for finite input resolves the issue.

7 years agoPy API: use direct access to list/tuple size when type is known
Campbell Barton [Tue, 17 Dec 2013 04:41:03 +0000 (15:41 +1100)]
Py API: use direct access to list/tuple size when type is known

7 years agoFix for possible NULL pointer use in brush image sampling
Campbell Barton [Tue, 17 Dec 2013 02:19:54 +0000 (13:19 +1100)]
Fix for possible NULL pointer use in brush image sampling

7 years agoUI: don't attempt to draw with the menu-key when only drawing right aligned
Campbell Barton [Tue, 17 Dec 2013 02:11:31 +0000 (13:11 +1100)]
UI: don't attempt to draw with the menu-key when only drawing right aligned

7 years agoMore slangs and other spellchecking exceptions...
Bastien Montagne [Mon, 16 Dec 2013 20:26:48 +0000 (21:26 +0100)]
More slangs and other spellchecking exceptions...

7 years agoBetter handling of new libnames of OpenEXR 2.1 (same solution as one used in OIIO...
Bastien Montagne [Mon, 16 Dec 2013 20:00:35 +0000 (21:00 +0100)]
Better handling of new libnames of OpenEXR 2.1 (same solution as one used in OIIO/OSL source).

7 years agoFix for out-of-bounds memcpy() when adding a material
Campbell Barton [Mon, 16 Dec 2013 18:47:22 +0000 (05:47 +1100)]
Fix for out-of-bounds memcpy() when adding a material

7 years agoUserDefaults: disable orbit around object center and region-overlap
Campbell Barton [Mon, 16 Dec 2013 17:04:35 +0000 (04:04 +1100)]
UserDefaults: disable orbit around object center and region-overlap

both have bad side-effects with strange behavior and viewport performance

7 years agoUI: Tabs categories for panels (D75)
Campbell Barton [Mon, 16 Dec 2013 16:21:55 +0000 (03:21 +1100)]
UI: Tabs categories for panels (D75)

- works by defining panel categories, currently restricted to the toolbar.
- no panels define bl_categories yet, so no user visible changes since tabs only show when there are multiple.
- panel pinning is available in rmb menu or alt+lmb.

7 years agoBetter fix for previous commit
Sergey Sharybin [Mon, 16 Dec 2013 16:05:27 +0000 (22:05 +0600)]
Better fix for previous commit

Cache iterator might return unused keys as well.
Now unused keys are being removed before cleanup
and iteration.

7 years agoFix possible crash when cleaning cache with some ibufs removed by the memory limit
Sergey Sharybin [Mon, 16 Dec 2013 14:38:53 +0000 (20:38 +0600)]
Fix possible crash when cleaning cache with some ibufs removed by the memory limit

7 years agoColor management: use fallback mode if there're no displays/views
Sergey Sharybin [Mon, 16 Dec 2013 12:35:20 +0000 (18:35 +0600)]
Color management: use fallback mode if there're no displays/views

Before this it was a runtime check for number of displays/views
which is rather really annoying.

This simplifies code a bit and allows to do some more tricks
in other patches.

7 years agoAdd optional 'frame' argument to
Dalai Felinto [Fri, 13 Dec 2013 14:36:40 +0000 (12:36 -0200)]
Add optional 'frame' argument to

Differential Revision:

7 years agoMotion tracking: use PROP_PIXEL for pixel RNA values
Sergey Sharybin [Mon, 16 Dec 2013 11:53:15 +0000 (17:53 +0600)]
Motion tracking: use PROP_PIXEL for pixel RNA values

7 years agoDisable region overlap in movie clip editor
Sergey Sharybin [Mon, 16 Dec 2013 11:16:05 +0000 (17:16 +0600)]
Disable region overlap in movie clip editor

Before it was giving weird behavior with timeline in MCE
and track preview widgets. But there's also no much benefit
of having transparent toolbox there.

Requested by our motrack guru Sebastian ages ago.

7 years agoUI: use BLF_width_to_strlen for efficient text clipping
Campbell Barton [Mon, 16 Dec 2013 10:59:47 +0000 (21:59 +1100)]
UI: use BLF_width_to_strlen for efficient text clipping

7 years agoBLF API: Add BLF_width_to_strlen,rstrlen gives a byte offset from a string width
Campbell Barton [Mon, 16 Dec 2013 10:47:10 +0000 (21:47 +1100)]
BLF API: Add BLF_width_to_strlen,rstrlen gives a byte offset from a string width

7 years agoFix T37826: Opening a new image in the image editor
Sergey Sharybin [Mon, 16 Dec 2013 10:42:48 +0000 (16:42 +0600)]
Fix T37826: Opening a new image in the image editor

Cast dimensions to size_t before multiplication.
Also made add_ibuf_size survive cases when image
buffer allocation failed.

7 years agoMake compression in IMB_allocImBuf match other places
Sergey Sharybin [Mon, 16 Dec 2013 10:41:15 +0000 (16:41 +0600)]
Make compression in IMB_allocImBuf match other places