Commit Graph

45538 Commits

Author SHA1 Message Date
Campbell Barton
2c8d3a969d patch [#34604] Add DPI read write for BMP and OpenEXR format 2013-03-13 07:16:53 +00:00
Campbell Barton
0488af00fe fix for crash with laplacian smooth when unselected ngons were used, volume calculation assumed unselected face were not ngons.
- added convenience function BM_face_calc_tessellation() to get triangles from an ngon.
- expose volume function as BM_mesh_calc_volume().
2013-03-13 06:32:08 +00:00
Campbell Barton
56771becd0 code cleanup: remove bmesh subdivide header, all definitions can be included in bmo_subdivide.c.
also only initialize random numbers when fractal option is set.
2013-03-13 05:33:23 +00:00
Campbell Barton
839b07fe31 style cleanup: also remove unused defines in paint_image.c 2013-03-13 05:23:53 +00:00
Antony Riakiotakis
acd3bef34e Texture sampling function refactoring:
ALERT! POSSIBLE BREAKING COMMIT, ESPECIALLY FOR SCULPT!

Separate the sculpt sampling function so that it can be reused
from other paint systems. This includes updating of the relevant
coordinates for anchored and rake style brushes, which are now
being updated as part of the stroke system.

I left only code for area-style brush texture mapping in sculpt
code, since it requires a few data structures not present on other
paint systems.

This commit makes it almost as easy to support rake on other systems as
exposing the python UI for it. Also it makes it totally possible to
have texture painting capabilities in vertex paint too :) These commits
will follow very soon.

Also, even if I did my best to keep the code from breaking, (even fixed a
leftover bug from coordinate changes) this is a big change. Please test!
2013-03-13 03:46:22 +00:00
Campbell Barton
153b63e0fd style cleanup 2013-03-12 21:46:33 +00:00
Sergey Sharybin
e6cdee370e Patch #34204: [Render Animation] Fails with "Error: Specified sample_fmt is not supported" with ogg vorbis
Patch by Jehan Pages (pardon for mis-typing, emacs-nox works not so good with
urf-8 buffers here), with some own modifications. Thanks!

From the patch tracker:

The problem is because of several versions of ffmpeg, but even more because of
the fork situation libav/ffmpeg. So there are some installed versions out there
where you *must* use a float sample for some codec; whereas oppositely on some
other installations, you *must* use the int sample. So for some people, one
works not the other, and reciprocally.

As a consequence, you can't just have a switch codec-based, like in current
code, which decides on the float or int implementation, you must necessarily
have a runtime test because you won't know until then if ogg vorbis will use
one or another sample (note: that's true also for AC3 as I fixed the exact same
bug in DVDStyler for AC3 encoding a few months ago; and I guess it would be same
for AAC).

Some notes from self:
- New FFmpeg requires using FLTP for AAC, AC3 and Vorbis, it's not supported
  by audaspace and result in this case would be just wrong. Throw an error
  in cases FLTP is trying to be used.
- Moved strict_std_compliance a bit upper. When we'll support FLTP both
  FLT and FLTP for AAC would need to be using FF_COMPLIANCE_EXPERIMENTAL.
- It is nice to have such check of supported by codec formats anyway.
2013-03-12 16:57:14 +00:00
Sergey Sharybin
d0af1101fb Patch #34569: Enable PNG Codec for video output
By Gottfried Hofmann, thanks!
2013-03-12 16:09:23 +00:00
Campbell Barton
f6025018f5 change defaults for window state on X11 (yet again), after further discussion.
instead use a fixed size as a default, clamp by the desktop size and add some padding (to account for title bar and panel).
2013-03-12 14:55:52 +00:00
Sergey Sharybin
984bd7ffa8 Print compositor execution statistics when in background mode
This will print memory usage, mapped memory usage, memory peak,
compositing tree name and number of finished tiles to stdout
when blender is rendering in background mode.

This makes compositor a less blackbox and should help trouble
shooting issues happening during 4K ToS project.
2013-03-12 14:28:52 +00:00
Sergey Sharybin
96412b711e Fix for strict compiler's flags 2013-03-12 14:06:18 +00:00
Sergey Sharybin
ebcb4b5e75 Fix for crash in special cases when mixing translate node with other
Issue was caused by calling ensureDelta from initexecution, which will
read pixels from an input and it could read from non-initialized
operations.

