Commit Graph

51328 Commits

Author SHA1 Message Date
Campbell Barton
09b4954d2d UI: use BLF_width_to_strlen for efficient text clipping 2013-12-16 22:00:30 +11:00
Campbell Barton
ce3f42e16a BLF API: Add BLF_width_to_strlen,rstrlen gives a byte offset from a string width 2013-12-16 22:00:30 +11:00
Sergey Sharybin
c193dbe30b 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.
2013-12-16 16:51:27 +06:00
Sergey Sharybin
a2543ee43d Make compression in IMB_allocImBuf match other places 2013-12-16 16:41:15 +06:00
Sergey Sharybin
17604cded9 Missing NULL-pointer check in BKE_image_free_anim_ibufs 2013-12-16 16:30:28 +06:00
Brecht Van Lommel
c05209ec01 Fix T37827: cycles XML mesh export utility not longer worked. 2013-12-16 11:08:41 +01:00
Bastien Montagne
740c7e677b Fix typo in previous own commit (thanks to _FrnchFrgg_ for noticing this!). 2013-12-15 15:53:50 +01:00
Campbell Barton
6ea13cf217 Editmesh: skip allocating a face array for recalc-normals 2013-12-16 01:28:07 +11:00
Sv. Lockal
2b0ba65c51 Minor optimization for strlen and memcpy calls for reading blend files
Summary:
This commit removes ~10000 strlen calls and ~100000 memcpy calls in blender (profiled with blender --background), ~10000 memcpy calls in makesdna.

There is no need to create null-terminated strings for atoi, because it converts only the initial portion of the string anyway.
Also it was noticed that DNA_elem_array_size and arraysize functions work only with full strings, so there is no point to calculate strlen.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: http://developer.blender.org/D105
2013-12-15 18:06:04 +04:00
Peter Staples
4a141022c3 Fix T37816: make cycles panel registration work better with addons.
This would give an error when an addon removed a panel.
2013-12-14 18:00:25 +01:00
Campbell Barton
d833aab887 correct error in recent commit 2013-12-15 03:59:51 +11:00
Antony Riakiotakis
df2537d09d Revert "Hide the 3D cursor in a few cases where it is unneeded (active object is"
This reverts commit 85eaa98980.

Conflicts:
	source/blender/editors/space_view3d/view3d_draw.c
