Commit Graph

49420 Commits

Author SHA1 Message Date
Nicholas Bishop
0fedc6e45b Stop dyntopo updates from happening in masked areas
Fixes [#34348] Collapse short edges affects masked geometry
/projects.blender.org/tracker/?func=detail&aid=34348&group_id=9&atid=498

Fixed by disallowing topology updates on edges with a vertex masked at
50% or greater. This is a necessarily arbitrary choice; can't do
halfway updates for topology like we can with displacement.
2013-03-16 18:22:45 +00:00
Nicholas Bishop
994265b204 Fix sculpt view normal for transformed objects
Patch from Antony Riakiotakis, thanks!

Fixes [#34641] "Front Faces Only" option in SculptMode behaves weird
projects.blender.org/tracker/?func=detail&aid=34641&group_id=9&atid=498
2013-03-16 17:45:58 +00:00
Campbell Barton
fc11cf1581 fix for buffer overrun in reading bookmarks when a line was over 256 bytes. 2013-03-16 17:33:16 +00:00
Ton Roosendaal
0f8660064a Bug fix, irc reported:
Using new off-screen backbuffer selection failed for Lasso in editmode.
2013-03-16 17:12:39 +00:00
Tamito Kajiyama
031a58dc02 Fix for a crash due to mesh faces with wire frame materials not properly handled.
A problem report by Vicente Carro through personal communications, many thanks!
2013-03-16 16:41:12 +00:00
Campbell Barton
3be732f3ef don't create empty mesh object when separating if nothing is selected. 2013-03-16 16:38:18 +00:00
Campbell Barton
8a4a034325 patch [#34634] Select vertices without a group
from Kevin Mackay (yakca)
2013-03-16 16:11:50 +00:00
Campbell Barton
a38dbb5eac own error in recent knife-project changes. 2013-03-16 16:10:27 +00:00
Campbell Barton
afe9970d48 style cleanup 2013-03-16 14:42:05 +00:00
Campbell Barton
7ec47aa864 code cleanup: shadowing 2013-03-16 14:33:32 +00:00
Campbell Barton
a7b83837db fix for crash when using BM_face_calc_tessellation(), its not ensured that all tris will be filled in.
(effected knife project and laplacian smooth).
2013-03-16 14:18:32 +00:00
Joshua Leung
31356c86d3 Some more assorted fixes
* More duplicate/wrong comments (copy+paste errors)
* Brough Calculate/Clear Motion Path UI for bones more in line with the Object
version
2013-03-16 05:58:59 +00:00
Joshua Leung
9aa4396a97 Assorted anim editor fixes
* Click-select operators don't have "register" flag anymore
* Graph Editor click select can be undone, just like everything else
* "Current frame" -> "Current Frame" for consistency with rest of menu
2013-03-16 05:48:46 +00:00
Joshua Leung
150891605f NLA "Add Track" can now be used to add tracks to previously empty AnimData
blocks, provided the blocks in question are in fact selected.
2013-03-16 05:09:32 +00:00
Joshua Leung
7fc79615e0 Any ID Selector Template: ID Type dropdown now shows icon only as originally
intended

Finally, I've figured out a way to get the ID Selector Template to only show the
icon for the type of ID block (i.e. the intended design), instead of icon+text.
This improves the layout a bit, as previously the type selector and ID-block
pointer and label would all be the same sizes (roughly 1/3rd of the overall
width each), which meant that there wasn't much room left to actually see which
datablock had been selected.

Additionally, I've fixed a few more layout types which still didn't correctly
propagate the red-alert flags.
2013-03-16 03:59:03 +00:00
Joshua Leung
4db11a9e55 Assorted small fixes
* Incorrect comment (copy+paste error) in nla_edit
* Whitespace in rna_gpencil
* The icon for AnimData is now attached to its RNA definition
2013-03-16 02:53:45 +00:00
Joshua Leung
ce1a1d94d0 NLA Editor: Show the ID+AnimData block that the AnimData panel is showing the
active action for
2013-03-16 02:42:19 +00:00
Campbell Barton
a0351fd97e object converting curve/mball to a mesh would give invalid selection state (edges selected but nothing else).
add arg to BKE_mesh_calc_edges() so selecting newly created edges is optional.
2013-03-16 01:19:03 +00:00
Campbell Barton
db77fdc6ff fix for own mistake in using alloca in a loop, replace with BLI_buffer 2013-03-16 00:41:32 +00:00
Campbell Barton
1b994dbeb0 changes to BLI_buffer
- assert if BLI_buffer_at() is called with an out of bounds value.
- add BLI_buffer_resize_data() macro which resizes and returns a pointer to the new array.
- warn if missing call to BLI_buffer_free().
2013-03-16 00:12:14 +00:00
Campbell Barton
93836a24aa correct lasso, weightpaint select, was calling BLI_lasso_boundbox() twice. 2013-03-15 22:56:24 +00:00
Campbell Barton
d9c9209608 code cleanup: quiet some -Wshadow warnings, mix of obvious mistakes and harmless global/local naming conflict. 2013-03-15 22:55:10 +00:00
Antony Riakiotakis
6379dea41c minor cleanup and calculate rake angle before jittering or result
becomes essentially, random
2013-03-15 22:32:44 +00:00
Campbell Barton
6347f96f53 knife project improvements
When running in non-interactive mode, dont add a area draw callback or adjust the cursor, use a fixed snap value and don't use opengl lookups on faces.
Minor optimization - compare squared distances where possible.
2013-03-15 20:39:56 +00:00
Campbell Barton
511b181317 fix for error pasting into a color button (tried to read its rna index of -1) 2013-03-15 20:16:20 +00:00
Brecht Van Lommel
2d21e6521f Fix: multisample viewport drawing didn't work well with selection or particle
brushes, due to issues with color coded drawing or slow/buggy reading from such
a buffer on some systems.

In case multisample is enabled now, it uses an offscreen buffer for such drawing,
which is not multisampled and so should not cause issues. This does mean there is
some extra GPU memory usage when multisample is enabled, and we could optimize
triple buffer to work together here somehow to share buffers, but it's better than
having selection not working.
2013-03-15 19:56:33 +00:00
Brecht Van Lommel
88cf1a2bc7 Screen: add exit callback for area and region types, this gets called when
hiding or removing an area or region.
2013-03-15 19:56:29 +00:00
Campbell Barton
433c82649e knife project: improve selection inside/outside checks.
- use more accurate method to find if a face is inside projected lines.
- check faces intersect while expanding selection - in some cases this could result in the entire model being selected.
2013-03-15 19:38:42 +00:00
Campbell Barton
40bfce6616 use bool for knife, also scons tab/space mix. 2013-03-15 19:00:21 +00:00
Thomas Dinges
87602a6d2a Compile fix:
* Scons needed PThread include after recent movie clip changes.
2013-03-15 17:18:52 +00:00
Sergey Sharybin
08a8d11216 Further improvement for multi-threaded proxies
Handle sequences in a special case for dealing with
sequence sources.

Namely handle separate frames in separate threads,
but do disk read from a critical section since HDD
is not so friendly with lots threads requesting for
data from it.

Makes proxy building much faster than it was before.
2013-03-15 16:57:19 +00:00
Brecht Van Lommel
bcec00dddc Fix #34649: texture size limit user preference not working. 2013-03-15 16:16:11 +00:00
Campbell Barton
630798ba3c add in ifdef for WITH_LIBMV, correct own error passing float[2] as float[3] 2013-03-15 15:47:32 +00:00
Bastien Montagne
ee2b7b2c68 Fix/disambiguation for some "Clip" i18n messages. 2013-03-15 15:13:34 +00:00
Bastien Montagne
bc511df3da Small fix to previous commit: temp buffer for translation context needs to be initialized to relevant default value for operators... Also fixed not initializing those buffers in macro register function. 2013-03-15 15:12:46 +00:00
Campbell Barton
1d5d8bc934 knife project:
- selecting faces inside the cut now works properly
- improve epsilon for detecing if faces are inside a cut (still not perfect)
2013-03-15 14:43:09 +00:00
Bastien Montagne
284e59d608 Add the possibility to define the translation context for py rna classes (operators, panels and menus).
Thanks to Campell and Brecht for the reviews!
2013-03-15 14:32:29 +00:00
Campbell Barton
87919be4f6 fix for own bad mistake using alloca in a loop, also knife project wasnt selecting correctly. 2013-03-15 13:18:35 +00:00
Campbell Barton
03f02019f2 knife projection feature,
apart of 3d printing tools - use to cookie-cut text into a mesh.
2013-03-15 13:06:31 +00:00
Sergey Sharybin
6dc4ea34e4 Multi-threaded frame calculation for movie clip proxies
This commit implements multi-threaded calculation of frames
when building proxies. Both scaling and undistortion steps
are now threaded.

Frames and proxy resolution are still handled one-by-one,
saving files after every single step. So if HDD is not so
fast, this commit could have not so much benefit.

Internal changes:

- Added IMB_scaleImBuf_threaded which scales given image
  buffer in multiple threads and uses bilinear filtering.

- libmv's camera intrinsics now have SetThreads() method
  which is used to specify how many OpenMP threads to use
  for buffer distortion/undistortion.

  And yeah, this code is using OpenMP for threading.

- Reshuffled a bit libmv-capi calls and added function
  BKE_tracking_distortion_set_threads to specify number
  of threads used by intrinscis.
2013-03-15 11:59:46 +00:00
Campbell Barton
0807c976f4 code cleanup: rename BKE_mesh_to_curve_ex --> BKE_mesh_to_curve_nurblist,
also correct odd indentation.
2013-03-15 10:48:48 +00:00
Antony Riakiotakis
9d060b0333 Add missing operators from paint modes:
All modes:
-----------
Shift-S sets smooth stroke mode

Texture Paint/Vertex Paint:
----------------------------
R springs brush rotation control menu
Ctrl-F sets brush user rotation

Vertex paint mode was getting transform events with R, made sure no
transform events are handled for paint modes.
2013-03-15 10:45:43 +00:00
Lukas Toenne
c6d10b8416 Fix #34617, Track Position Node outputs had a limit value of 1 instead of the usual 0 (multiple connections allowed). Common problem with the explicit limit value in socket C templates, should be removed ... 2013-03-15 10:34:32 +00:00
Antony Riakiotakis
99ee23aec5 Support for rake in 2D image painting. 2013-03-15 09:48:51 +00:00
Sergey Sharybin
1ea16dcf9b Patch #34632: DPX/Cineon speed up
Done by Julien Enche (aka trap), thanks!

From the patch comment:
This patch speeds up Cineon/DPX file loading.
Some more checks are done in dpxOpen and cineonOpen functions so IB_test
flag can now be taken into account safely, and an unnecessary call to
IMB_rect_from_float has been removed.

DPX/Cineon file now loads around 3 times faster on my computer.

Own comment:
Ideally, IB_rect shall indeed indicate which buffers to load, however
currently all places which reads image uses this flag.

This fact already mentioned in OpenEXR reader and it shall be fine
to skip doing rect_from_float in readers themselves.
2013-03-15 09:46:37 +00:00
Sergey Sharybin
42660a204a Skip allocating any display buffer and starting any threads
in case image buffer contains byte buffer only and it's
color space matches display space.

It was already check for this case, but it happened later
in color management routines, which is needed for saving
files, but not fast enough for realtime playback of 4K.
2013-03-15 09:35:12 +00:00
Sergey Sharybin
9d5c3264da Skip doing frame undistortion if it's not needed for proxies. 2013-03-15 09:32:59 +00:00
Antony Riakiotakis
b961fda0b1 Fixes for 2d painting:
* Jittering accounts for zoom
* Smooth stroke accounts for zoom
* Expose smooth stroke in image paint editor.
2013-03-15 09:19:41 +00:00
Sergey Sharybin
85b6299747 Fix #34633: Merge First/Last crashes Blender
It was check happening when generating menu with available modes
for merge operator, but no checks happened when executing operator.

Since operator could be called from python or shortcut, it was
possible to bypass all the checks.
2013-03-15 07:08:00 +00:00
Antony Riakiotakis
55a05a9b03 Fix own mistake. Erroneously prefixed sculpt capabilities with sculpt_
before separating them in another struct. Thanks to Sebastian Koenig for reporting
2013-03-15 00:22:04 +00:00