Issue was originally introduced in svn rev54235 which added ensureDelta
to translate's initExecution, but since rev54349 this call seems to be
doing nothing.
2013-03-12 14:04:58 +00:00
Bastien Montagne
b3ff0d6d2a Temp fix for stupid -Wformat-security issue.
Also makes more use of BLI_snprintf, and makes more consistent code acrross all "header strings" generation in transform.c.
2013-03-12 13:18:39 +00:00
Gaia Clary
d74e029954 Ouliner: Added recursive setting of (visibility/selectability) for bones (Edit- and Object-mode) 2013-03-12 13:03:58 +00:00
Campbell Barton
eefee7a25e replace sprintf -> strcpy where its not needed. 2013-03-12 12:47:57 +00:00
Sergey Sharybin
b7b14ac186 Changing image ID datablock fomr browser in Image node didn't change output sockets
Which lead to either multilayer sockets hanging around when switching image from
multilayer to singlelayer, or missing layers outputs when switching from single
to multilayer image.
2013-03-12 11:03:50 +00:00
Sergey Sharybin
ae09d2f9d8 Fixe related on #34608: MultiLayer OpenEXR (from Maya) - passes lost in Compositor Image Node
imb_exr_split_channel_name didn't set any value to layer and pass names,
leaving them uninitialized.