2013-12-14 15:23:57 +02:00
Brecht Van Lommel
cccd06ea44 Fix T37810: GLSL dither shader not working on OS X.
The GLSL function textureSize() is not supported here, only when we start using
OpenGL core profile will this work. For now check the supported GLSL version and
use a somewhat slower replacement.
2013-12-14 16:01:48 +01:00
Bastien Montagne
05fe9a435a Make libyaml-cpp-dev not-breaking case for deb-like distros, and colors for messages! 2013-12-14 15:52:15 +01:00
Campbell Barton
37720364d5 Curves: Skip 3dtext & 2d-curve filling when fill is set to 'None'
Otherwise was impossible to have unfilled curves unless extrude was set
2013-12-15 01:49:12 +11:00
Campbell Barton
7947b3d21d Fix for recent regression in curve geometry panel poll 2013-12-15 01:33:10 +11:00
Brecht Van Lommel
f00728c19b Fix bmesh compiler warning with OS X / clang. 2013-12-14 15:24:53 +01:00
Thomas Dinges
1bebdc9ad0 Fix T37264: cycles CPU render had limited number of float images, bumped to 1024.
GPU is still limited to 5, but there's no good reason for the CPU to be limited.
2013-12-14 15:07:46 +01:00
Thomas Dinges
5fdfa6d475 Interface / 3D View: Add missing "add" menu for armature edit mode, reported in IRC.
Also remove an unused menu for surface/curves.
2013-12-14 13:47:30 +01:00
Campbell Barton
60a6b2422d Modeling: add optional angle limit for beauty fill
Makes this tool more useful on an entire mesh by only applying
beautify to planar surfaces.
2013-12-14 23:25:29 +11:00
Campbell Barton
ab9fabdfc6 BMesh API: optionally pass fallback to BM_edge_calc_face_angle functions 2013-12-14 23:25:28 +11:00
Thomas Dinges
b43ce8a140 Code cleanup / Cycles: Remove some unused hair code. 2013-12-14 13:11:44 +01:00
Thomas Dinges
01fc7a687a Code cleanup: Remove "TexFace to Material Convert", from the file menu. This was used for conversion from older 2.5x files. The do_version() code is still there and functioning though. 2013-12-14 10:48:12 +01:00
Thomas Dinges
dda37dbc5c Interface / Modifiers: Use a toggle/icon button for vertex group invert (was already used in particle system).
This way we save a few lines of space, while keeping the functionality clear. Also some minor layout reshuffling and cleanup.
2013-12-14 10:14:24 +01:00
Thomas Dinges
3517cde0fb Code cleanup: Remove Blender 2.4x animation player preset, since we have the internal one. 2013-12-14 09:24:22 +01:00
Thomas Dinges
92afb52ebd Interface: Remove Play button from the Render panel, only keep in the "Render" menu. 2013-12-14 09:14:33 +01:00
Joshua Leung
ff6bf133ad Fix T37811: Delete key shortcut missing for deleting markers
The keymap here used WM_keymap_verify_item(), which only allows for a
single hotkey to be bound to an operator. In most cases, this really
isn't justified.
2013-12-14 13:42:42 +13:00
Thomas Dinges
f372758257 Interface / Modifiers: Don't show cage placeholder in modifier header, if the current modifier does not support it or the cage is disabled (like Subsurf 0).
This way we save some space but still avoid the jumping around while changing settings in the header itself.

Thanks to Brecht for help on this. :)
2013-12-13 20:57:54 +01:00
Brecht Van Lommel
1e045a2417 Cycles: CUDA runtime kernel compilation can now find CUDA 6.0. 2013-12-13 19:12:07 +01:00
Geoffroy Krantz
3ec7bc05b7 UI: color ramp buttons were redesigned and get a button to pick the n-th color stop.
The add, delete and (f)lip buttons now use icons, and some button locations moved.

Reviewed By: brecht, dingto, billrey

Differential Revision: http://developer.blender.org/D97
2013-12-13 17:49:13 +01:00
Campbell Barton
242217f8a3 Code cleanup: float<>double promotion 2013-12-14 03:21:23 +11:00
Scott Petrovic
105a97a7ed UI/RNA: added pixel and percentage units to some properties
Reviewed By: brecht

Differential Revision: http://developer.blender.org/D99
2013-12-13 17:06:14 +01:00
Campbell Barton
c456cd94b2 Curve Handle Recalculate (Ctrl+N)
T37799 Patch from Simon Repp
with added option to recalculate handle lengths.
2013-12-14 02:53:19 +11:00
gaiaclary
52c5365c00 Changed label to use UV Maps instead of UV Layouts 2013-12-13 15:29:50 +01:00
Sergey Sharybin
ce893552c3 Image cache rewrite to using generic movie cache
Summary:
Behaves very much the same as cache for Movie Clip datablock:

- Image now have `MovieCache *cache` field which replaced
  legacy `ListBase ibufs`.

  This allows image datablock to easily keep of image
  buffers which are owned by itself. This field isn't
  saved to the file and getting restored on undo steps.

  However, cache limit is global for movies, sequences
  and image datablocks now. So overall cached image buffers
  size will not go above cache limit size in user
  preferences.

- Image buffers which are marked as BITMAPDIRTY will never
  be freed from the cache.

- Added utility function to iterate over image buffers
  saved in movie cache.

- Movie cache cleanup check callback now have ImBuf argument
  which can be used in a condition of cleanup.

- Added some utility functions which replaces legacy ibufs
  iterations with image cache iteration which happens from
  inside a lock.

- Fixed `image_mem_size()` which was only counting one of
  the buffers if both float and byte buffer present.

Additional notes:

