Commit Graph

6404 Commits

Author SHA1 Message Date
Joshua Leung
4ec5a9a42c Bugfix [#29869] NLA editor keeps resetting my extrapolation mode every time I
edit a strip in the timeline

Tweaked the behaviour of the overwritting of extrapolation mode so that it is
less destructive when the problems it sets out to fix aren't likely to occur
(namely a top strip blocking everything below it due to extend backwards).
2012-01-22 04:39:33 +00:00
Joshua Leung
7d13619990 Bugfix [#28468] Cannot enter "Tweak mode" on mutiple objects at the same time,
though it initially works

Problem was that in the past it was possible to have multiple strips/tracks
tagged as "active", but now after getting a correct implementation, we can no
longer have that, and thus entering Tweak Mode only works on the last selected
strip.

However this is problematic in cases when you want to tweak the keyframes of
several objects (which may only have a single strip each) in order to get them
to line up with each other. This hack caters for this case (selecting multiple
strips from the same AnimData block is still impossible and insane/illogical and
is not allowed).

This may have implications for some future tools which make assumptions about
certain aspects of NLA state. However, it shouldn't cause too many problems
(hopefully ;)
2012-01-22 04:30:52 +00:00
Joshua Leung
cfab40b652 Fluidsim - Restoring simulation speed control (ZanQdo request)
This commit restores support for freezing or speeding up physics sims. Animate
the "Speed" parameter under Domain->Time, which controls a multiplier factor for
the rate at which the sim proceeds (i.e. the old "Fac-Tim" setting).

Notes:
* Subversion bumped to 4 to patch up defaults for new value so that old sim
files will still run correctly
* Names/descriptions could do with some tweaking
* Porting this across was not that obvious since quite a bit of stuff had
changed (as in, been cleaned up). However, from tests so far, it seems to work
well.
2012-01-22 03:42:49 +00:00
Campbell Barton
ae771e742b change filepath limit from 240 to 1024 2012-01-21 14:54:53 +00:00
Bastien Montagne
56fae37b2a Fix [#29940] Stretch To constraint breaks scaling in Transform constraint.
Compute of dist between ob/bone and target was quite odd and causing that bug.
2012-01-21 09:41:21 +00:00
Campbell Barton
a98a75346c quiet warnings and possible NULL checking crash fix for indentation functions. 2012-01-20 23:03:41 +00:00
Campbell Barton
3f1584c758 fix 2 bugs
- box packing wasn't flagging out the right free corner of a vertex in some cases.
- tex_space_curve wasn't counting quad displists properly.
2012-01-20 22:09:30 +00:00
Nicholas Bishop
073ea28d58 Skip subsurf normal allocation/calculation when not needed.
CCGSubsurf has already a function to disable calculation of normals,
but seems it wasn't used. This patch changes subsurf UV and
subsurf_calculate_limit_positions() to not calculate normals, and also
not allocate space for them.

Should be no functional changes, just a small speedup/less memory use
during subdivision for these cases.

Code review link:
http://codereview.appspot.com/5558058/
2012-01-20 19:27:04 +00:00
Campbell Barton
1726853226 comment some dead assibnment and set dummy values for image profile conversion in case of invalid input. 2012-01-20 15:18:57 +00:00
Lukas Toenne
0b412e4136 Cleanup of default_value handling in node sockets.
The structs stored in the anonymous void *default_value in bNodeSocket are now handled completely inside node_socket.c. All allocation/freeing/duplicating for this has been replaced by the appropriate calls to generic API functions (declared in NOD_socket.h).

This will make the default value handling more reliable for future node socket code. Group socket copying and value conversion has also been moved into the generic socket API file.
2012-01-20 13:27:54 +00:00
Campbell Barton
fe71f40f88 misc changes from bmesh, syncing across to trunk, no functional changes 2012-01-20 02:24:01 +00:00
Nicholas Bishop
181a4b74c1 Small cleanup to parameters of _getSubSurf().
Removed the unused third argument and changed useAging and useArena to
named flags.
2012-01-20 01:43:49 +00:00
Bastien Montagne
a31d1132e8 Minor code enhancement (replace for loops with while's, and avoid multiple checks to get good face vertex index). No functional changes. 2012-01-19 19:09:59 +00:00
Miika Hamalainen
25a5915650 Dynamic Paint:
* Added "Project" option also for "Volume + Proximity" brush type.
2012-01-19 11:13:41 +00:00
Campbell Barton
a87c5eb52c use color conversions functions in more places.
also add rgba_float_to_uchar, rgba_uchar_to_float
2012-01-19 10:04:51 +00:00
Campbell Barton
879c13bbfc rename rgb_float_to_byte, rgb_byte_to_float to rgb_float_to_uchar, rgb_uchar_to_float and swap args (math functions mostly have dest arg first like strcpy). 2012-01-19 09:09:00 +00:00
Campbell Barton
4786541285 add utility functions linearrgb_to_srgb_uchar4,
linearrgb_to_srgb_uchar3, was being done inline.
2012-01-19 08:22:23 +00:00
Nicholas Bishop
6afac2d345 Couple minor fixes for DM_debug_print().
Fix a gcc warning by not using the DM_debug_info string as the format
string, also free the string after printing.
2012-01-19 04:00:27 +00:00
Campbell Barton
b748d4f0cf debug function DM_debug_info / DM_debug_print, with access from python
through Object.dm_info('SOURCE/DEFORM/FINAL')

this is to help tracking down issues with modifiers where loosing data
layers between modifiers can cause bugs, also to helo with comparing
bmesh/trunk's modifier stack.
2012-01-19 00:18:25 +00:00
Sv. Lockal
cd476ee531 fix [#29914] paste text into blender causes crash 2012-01-17 19:03:18 +00:00
Sergey Sharybin
c64ab6c2bf Whitespace tabs vs. spaces consistency changes 2012-01-17 17:26:58 +00:00
Antony Riakiotakis
a8081c1d2b Uv Tools branch GSOC 2011
=========================
Documentation: http://wiki.blender.org/index.php/User:Psy-Fi/UV_Tools

Major features include:

*16 bit image support in viewport
*Subsurf aware unwrapping
*Smart Stitch(snap/rotate islands, preview, middlepoint/endpoint stitching)
*Seams from islands tool (marks seams and sharp, depending on settings)
*Uv Sculpting(Grab/Pinch/Rotate)

All tools are complete apart from stitching that is considered stable but with an extra edge mode under development(will be in soc-2011-onion-uv-tools).
2012-01-17 16:31:13 +00:00
Campbell Barton
bda8c6528e remove BKE_array_mallocn.h, replace use with BLI_array.h, also removed
ifdef'd code which has since been moved into another file.
2012-01-17 16:03:49 +00:00
Bastien Montagne
25e3b647b1 New pchan to pose matrices computes. Fixes [#27898] Bone snap to cursor fails and [#29461] Selection-to-Cursor works strange with bones with TrackTo constraint. Also fixes some inconsistant behavior of no Inherit Rotation/Scale options.
WARNING: This commits modifies how translated unconnected child bones with *no Inherit Rotation option* are positionned. This means that if you open a posed/animated armature using such (corner-case) setup, you'll have to adjust manually the locations of such bones: now, disabling Inherit Rotation/Scale will no more move the bone, only affecting its rotation/scale.

Many thanks to Bassam Kurdali (slikdigit) for his advices and tests of the patch!

-----

Dev notes : the pchan_to_pose_mat() func was added to BKE_armature.h, which computes two matrices to get the pose transformations (pchan) of the bone directly in pose (i.e. armature object) space. The first matrix is the rotation/scaling parts, the second one is for location.

That new function is used by (hence deduplicating and simplifying their code):
* The pose evaluation code (where_is_pose_bone()).
* The interactive transformation code (add_pose_transdata(), in transform_conversion.c).
* The snap to cursor/grid code (through armature_loc_pose_to_bone()/armature_mat_pose_to_bone()).
2012-01-17 13:30:20 +00:00
Campbell Barton
62f440a0b2 fix own error in bmesh -> mesh versioning 2012-01-17 04:54:57 +00:00
Campbell Barton
67b2985cce comment unused var 2012-01-17 02:07:38 +00:00
Miika Hamalainen
4d9197866b Dynamic Paint:
* Added per surface options "influence scale" and "radius scale" for tweaking brush settings individually for each surface.
* Added option to completely disable drying. This should be nice for indefinitely spreading paint etc.
* Improved paint mixing algorithm.
* "Paint effects" now work in relative mesh space instead of global. This means that effect speed remains same for identical shapes regardless of their size.
* Complete rewrite of "spread effect" algorithm. It now works much better in all test cases done. Old algo sometimes produced artifacts and stopped spreading too early.
* Adjustments / rewrite on some parts of dripping algorithm to make it work better with transparent paint.
* Added a new "color dry" setting. It can be used to define wetness level when paint colors start to shift to surface "background". Lower values can be useful to prevent spreading paint from becoming transparent as it dries, while higher (default) values give better results in general.
* Fix: If multiple displace/wave surfaces were used simultaneously, displace was applied using wrong normal.

Please note that due to these changes in "paint effects" system older save files may require some tweaking to match results from previous versions.
2012-01-16 17:18:07 +00:00
Sv. Lockal
c150d0084f patch [#29859] UTF-8 support for text editor.
This also fixes cursor movement in the beginning of line and adds do_versions block for converting text files with old extended ascii encoding into UTF-8.
2012-01-16 16:23:25 +00:00
Campbell Barton
e1dd245a1e more keymap edits
- make sure defaults are not assumed (so reuse last settings doesnt
override)
- replace 0/1 for TRUE/FALSE defines.
2012-01-16 16:12:03 +00:00
Campbell Barton
ab0cbaa7dc Allow camera 1:1 and center camera view to run from menu's. 2012-01-16 06:57:37 +00:00
Campbell Barton
ea467d3228 use FILE_MAX instead of 240 or comment where define cant be used. 2012-01-16 05:52:33 +00:00
Sergey Sharybin
91835abde4 Remove unused code and code sued for debug 2012-01-15 13:32:07 +00:00
Sergey Sharybin
f37d1b7b4e Color channels now can be disabled for the whole frame in clip editor 2012-01-15 13:31:58 +00:00
Sergey Sharybin
5e8940bcf1 Refactoring and code deduplicate in movie cache 2012-01-15 13:31:25 +00:00
Nicholas Bishop
30e759c75b Fix all remaining unified paint settings uses of current Scene.
Things like brush size and strength accessors now take a scene
parameter rather than guessing about which Scene's unified paint
settings to use.

Setting the size/strength through RNA can now be done separately for
the brush or the UnifiedPaintSettings.

The UI python code required updating to check whether the
size/strength controls should use brush or UnifiedPaintSettings RNA.

Radial control also required some updates to switch between the two
RNA sources.
2012-01-14 23:54:51 +00:00
Campbell Barton
0d5595befb add utility function to BLI_math_color - rgb_to_luma, rgb_to_luma_byte, also use rgb_to_grayscale in more places. 2012-01-14 17:14:23 +00:00
Campbell Barton
fca385ca9a - opengl render in quadview wasn't using camera.
- minor change to FTOCHAR use.
2012-01-14 11:21:00 +00:00
Campbell Barton
d14ac69c8c ensure functions are not used within FTOCHAR macro since they run 2-3 times.
brushes were doing curve lookups within this macro for example.
2012-01-14 10:33:16 +00:00
Peter Larabell
e516d1d718 Group DEM node code with the rest of the mattes, rather than the filters. Also fixes two typos in DEM node comments. 2012-01-13 16:00:24 +00:00
Sergey Sharybin
8dcb1f4d12 Added Lossless Output option for h264 codec.
This will fix #26943: render image to video problem
2012-01-13 12:34:23 +00:00
Sergey Sharybin
74aede4d71 Fix #29824: Error writing frame if 3D scene starts after first frame of animation and output is H264
Issue was caused by incorrectly set PTS value frames came form Scene strip renderer.
This value used to be calculated from RenderData current and start frame which
lead to non-uniformuly counting which totally confuses encoder.

Switch append_avi and append_ffmpeg to use current frame from rendering scene
(which was already passing to this functions and was used mostly for logging)
and start frame of rendering scene (it's new parameter added). This allowed to
calculate correct PTS value easily and get rid of global static sframe variable
in writeavi.c file.
2012-01-13 09:20:13 +00:00
Nicholas Bishop
b2ae44dc41 Fix some RNA/scene issuess with unified paint settings.
Added RNA for the unified paint setting flags that matches the Brush
RNA. Fixed the getter/setter functions to avoid guessing which Scene's
UnifiedPaintSetting to use. The getter functions take a Scene pointer
now, the setter functions are removed in favor of a more explicit
approach through RNA:

Rather than RNA choosing whether a property's value is in the Brush or
in the UnifiedPaintSettings, there are now explicit properties for
both. The UI code has been modified accordingly to switch the toggle
buttons between affecting the Brush and the UnifiedPaintSettings.
2012-01-12 21:48:08 +00:00
Brecht Van Lommel
1b8eab0fab Fix related to #29694: quicktime export was not showing or respecting RGBA
option even though some movie formats support alpha.
2012-01-12 21:10:46 +00:00
Nicholas Bishop
7889905888 Rename the sculpt/paint unified flags for better consistency, no functional changes 2012-01-12 18:08:07 +00:00
Nicholas Bishop
9fe88a8488 Move unified paint fields from ToolSettings into their own UnifiedPaintSettings struct.
File subversion is bumped to two in order to copy over the old fields.

This removes two RNA properties, sculpt_paint_use_unified_size and
sculpt_paint_use_unified_strength.

Code review link:
http://codereview.appspot.com/5529077
2012-01-12 17:22:32 +00:00
Campbell Barton
9f2443293e replace fixed sizes with sizeof when passing string length since size wasn't always correct. 2012-01-12 13:16:30 +00:00
Campbell Barton
309f3f31e7 remove redundant trailing slashes 2012-01-12 06:11:08 +00:00
Campbell Barton
fbc4846a6e dynamicpaint had some incorrect string sizes for layers names, use BLI string functions in more places too. 2012-01-11 12:56:31 +00:00
Campbell Barton
e10fd04db0 use BLI_strncpy and BLI_snprintf when the size of the string is known.
fix for sequencer unique naming which was missed with string length update.
2012-01-11 12:33:51 +00:00
Campbell Barton
535d27eb49 minor cleanup for string use - no functional changes
- use more logical names for strings, noticed too many strings called `str` when reviewing name patch.
- pass __func__ macro to uiBeginBlock(), quite a few names were wrong (copy/paste error).
2012-01-11 09:33:44 +00:00