This is likely solves initial report, but will know for sure after testing
windows build only.
2013-03-12 10:34:14 +00:00
Sergey Sharybin
36887c0ed0 Woops, installing dlls shall happen after all the folders are created. 2013-03-12 09:24:52 +00:00
Sergey Sharybin
ff65a6d457 Made a mistake in recent windows buildbot tweaks.
Didn't count indentation correct..
2013-03-12 09:19:38 +00:00
Campbell Barton
ee3d910f8f code cleanup: quiet struct gcc warnings, also use more conventional names for bmesh dissolve. 2013-03-12 08:50:02 +00:00
Campbell Barton
d9960dba31 fix own regression in 2.66 [#34610] Text editor: Syntax highlighting freezes 2013-03-12 08:46:12 +00:00
Sergey Sharybin
e84153a91c Fix compilation error after recent changes to strict gcc flags
Dudes, please try building blender with all default features
before doing such a commits. It helps just a lot when bisecting
issues later.

Also solved const qualifier discard happens in recent monofont
commit.
2013-03-12 08:24:36 +00:00
Sergey Sharybin
9c0eecbf10 Fix #34599: Mask nodes stop working if output is later piped through HSV node
Issue was caused by the fix for #33650 which changed way to check whether
operation resolution is set or not from checking dimensions are zero to
setResolution was ever called.

Such change lead to conflict with MixBase operation (used for Mix node) which
uses temporary zero resolution to check whether input socket resolution is
known. This leads to zero resolution setting to that branch of tree. After this
resolution will never set to it's actual value.

For now solved by changing logic how MixBase operation detects resolution.
Namely instead of using trick with temporary zero resolution and calling
determineResolution for all inputs, and then call base class's method to
determine resolution just once again, check whether input socket is connected
and if so use it's resolution.

Shall not be regressions for real-life trees, but keeping an eye on this and
doing more tests is for sure welcome.
2013-03-12 08:24:30 +00:00
Irie Shinsuke
5792e77239 Patch [#34373] Use i18n monospace font in Text editor and Python console
This patch allows Blender to display i18n monospace font in the text
editor and the Python interactive console. Wide characters that occupy
multiple columns such as CJK characters can be displayed correctly.
Furthermore, wrapping, selection, suggestion, cursor drawing, and
syntax highlighting should work.

Also fixes a bug [#34543]: In Text Editor false color in comment on cyrillic

To estimate how many columns each character occupies, this patch uses
wcwidth.c written by Markus Kuhn and distributed under MIT-style license:

  http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c

wcwidth.c is stored in extern/wcwidth and used as a static library.

This patch adds new API to blenfont, blenlib and blenkernel:

BLF_get_unifont_mono()
BLF_free_unifont_mono()
BLF_draw_mono()
BLI_wcwidth()
BLI_wcswidth()
BLI_str_utf8_char_width()
BLI_str_utf8_char_width_safe()
txt_utf8_offset_to_column()
txt_utf8_column_to_offset()
2013-03-12 07:25:53 +00:00
Irie Shinsuke
6669ee4784 Add i18n monospace font (bmonofont-i18n.ttf) which will be used for the text editor and interactive console
This is a mixed font based on DejaVu Sans Mono and including M+1M
Regular and Wen Quan Yi Micro Hei Mono. Versions and licenses of the
included fonts are as follows:

- DejaVu fonts: version 2.33, Bitstream font license and Arev font license and public domain
- M+ fonts: TESTFLIGHT 54, M+ font license
- Wen Quan Yi Micro Hei fonts: version 0.2.0-beta, GPLv3 with font embedding exception or Apache2.0

The font license docs will be added later.
2013-03-12 07:07:04 +00:00
Campbell Barton
763d4b2394 ruler: disable rotate with ruler drawing, was drawing too pixelated and hard to read. 2013-03-12 06:25:06 +00:00
Campbell Barton
8661e820f9 bmesh: dissolve, avoid unnecessary loop in test_extra_verts(), also minor code cleanup. 2013-03-12 05:48:30 +00:00
Campbell Barton
539d7d460d bmesh: maintain active face when dissolving. 2013-03-12 05:36:43 +00:00
Campbell Barton
660be3da39 use gcc warning -Wredundant-decls, exposes some odd/duplicate declarations which have been removed. 2013-03-11 20:27:38 +00:00
Thomas Dinges
8560b141eb Fix for [#34598] Modifier-Icon in Outliner does not appear
* OBJECT_OT_make_links_scene did only trigger an 3D View update which was insufficient for Outliner (modifiers for example) and also some parts inside the Properties Editor (Mesh Data, Material Data).
2013-03-11 19:50:11 +00:00
Antony Riakiotakis
42b9c68534 Minor cleanup: We always use colour correction now for float buffers. Get rid of flag variable. 2013-03-11 18:40:43 +00:00
Antony Riakiotakis
0a3382c8e0 Fix #34589. There was no space conversion being done between layers in
different colour space when using the clone brush.
2013-03-11 18:11:07 +00:00
Campbell Barton
e6dcf9504e code cleanup:
- move recursive bone/parent check into ED_armature.h
- remove unused vars
- use const for paint vector args.
2013-03-11 16:23:33 +00:00
Gaia Clary
1672ac25ca Ouliner: Added recursive select of (visible) bones (Edit- and Object-mode) 2013-03-11 16:02:16 +00:00
Bastien Montagne
f09f2d1c31 Fix more UI i18n issues (reported by Leon Cheung). 2013-03-11 15:01:03 +00:00
Sergey Sharybin
b93c44b8cc Mixed paths to redist libraries in recent commit 2013-03-11 14:16:41 +00:00
Bastien Montagne
5b53a17bfb Colormanagement: Fix issue with colorspaces' description too short, and reduce usage of magic numbers. 2013-03-11 11:15:05 +00:00
Sergey Sharybin
28857e8c9e Fix #34511: Invalid Audio/Video codec combination produces hung filehandle 2013-03-11 11:09:57 +00:00
Sergey Sharybin
1a0789dc72 Windows buildbot tweaks
Make it so install directory is being nicely
cleaned before next build, which makes it
automatically removing all old files from
previous installations.
2013-03-11 10:49:51 +00:00
Sergey Sharybin
ed1c22db00 Fix first regression introduced with r55173: need to import shutil before using methods from it
Otherwise linux buildbot fails dramatically.

That revision also leads to msvc runtime libs being removed, will fix this
in separate commit.

Take more respect for such creepy as linux and windows platforms, they're not so bad!
2013-03-11 09:11:46 +00:00
Bastien Montagne
4daef64986 Fix more UI i18n issues (reported by Leon Cheung and Lockal).
We have a glicth with colormanagement's spaces descriptions, though, looks like they are clamped at 64 chars (see raw space), will see that later, if it’s solvable.
2013-03-11 09:06:49 +00:00
Campbell Barton
34f3dc43e7 code cleanup: pep8 & minor changes 2013-03-11 02:19:58 +00:00
Joshua Leung
81aa46efaa Renaming "properties_object_constraint.py" to "properties_constraint.py"
The code in this file is NOT restricted to use in object context only. Renaming
it makes it easier to find this file (taking in account name truncations).
2013-03-11 01:59:48 +00:00
Joshua Leung
1428f0ebdb Another attempt to reduce the confusion between Object and Bone constraints
* The wording on the "Add Constraint" dropdown has been changed so that there is
no ambiguitiy about which tab is currently selected. That is, it now mentions
whether these are object or bone constraints, so that users don't need to try
and look up at the header to check.

* Show the warning about Ob vs Bone constraints when in armature editmode too.
2013-03-11 01:53:21 +00:00
Antony Riakiotakis
722ada58fc Jitter: Change UI. Now use lock icon to indicate relative jitter, tied
to brush size, and unlock icon to indicate absolute jitter untied to
brush size, in screen pixels. Also relative jitter now has soft UI limit
of 2.0 and a hard limit of 1000 times the size of the brush. Should be
enough for the most vivid imaginations...I hope!
2013-03-11 01:46:22 +00:00
Antony Riakiotakis
38feedcaac Feature request for all paint systems that support it: Jittering in
absolute coordinates. This allows an artist to lower the brush radius
while keeping the spread of the brush constant. A toggle under the
jitter slider provides the option to switch between relative/absolute.
2013-03-10 20:05:18 +00:00
Miika Hamalainen
5a981db3ec Fix [#34561]: Possible smoke crash if smoke flow had lower density than adaptive domain "threshold". 2013-03-10 19:12:40 +00:00
Miika Hamalainen
0c93ef3ba9 Fix: Vertex weight color calculation tried to use NULL pointer when called through DM_update_weight_mcol(). (Introduced in r55062.) 2013-03-10 19:10:20 +00:00
Antony Riakiotakis
623902ac51 Fix: stroke spacing fails in image editor, we need to account for
zooming because spacing used to happen in unscaled screen space
2013-03-10 18:46:31 +00:00
Antony Riakiotakis
ca5f7b778c More cruft remove for 2d painting. Remove functions from brush interface
that were in fact 2d painting specific. Also remove old stroke managing
function completely.
2013-03-10 18:05:13 +00:00