- `BKE_image_get_first_ibuf()` is rather stupid, but direct
  access to ibufs->first was also the same stupid idea.

  Would consider avoid this function is another project.

- There are some places which doesn't look threadsafe, but
  they already were not so much threadsafe anyway before.

  So think not a big deal with solving this later.

Finally solves infinite memory usage by image sequences! :)

Reviewers: brecht, campbellbarton

Reviewed By: brecht

CC: sebastian_k

Differential Revision: http://developer.blender.org/D95
2013-12-13 16:30:00 +06:00
Thomas Dinges
7eab49f8d9 Interface / Particles: Fix bad alignment in Rotation panel, sub layout missed the flag. 2013-12-13 10:54:44 +01:00
Thomas Dinges
9e30783585 Interface / PointCache: Remove name fields here as well, not needed anymore due to direct rename in uiList. 2013-12-13 10:20:35 +01:00
Sergey Sharybin
5a91df3271 Implement GPU-side dither
Summary:
Uses some magic pseudo-random which is actually a
texture coordinate hashing function.

TODOs:
- Dither noise is the same for all the frames.
- It's different from Floyd's dither we've been
  using before.
- Currently CPU and GPU dithering used different
  implementation. Ideally we need to use the same
  dither in CPU.

Reviewers: brecht

Reviewed By: brecht

Differential Revision: http://developer.blender.org/D58
2013-12-13 12:36:45 +06:00
Antony Riakiotakis
669b590229 minor style and comment fix. 2013-12-12 23:32:07 +02:00
Antony Riakiotakis
85eaa98980 Hide the 3D cursor in a few cases where it is unneeded (active object is
in sculpt mode or image paint mode and no clone tool is active)
2013-12-12 23:25:06 +02:00
Brecht Van Lommel
a53e864cf4 Fix T37572: text editor scrolling not working well with Mac trackpad panning.
The trackpad would give isolated mouse pan events with a distance smaller than
one line or character. For other 2D views this is all accumulated in floats,
but in the text editor it only keeps track of integers, and the small mouse pan
events got lost due to rounding.

Now it keeps track of sub-line or sub-character scroll offsets to avoid this.
2013-12-13 00:04:05 +01:00
Campbell Barton
51b9d85b09 UI: remove text margin when a slider is aligned to another button
Paint sliders had too much space on right (aligned with pressure icons)
2013-12-13 05:29:54 +11:00
Antony Riakiotakis
e45a9a3aaa Radial control operator support for pixel properties 2013-12-12 20:07:40 +02:00
Campbell Barton
700e799ef5 Fix T37692: Follow active quads failed on unselected-active-face 2013-12-13 05:05:21 +11:00
Scott Petrovic
c701082a92 RNA: Add pixels property type 2013-12-13 04:40:30 +11:00
Campbell Barton
6c96535fd8 Code Cleanup: use static for sky_model_data.h 2013-12-13 04:40:30 +11:00
Antony Riakiotakis
b0a3f32ed3 improvements and simplification to gravity code:
* world to object matrix is calculated for view vector as well, reuse
that.
* if no orientation exists use world negative axis instead of object
negative axis for gravity.

there's also the issue of mirroring, it may be wise to invert the
gravity effect there but it may be better to have artist feedback on
that.
2013-12-12 19:35:33 +02:00
Antony Riakiotakis
c740f1a792 Sculpt mode Gravity feature from GSOC 2010 by Jason Wilkins.
Reviewers: sergey, brecht, campbellbarton, jwilkins

Differential Revision: http://developer.blender.org/D89
2013-12-12 19:01:11 +02:00
Bastien Montagne
400fc9f86f Raise llvm min version to 3.3, looks like this is needed for OSL nowadays... 2013-12-12 17:24:41 +01:00
Campbell Barton
9ad88fbe6d Fix for error exposed by right-align number buttons
When the entire label was clipped, the right aligned number component
could be clipped on its left hand side too.
So "Foo: 1.00" could be clipped to ".00"
2013-12-13 02:47:00 +11:00