blender.git
8 years agox3d import tabs -> spaces
Campbell Barton [Mon, 10 Jan 2011 13:16:04 +0000 (13:16 +0000)]
x3d import tabs -> spaces

8 years agocopy x3d/vrml importer from blender 2.4x.
Campbell Barton [Mon, 10 Jan 2011 13:11:56 +0000 (13:11 +0000)]
copy x3d/vrml importer from blender 2.4x.
svn cp https://svn.blender.org/svnroot/bf-blender/branches/blender2.4/release/scripts/import_web3d.py release/scripts/op/io_scene_x3d/import_x3d.py

8 years ago[bugfix] Curve tilt button in 3d toolbar showing wrong shortcut
Luca Bonavita [Mon, 10 Jan 2011 12:50:46 +0000 (12:50 +0000)]
[bugfix] Curve tilt button in 3d toolbar showing wrong shortcut

Added Ctrl-T to Curves Tilt button in the toolbar (edit mode), currently was reporting Alt-S for tilt
(reported by Rickyx here http://www.kino3d.com/forum/viewtopic.php?f=21&t=8485&start=0)

Also added the label "Tilt" to the tilt transform in the Curve > Control points header submenu, currently was just "Transform"

8 years agoBug fix: effectors in pre 2.5 files didn't work due to a forgotten flag in do_versions.
Janne Karhu [Mon, 10 Jan 2011 11:53:07 +0000 (11:53 +0000)]
Bug fix: effectors in pre 2.5 files didn't work due to a forgotten flag in do_versions.

8 years ago"Available" Keying Set bugfix:
Joshua Leung [Mon, 10 Jan 2011 10:22:08 +0000 (10:22 +0000)]
"Available" Keying Set bugfix:

This builtin Keying Set is supposed to insert keyframes for every
F-Curve that exists for the selected data (usually objects and/or
bones only). However, as coded, it was only useful for objects, since
it would just go through all the F-Curves for the object's action,
instead of just the F-Curves relevant to a selected bone.

Tweaked the code to make this case (and similar ones) hopefully work
better by default.

8 years agobug [#25535] proportional editing bug
Campbell Barton [Mon, 10 Jan 2011 06:00:56 +0000 (06:00 +0000)]
bug [#25535] proportional editing bug
disable PET when rotating/scaling around face centers to make it more obvious its unsupported.

8 years agoedit to Ton's recent commit, r34177, only use the far clipping as PET max when not...
Campbell Barton [Mon, 10 Jan 2011 05:40:41 +0000 (05:40 +0000)]
edit to Ton's recent commit, r34177, only use the far clipping as PET max when not in Ortho view.

8 years agocallback function ptcache_particle_extra_read() was incorrect type, also fix some...
Campbell Barton [Mon, 10 Jan 2011 05:17:53 +0000 (05:17 +0000)]
callback function ptcache_particle_extra_read() was incorrect type, also fix some other compiler warnings with recent commits.

8 years agocomment/remove various unused vars,
Campbell Barton [Mon, 10 Jan 2011 03:58:07 +0000 (03:58 +0000)]
comment/remove various unused vars,
also make rna function for new images require width and hight args.

8 years agocomment unused vars from subsurf code.
Campbell Barton [Mon, 10 Jan 2011 03:55:47 +0000 (03:55 +0000)]
comment unused vars from subsurf code.

8 years agocomment dead code from RNA_pointer_create(), was finding the id pointer type when...
Campbell Barton [Mon, 10 Jan 2011 03:47:03 +0000 (03:47 +0000)]
comment dead code from RNA_pointer_create(), was finding the id pointer type when 'id' was set, but not using it.
also comment a few unused vars.

8 years agoadd constraint operator
Campbell Barton [Mon, 10 Jan 2011 03:30:27 +0000 (03:30 +0000)]
add constraint operator
- report an error if adding a pose constraint with no active pose channel.
- dont run update_pose_constraint_flags() when adding an object constrant to an armature object.

8 years agoCompiler warning fixes for the same point cache things Joshua tried to fix earlier...
Janne Karhu [Mon, 10 Jan 2011 02:40:24 +0000 (02:40 +0000)]
Compiler warning fixes for the same point cache things Joshua tried to fix earlier, don't know why I didn't notice these before.

8 years agoBug fix: particles dying in collisions could lead to crash in some cases
Janne Karhu [Mon, 10 Jan 2011 02:20:30 +0000 (02:20 +0000)]
Bug fix: particles dying in collisions could lead to crash in some cases
* Forgot to check for index range in own recent pointcache commit.

8 years agoRestoring "Pose Markers"
Joshua Leung [Sun, 9 Jan 2011 23:16:05 +0000 (23:16 +0000)]
Restoring "Pose Markers"

These were markers which belonged to an action instead of the scene,
and are used by PoseLib to keep track of where poses are.

To restore this, I've made this only available in Action/Shapekey
Editor modes, and only when an action is being shown and the "Show
Pose Markers" option in the Markers menu has been enabled. Other than
that, all the standard marker operators apply now (instead of using a
separate set of special operators).

8 years agoBumping up margin for catching marker events in animation editors.
Joshua Leung [Sun, 9 Jan 2011 22:37:29 +0000 (22:37 +0000)]
Bumping up margin for catching marker events in animation editors.

Old value of 30 px was perhaps a bit too strict, given that scrollbars
took up 16px and that standard icons are 16px, which in total would
have been 32px from the bottom of the region. Having said that, the
marker icons are only about half-size, though it seems that in general
people (can) only aim quite loosely...

8 years agoViscoelastic springs for sph particle fluids, original patch by Stephen Whitehorn...
Janne Karhu [Sun, 9 Jan 2011 19:09:41 +0000 (19:09 +0000)]
Viscoelastic springs for sph particle fluids, original patch by Stephen Whitehorn (chickencoop)
* Viscoelastic springs between the fluid particles can simulate all kinds
  of viscous and elastic substances, such as jelly and honey. This is
  achieved by creating springs dynamically between neighboring particles
  and adjusting their rest length based on stretching/compression.
* This nearly completes the currently intended functionality for particle
  fluids. The last missing thing is a surfacing extraction algorithm,
  which is needed for a proper representation of a sph fluid.
* I also cleaned up and renamed some of the fluid parameters to make the
  ui a bit easier to understand.
* One addition to the patch is an option to use "initial rest length" for
  the springs, which uses the lengths between the particles at the time of
  spring creation as the spring rest lengths instead of interaction radius/2.
  This makes the fluid keep it's original shape better (good for very
  viscoelastic materials), but can create large density differences inside
  the fluid (not really physically correct for a fluid).
* Viscoelastic springs are stored in point cache as extra data.

8 years agoseveral cosmetic changes to the node-editor
M.G. Kishalmi [Sun, 9 Jan 2011 18:59:35 +0000 (18:59 +0000)]
several cosmetic changes to the node-editor

+ changed lines connecting nodes:
   they now use a linewidth of 1.5px for the light foreground and 4px for the dark background.
   this should fix node-lines not being visible on almost black or all white backdrops.
+ muted nodes now also show a red tinted header if they are hidden (collapsed)
+ both active and selected nodes show a (now properly antialiased) highlighting frame
+ fixed a small error in dropshadow code resulting in a gap at borders
+ fixed a tiny error for the collapsing indicators (triangles) - they were not symmetrical.

Ton will add proper theme colors for the node-editor in the coming days.

8 years agoBugfix #25557
Ton Roosendaal [Sun, 9 Jan 2011 18:43:47 +0000 (18:43 +0000)]
Bugfix #25557

Using texture brush in Sculpt, was calling to use "osa tex"
without giving it osa sample vectors. This crashed in using
texture nodes.

8 years agoReplace uint32_t in pointcache code with unsigned int as it's supported in dna
Janne Karhu [Sun, 9 Jan 2011 18:23:41 +0000 (18:23 +0000)]
Replace uint32_t in pointcache code with unsigned int as it's supported in dna
* Not strictly necessary right now, but better for future.
* Struct data (only boids at the moment) is now written as structs (with dna) so they work between 64 and 32 bit machines too.

8 years agoBugfix #25554
Ton Roosendaal [Sun, 9 Jan 2011 17:49:38 +0000 (17:49 +0000)]
Bugfix #25554

Actually a minor tweak:
Auto-IK fails on correcting for constrainted bones in chains.
For that reason it stops including constrainted bones for it.

Now it does include constraints with influence zero, or which
were disabled by user input.

8 years agoscript now passes pep8 checking tool.
Campbell Barton [Sun, 9 Jan 2011 17:35:29 +0000 (17:35 +0000)]
script now passes pep8 checking tool.

8 years agopatch from Andrea Rugliancich, dont export locations for bones which are connected...
Campbell Barton [Sun, 9 Jan 2011 16:46:01 +0000 (16:46 +0000)]
patch from Andrea Rugliancich, dont export locations for bones which are connected to their parents.
note, we could be smarter about not exporting animation channels which are not needed.

8 years agowarning from clang, possible crash:
Campbell Barton [Sun, 9 Jan 2011 15:28:43 +0000 (15:28 +0000)]
warning from clang, possible crash:
  'cd' could be NULL, all other particle draw types checked 'cd' except for PART_DRAW_AXIS, seems logical to have the check here too.

8 years agorename BKE_assert() --> BLI_assert().
Campbell Barton [Sun, 9 Jan 2011 15:12:08 +0000 (15:12 +0000)]
rename BKE_assert() --> BLI_assert().

8 years agoupdate for change to Matrix class.
Campbell Barton [Sun, 9 Jan 2011 15:09:18 +0000 (15:09 +0000)]
update for change to Matrix class.

8 years agouse PySequence_Size() rather then PySequence_Length(), this is only kept in python...
Campbell Barton [Sun, 9 Jan 2011 14:53:18 +0000 (14:53 +0000)]
use PySequence_Size() rather then PySequence_Length(), this is only kept in python for backwards compatibility.

8 years agomathutils matrix initialization now matches other mathutils types.
Campbell Barton [Sun, 9 Jan 2011 14:30:16 +0000 (14:30 +0000)]
mathutils matrix initialization now matches other mathutils types.
(should have made this change along with the others).
Matrix([1, 2],  [3, 4]) --> Matrix(([1, 2], [3, 4]))
This is so adding initialization args works right.

Also simplify initialization code (re-use slice assignment).

8 years agoBugfix #25547
Ton Roosendaal [Sun, 9 Jan 2011 12:38:54 +0000 (12:38 +0000)]
Bugfix #25547

Improved report print for 'remove doubles' to make it correct english.
Unsure if this kind of code can survive though, static strings do much
better for future translation efforts.

Instead of providing nice grammar sentences, we could make it more
declarative, like:

"Removed vertex amount: %d".

8 years agouse PySequence_Fast for matrix slice assignment to speed up assignment.
Campbell Barton [Sun, 9 Jan 2011 12:38:22 +0000 (12:38 +0000)]
use PySequence_Fast for matrix slice assignment to speed up assignment.

8 years agopy matrix api
Campbell Barton [Sun, 9 Jan 2011 12:09:54 +0000 (12:09 +0000)]
py matrix api
- bugfix for printing matrices (row/col mixup)
- replace cumbersome loop sequence parsing with calls to mathutils_array_parse

8 years agoBugfix #25551
Ton Roosendaal [Sun, 9 Jan 2011 12:08:29 +0000 (12:08 +0000)]
Bugfix #25551

Transform crash on autokey during animplay.
Transform event handling requires Context, for inserting keys.

Marked it with XXX warning; we have to be more careful with which
API calls require context; like inserting keys shouldn't need it?

Originally Context was meant for operators; to define user level
or scripted context, not for underlying APIs to work.

8 years agoquiet zombie python class warning. bug remains but its not useful to print out so...
Campbell Barton [Sun, 9 Jan 2011 11:54:12 +0000 (11:54 +0000)]
quiet zombie python class warning. bug remains but its not useful to print out so many errors when this wont be fixed for a while.

8 years agocleanup for mathutils multiplication functions, a little faster in some cases, raise...
Campbell Barton [Sun, 9 Jan 2011 09:16:04 +0000 (09:16 +0000)]
cleanup for mathutils multiplication functions, a little faster in some cases, raise more informative exceptions.

8 years agoRemove py mathutils Euler.unique() method
Campbell Barton [Sun, 9 Jan 2011 07:46:26 +0000 (07:46 +0000)]
Remove py mathutils Euler.unique() method
- this just toggled between different rotations, I can't find any references to this as a common operation to have with eulers.
- wasn't working at all nobody noticed, not used by any blender scripts/addons either.

8 years agoFix for [#25544] Blender crashes when changing the particles emission amount
Janne Karhu [Sun, 9 Jan 2011 07:41:51 +0000 (07:41 +0000)]
Fix for [#25544] Blender crashes when changing the particles emission amount
* I've getting bad feelings about the point cache index_array for a while (cause for this bug too), so from now on memory cache uses a simple binary search directly on the index data to handle queries to specific data points.
* This is a bit slower than just checking from a dedicated array, but it's much less error prone, uses less memory and makes the code more readable too, so it's not a tough choice.

8 years agoFix typo in particle rna
Matt Ebb [Sun, 9 Jan 2011 07:07:15 +0000 (07:07 +0000)]
Fix typo in particle rna

8 years agostubs.c updates provided by Kupoman.
Mitchell Stokes [Sun, 9 Jan 2011 02:43:26 +0000 (02:43 +0000)]
stubs.c updates provided by Kupoman.

8 years agoremove unused vars, comment some which look like they could be useful still. have...
Campbell Barton [Sun, 9 Jan 2011 01:17:56 +0000 (01:17 +0000)]
remove unused vars, comment some which look like they could be useful still.  have makesrna.c omit unused _data definitions for rna funcs with no args.

8 years agonetrender
Martin Poirier [Sat, 8 Jan 2011 19:42:26 +0000 (19:42 +0000)]
netrender

Downloading results for jobs from blender now uses the current output settings, it doesn't just download the multilayer exr as it used to.

Render output panel now visible under the jobs panel in client mode.

8 years agoBugfix #25525
Ton Roosendaal [Sat, 8 Jan 2011 19:12:42 +0000 (19:12 +0000)]
Bugfix #25525

Duplicating viewer node crashed in cases; bad ID was given to a function.
Fix provided by Alexander Kuznetsov. Thanks!

8 years agoBugfix, IRC report
Ton Roosendaal [Sat, 8 Jan 2011 18:46:21 +0000 (18:46 +0000)]
Bugfix, IRC report

Texture space transform, SHIFT+R crashed

8 years agoTodo items:
Ton Roosendaal [Sat, 8 Jan 2011 18:37:11 +0000 (18:37 +0000)]
Todo items:

- Outliner: new scroll operator, PageUp PageDown scroll entire page now.
- 2D views (like buttons) PageUp PageDown now also scroll entire page.
  (they used same step as scrollwheel before)

8 years agoCrash fix, IRC report.
Ton Roosendaal [Sat, 8 Jan 2011 17:47:34 +0000 (17:47 +0000)]
Crash fix, IRC report.

Python console crashed on opening.

Too quick code cleaning for "unused variables" caused a complete line
of code to disappear that was needed anyway :)

8 years agoProportional editing:
Ton Roosendaal [Sat, 8 Jan 2011 16:54:38 +0000 (16:54 +0000)]
Proportional editing:

- Proportional circle size is printed in header
  Allows you to find out if you make it smaller when it's large
- Proportional size is clipped with view3d clip-end now
- Added the size to rna, so you can inspect values via UI and py.

8 years agoBugfix, own collection
Ton Roosendaal [Sat, 8 Jan 2011 15:35:15 +0000 (15:35 +0000)]
Bugfix, own collection

New displist code for curves/text copied display lists without
checking for freeing existing ones. Caused some memleaking.

8 years agoremove unused code & variables.
Campbell Barton [Sat, 8 Jan 2011 12:43:44 +0000 (12:43 +0000)]
remove unused code & variables.

8 years agofix for crash when converting sequencer profiles with non-float buffers.
Campbell Barton [Sat, 8 Jan 2011 12:22:16 +0000 (12:22 +0000)]
fix for crash when converting sequencer profiles with non-float buffers.

8 years agofix for using freed memory with animation/group/ungroup code.
Campbell Barton [Sat, 8 Jan 2011 11:08:51 +0000 (11:08 +0000)]
fix for using freed memory with animation/group/ungroup code.

8 years agofixed a case with occlusion where uninitialized variable could be used.
Campbell Barton [Sat, 8 Jan 2011 10:23:36 +0000 (10:23 +0000)]
fixed a case with occlusion where uninitialized variable could be used.
also removed unused vars.

can_pbvh_draw() had a NULL check which is never needed (callers check for this), a NULL ob would have crashed the function anyway.

8 years agovariable 'pool' could be accessed as NULL, globalPool was allocated but not assigned...
Campbell Barton [Sat, 8 Jan 2011 10:13:59 +0000 (10:13 +0000)]
variable 'pool' could be accessed as NULL, globalPool was allocated but not assigned before use.
also remove unused vars.

8 years agofix for drawing addons when one of them had a syntax error or would not draw any.
Campbell Barton [Sat, 8 Jan 2011 04:49:33 +0000 (04:49 +0000)]
fix for drawing addons when one of them had a syntax error or would not draw any.
now print the error and continue.

8 years agoSculpt/Paint:
Nicholas Bishop [Sat, 8 Jan 2011 01:45:02 +0000 (01:45 +0000)]
Sculpt/Paint:

More cleanups: moved a function declaration to the correct module,
removed old/incorrect comments, marked more things with TODO where
appropriate, refactored copy-pasted function, de-duplicated code.

8 years agoPaint:
Nicholas Bishop [Sat, 8 Jan 2011 01:16:35 +0000 (01:16 +0000)]
Paint:

More cleanups to the cursor drawing code; factored out another
sculpt-related function, replaced float calculations with bitwise
flags, removed unnecessary GL changes, de-duplicated some lines,
removed unused parameters, and added more comments.

8 years agoMore Windows+mingw compiling fixes:
Joshua Leung [Fri, 7 Jan 2011 23:54:58 +0000 (23:54 +0000)]
More Windows+mingw compiling fixes:
FILE_FILE_MAXDIR/FILE were undefined. Restoring BKE_utildefines.h
include to make this work again in the meantime.

8 years agoRemoved some overly agressive (and IMO pointless) "UNUSED(arg)"
Joshua Leung [Fri, 7 Jan 2011 23:47:12 +0000 (23:47 +0000)]
Removed some overly agressive (and IMO pointless) "UNUSED(arg)"
wrappers which was breaking compiling on Windows (mingw)

8 years agoPaint cleanup:
Nicholas Bishop [Fri, 7 Jan 2011 23:36:48 +0000 (23:36 +0000)]
Paint cleanup:

Pulled out the paint brush overlay drawing code into its own
function, brush drawing function was before ~250 lines.

8 years agoPaint/Sculpt:
Nicholas Bishop [Fri, 7 Jan 2011 22:46:52 +0000 (22:46 +0000)]
Paint/Sculpt:

More minor cleanups: fixed names and factored out a function that was
copy-pasted into paint stroke.

8 years agoPaint/Sculpt:
Nicholas Bishop [Fri, 7 Jan 2011 22:03:16 +0000 (22:03 +0000)]
Paint/Sculpt:

Some minor cleanups: removed `#if 0' code and moved a function into paint_util to avoid `extern' declaration.

8 years agoFix for bug [#21534] Multires modifier strange deformations
Nicholas Bishop [Fri, 7 Jan 2011 21:12:47 +0000 (21:12 +0000)]
Fix for bug [#21534] Multires modifier strange deformations

This adds the "Apply Base" feature from my gsoc2010 branch.

Apply Base partially applies the modifier, in that the mesh is
reshaped to more closely match the deformed mesh. The upper-level
displacements are recalculated so that the highest multires level
appears unchanged.

Multires does not currently deal well with too large displacements.
An easy-to-reproduce example: create any mesh type, add multires,
subdivide a few times, then use the sculpt grab brush to drag the
entire mesh over a few units. At the highest level, and at level 0,
the mesh looks fine, but all of the intervening levels will have ugly
spikes on them.

This patch doesn't help with situations where you can't modify the
base mesh, but otherwise works around the problem fairly well (albeit
with a heuristic, not an exact solution.)

8 years agoSVN maintenance.
Guillermo S. Romero [Fri, 7 Jan 2011 20:02:56 +0000 (20:02 +0000)]
SVN maintenance.

8 years agoremove references to BKE_utildefines where its not needed.
Campbell Barton [Fri, 7 Jan 2011 19:18:31 +0000 (19:18 +0000)]
remove references to BKE_utildefines where its not needed.
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.

8 years agosplit BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID...
Campbell Barton [Fri, 7 Jan 2011 18:36:47 +0000 (18:36 +0000)]
split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.

8 years agoBug fix: unbaked particle cache was cleared from current frame onwards on file load.
Janne Karhu [Fri, 7 Jan 2011 17:27:27 +0000 (17:27 +0000)]
Bug fix: unbaked particle cache was cleared from current frame onwards on file load.

8 years agoRevert bump mapping patch for now, backwards compatibility is not good enough,
Brecht Van Lommel [Fri, 7 Jan 2011 16:55:56 +0000 (16:55 +0000)]
Revert bump mapping patch for now, backwards compatibility is not good enough,
we may need to preserve the previous method.

8 years agoFix #25078: texture mapping options (e.g. size) not working correctly with bump.
Brecht Van Lommel [Fri, 7 Jan 2011 15:41:24 +0000 (15:41 +0000)]
Fix #25078: texture mapping options (e.g. size) not working correctly with bump.

This problem was in both new bump and new new bump. The derivatives used for
bump mapping did not include the mapping, which gave mismatched offset for the
taps, now just do the mapping beforehand.

8 years agoImproved bump mapping patch by M.G. Kishalmi (lmg) and M.S. Mikkelsen (sparky).
Brecht Van Lommel [Fri, 7 Jan 2011 14:42:01 +0000 (14:42 +0000)]
Improved bump mapping patch by M.G. Kishalmi (lmg) and M.S. Mikkelsen (sparky).
Many thanks to them!

For comparison, see here:
http://kishalmi.servus.at/3D/bumpcode/

Based on algorithm in: Mikkelsen M. S.: Simulation of Wrinkled Surfaces Revisited.
http://jbit.net/~sparky/sfgrad_bump/mm_sfgrad_bump.pdf

This fixes bugs:
#24591: Artefacts/strange normal mapping when anti-aliasing is on
#24735: Error at the Normal function.
#24962: Normals are not calculated correctly if anti-aliasing is off
#25103: Weird artefacts in Normal

This will break render compatibility a bit, but fixing this bugs would have also
done that, so in this case it should be acceptable.

Patch committed with these modifications:
* Bump method Old/3-Tap/5-Tap option in UI, 3-Tap is default
* Only compute normal perturbation vectors when needed
* Fix some middle of block variable definitions for MSVC

8 years agobugfix [#25528] lack of update and crash using hook modifier.
Campbell Barton [Fri, 7 Jan 2011 11:48:35 +0000 (11:48 +0000)]
bugfix [#25528] lack of update and crash using hook modifier.

8 years agoBug fix: particle point cache was reset on start frame if particles had grid distribu...
Janne Karhu [Fri, 7 Jan 2011 11:38:28 +0000 (11:38 +0000)]
Bug fix: particle point cache was reset on start frame if particles had grid distribution even if there were no changes.

8 years agoNew hair child options:
Janne Karhu [Fri, 7 Jan 2011 11:24:34 +0000 (11:24 +0000)]
New hair child options:
* Renamed children to "simple" and "interpolated" as this is
  easier to explain and more descriptive than "from particles"
  and "from faces".
* Also shuffled the child ui around a bit to make it clearer.
* Child seed parameter allows to change the seed for children
  independent of the main seed value.
* Long hair mode for interpolated children:
  - Making even haircuts was impossible before as the child
    strand lengths were even, but their root coordinates were
    not similar in relation to the parent strands.
  - The "long hair" option uses the tips of the parent strands
    to calculate the child strand tips.
* Hair parting options:
  - Hair parting can now be calculated dynamically on the fly
    when in 2.49 there was a cumbersome way of using emitter mesh
    seams to define parting lines.
  - For long hair parting can be created by a tip distance/root
    distance threshold. For example setting the minimum threshold
    to 2.0 creates partings between children belonging to parents
    with tip distance of three times the root distance
    ((1+2)*root distance).
  - For short hair the parting thresholds are used as angles
    between the root directions.
* New kink parameters:
  - Kink flatness calculates kink into a shape that would have
    been achieved with an actual curling iron.
  - Kink amplitude clump determines how much the main clump value
    effects the kink amplitude.
  - The beginning of kink is now smoothed to make the hair look
    more natural close to the roots.
* Some bugs fixed along the way too:
  - Child parent's were not determined correctly in some cases.
  - Children didn't always look correct in particle mode.
  - Changing child parameters caused actual particles to be
    recalculated.
* Also cleaned up some deprecated code.

All in all there should be no real changes to how old files look
(except perhaps a bit better!), but the new options should make
hair/fur creation a bit more enjoyable. I'll try to make a video
demonstrating the new stuff shortly.

8 years agocmake: share the DNA_*.h list definition between makesrna and makesdna
Campbell Barton [Fri, 7 Jan 2011 11:08:47 +0000 (11:08 +0000)]
cmake: share the DNA_*.h list definition between makesrna and makesdna

8 years agoFix for [#25526] Inmediate crash when changing amount of particles in a particle...
Janne Karhu [Fri, 7 Jan 2011 10:38:17 +0000 (10:38 +0000)]
Fix for [#25526] Inmediate crash when changing amount of particles in a particle system
* Point cache index array doesn't necessarily have all particles if the particles were re-allocated recently.

8 years agoFix for [#25506] Hair showing up in places not assigned by a weightmap
Janne Karhu [Fri, 7 Jan 2011 10:13:30 +0000 (10:13 +0000)]
Fix for [#25506] Hair showing up in places not assigned by a weightmap
* Two separate bugs, with very similar symptoms.
* The distribution binary search didn't work correctly in cases where there were a lot of faces with 0 weights.
* Maximum distribution sum should have been exactly 1, but due to the wonderful nature of floats this wasn't the case at all.

8 years agopatch [#25440] Object.vertex_group fixin'
Campbell Barton [Fri, 7 Jan 2011 09:50:23 +0000 (09:50 +0000)]
patch [#25440] Object.vertex_group fixin'
from Dan Eicher (dna)

 From the tracker (with minor edits)
========================

cube = bpy.data.objects['Cube']
foo = cube.vertex_groups.new('foo')
foo.add([1,3,5,7], 1.0, 'ADD')

for i in range(len(cube.data.vertices)):
    try:
        weight = foo.weight(i)
        print('vert: %i weight: %f' % (i, weight))
    except:
        pass

foo.remove([1,3])

cube.vertex_groups.remove(foo)

8 years agoanother error in commit r34143, was using the define's 'BLEN' & 'DER_' however the...
Campbell Barton [Fri, 7 Jan 2011 09:47:05 +0000 (09:47 +0000)]
another error in commit r34143, was using the define's 'BLEN' & 'DER_' however the latter is incorrect since DER- is used for 64bit blend files.
removed the define.

8 years agofix for error in own commit r34143
Campbell Barton [Fri, 7 Jan 2011 08:59:00 +0000 (08:59 +0000)]
fix for error in own commit r34143

8 years ago- cmake use execute_process, exec_program is deprecated.
Campbell Barton [Fri, 7 Jan 2011 08:43:29 +0000 (08:43 +0000)]
- cmake use execute_process, exec_program is deprecated.
- game engine builds without python again.

8 years agobugfix [#25457] Lack of update on undoing a lattice rig
Campbell Barton [Fri, 7 Jan 2011 07:36:51 +0000 (07:36 +0000)]
bugfix [#25457] Lack of update on undoing a lattice rig

8 years agopatch [#25490] Fix for [#22096] Blender tries to open non-blend file
Campbell Barton [Fri, 7 Jan 2011 06:50:29 +0000 (06:50 +0000)]
patch [#25490] Fix for [#22096] Blender tries to open non-blend file
from Alexander Kuznetsov (alexk) with edits.

From the report:
Blender assumed that all files are .blend as retval = 0;

Now retval is initialized as file cannot be open (-1) for gzopen fail and directory case
retval = -2; is defined for not supported formats
This must be assigned before #ifdef WITH_PYTHON because this part can be missing
Finally retval = 0; if it is a .blend file

---
also made other edits.

- exotic.c's blend header checking was sloppy, didn't check data was actually read, only checked first 4 bytes and had a check for "blend.gz" extension which is unnecessary.
- use defines to help readability for BKE_read_exotic & BKE_read_file return values.
- no need to check for a NULL pointer before calling BKE_reportf(). (will just print to the console)
- print better reports when the file fails to load.

8 years agoincorrectly documented return type
Campbell Barton [Fri, 7 Jan 2011 06:39:48 +0000 (06:39 +0000)]
incorrectly documented return type

8 years agoFix/add OSX style text editing shortcuts to default keymap
Matt Ebb [Fri, 7 Jan 2011 05:50:17 +0000 (05:50 +0000)]
Fix/add OSX style text editing shortcuts to default keymap

8 years agopy/rna api speedup for collection slicing in all cases, rather then having an excepti...
Campbell Barton [Fri, 7 Jan 2011 05:33:30 +0000 (05:33 +0000)]
py/rna api speedup for collection slicing in all cases, rather then having an exception for [:].
- avoid looping over the entire collection unless a negative index is used.
- dont use the get index function for building the slice list, instead loop over the collection until the stop value.

8 years agobugfix [#25519] particlesystem, type hair, hair dynamics enabled: crash with amount 0
Campbell Barton [Fri, 7 Jan 2011 04:38:31 +0000 (04:38 +0000)]
bugfix [#25519] particlesystem, type hair, hair dynamics enabled: crash with amount 0

8 years agobugfix [#25519] particlesystem, type hair, hair dynamics enabled: crash with amount 0
Campbell Barton [Fri, 7 Jan 2011 04:30:02 +0000 (04:30 +0000)]
bugfix [#25519] particlesystem, type hair, hair dynamics enabled: crash with amount 0

8 years agofix [#25520] crash when closing the properties panel in uv/image editor
Campbell Barton [Fri, 7 Jan 2011 04:10:37 +0000 (04:10 +0000)]
fix [#25520] crash when closing the properties panel in uv/image editor
don't draw the image if the size is 0.

Crash was actually an assert() so debug builds only, replace assert() with BKE_assert() so crash is opt in build option.

8 years agobugfix [#25522] Export to X3D is missing ImageTexture and TextureTransform for plane...
Campbell Barton [Fri, 7 Jan 2011 02:39:48 +0000 (02:39 +0000)]
bugfix [#25522] Export to X3D is missing ImageTexture and TextureTransform for plane with image texture
- tile option was broken.
- added basic export of texture/mtex transformation.
- recent mesh update broke material/image export with no UVs

8 years agoTodo items:
Ton Roosendaal [Thu, 6 Jan 2011 17:54:17 +0000 (17:54 +0000)]
Todo items:

- Toobar views were reset on hide/unhide. Now they keep the view
  and zoom level.
- Added operator to delete all unused 'space data', this to make
  clean startup.blend files, remove unused editors, and to be
  able to test starting defaults for editors.
  No hotkey, use search for "Clean-up space-data"

8 years agoTodo item:
Ton Roosendaal [Thu, 6 Jan 2011 14:58:58 +0000 (14:58 +0000)]
Todo item:

Compositor: Texture Node now behaves like an image.
- Image always in render output size
- Buffer outputs RGBA and Value both supported
- Works for filter and blur and scaling too.
- Mixing 2 textures works

Implementation note:
The texture node was meant to be 'procedural', not a buffer
but a color-sample method. Unfortunately the node editor
didn't support this well, blur/filter/scale ignored it too.

For now, its better to drop this procedural concept, then
things work at least as expected. :)

8 years agoBug fix:
Ton Roosendaal [Thu, 6 Jan 2011 14:19:46 +0000 (14:19 +0000)]
Bug fix:

On texture-space transform, pressing Rkey crashed.
Now it refuses to enter rotation mode. :)

8 years agoprint_m3/m4 didnt use const char *, which gave an errror with passing strings & pedan...
Campbell Barton [Thu, 6 Jan 2011 13:49:09 +0000 (13:49 +0000)]
print_m3/m4 didnt use const char *, which gave an errror with passing strings & pedantic warnings.
also minor rename in bvh export

8 years agoTodo item:
Ton Roosendaal [Thu, 6 Jan 2011 11:16:35 +0000 (11:16 +0000)]
Todo item:

Auto-texture space now is more responsive and correct.
- on transforming it, the buttons get redrawn to show option was reset
- on enabling option, texture space is recalculated/reset

8 years agoBugfix #25505
Ton Roosendaal [Thu, 6 Jan 2011 09:55:20 +0000 (09:55 +0000)]
Bugfix #25505

Mesh properties: Auto Texture space option missing

8 years agobugfix [#25498] Projection paint clone tool leaves seams
Campbell Barton [Thu, 6 Jan 2011 09:32:25 +0000 (09:32 +0000)]
bugfix [#25498] Projection paint clone tool leaves seams

8 years agofix [#25507] Select Interior faces in edit mode gives python error
Campbell Barton [Thu, 6 Jan 2011 05:45:41 +0000 (05:45 +0000)]
fix [#25507] Select Interior faces in edit mode gives python error

8 years agoMissed this file for markers commit... it already had a markers menu
Joshua Leung [Thu, 6 Jan 2011 05:04:44 +0000 (05:04 +0000)]
Missed this file for markers commit... it already had a markers menu
defined, but it was outdated

8 years agobugfix [#25488] Game engine crash when try to run after blender app start
Campbell Barton [Thu, 6 Jan 2011 05:04:07 +0000 (05:04 +0000)]
bugfix [#25488] Game engine crash when try to run after blender app start
- also found other places where utf8 isnt ensured.
- remove duplicate NULL checks in object_edit.c

8 years agoAdded back "Marker" menu to all animation editors.
Joshua Leung [Thu, 6 Jan 2011 04:47:57 +0000 (04:47 +0000)]
Added back "Marker" menu to all animation editors.

Issues:
- It looks a bit crowded though, so perhaps we could do without, and
just leave it for the TimeLine only?
- Due to the way the invoke() testing works, the rename operator
called from the menu currently fails. Will need to experiment more
with execution options to find a workaround.

8 years agouse ED_markers_get_first_selected() where possible, simplify ed_marker_rename_exec
Campbell Barton [Thu, 6 Jan 2011 04:35:57 +0000 (04:35 +0000)]
use ED_markers_get_first_selected() where possible, simplify ed_marker_rename_exec

8 years agopy/rna optimizations, will help for faster exporting.
Campbell Barton [Thu, 6 Jan 2011 04:01:06 +0000 (04:01 +0000)]
py/rna optimizations, will help for faster exporting.

Speedup for getting collection indices, avoid getting the collection length unless a negative index is given. This avoids a loop over the entire collection in many cases.

Speedup for getting collection slices by detecting collection[:] and internally calling collection.values(), this gives a big speedup with some collections because each slice item would loop over the list until that index was found.

Rough test with 336 objects.
- getting index of listbase collection ~ 5.0x faster
- getting index of array collection ~ 1.15x faster

- getting slices of listbase collections ~ 34.0x faster
- getting slices of array collections ~ 1.5x faster

8 years agoMarkers Todo: Adding back "Rename Marker" operator (Ctrl M).
Joshua Leung [Thu, 6 Jan 2011 03:10:41 +0000 (03:10 +0000)]
Markers Todo: Adding back "Rename Marker" operator (Ctrl M).

As we don't have any dedicated text-input boxes anymore, this is a bit
more clunky than it should optimally be.