14 years agoTwo bugfixes:
Joshua Leung [Fri, 25 Jan 2008 11:27:38 +0000 (11:27 +0000)]
Two bugfixes:
* Buttons to change position of constraints in constraint stack are now totally hidden if they don't do anything valid. It'll have to be this way until we get grey-able buttons.

* Duplicating keyframes in Action Editor now sets correct undo-string

14 years ago== Limit Distance Constraint ==
Joshua Leung [Fri, 25 Jan 2008 11:23:36 +0000 (11:23 +0000)]
== Limit Distance Constraint ==

Added a new constraint, "Limit Distance". This constraint defines a 'virtual sphere' around the target which the owner can be made to stay inside, outside, or on the surface of it.

This constraint is best used when applied using the Ctrl-Alt-C hotkey, as the radius is set correctly that way.
One usage, is to prevent the target of an IK-chain from straying away from the chain. Care should be taken to not use a member of the IK-chain as the target though.

Description of Variables:
* 'Dist' - Radius of virtual sphere
* 'R' - Click on this to recalculate the 'Dist' value (note: like the 'R' button in the StretchTo constraint, this is currently buggy)
' Mode' - This menu gives different options for how the limiting sphere should act. The mode names are self explanatory.
* 'Soft' and 'SoftDistance' - currently not functional (so settings are hidden). These are used to define a smaller radius around the sphere of influence where a non-linear relationship between input and resulting locations occurs to prevent the owner 'crashing' into the sphere.

14 years ago=== Mirror Tool ===
Martin Poirier [Fri, 25 Jan 2008 04:38:08 +0000 (04:38 +0000)]
=== Mirror Tool ===

Fix call order mix up.

That's what I get for doing "cleanup" before a commit.

Tested as working ok with this.

14 years ago== Sculpt ==
Nicholas Bishop [Fri, 25 Jan 2008 04:17:38 +0000 (04:17 +0000)]
== Sculpt ==

Cleaned up some old parts of sculpt. Got rid of the old EditData struct in favor of two new "brush action" structures, which split the symmetry data out from everything else. Cleaned up various names and such as well. There should be no user-visible changes.

14 years agomade correct physics visible on solver panel
Jens Ole Wund [Thu, 24 Jan 2008 23:27:16 +0000 (23:27 +0000)]
made correct physics visible on solver panel
i did not like the accusation blenders soft body module is too bad coded to not respect law of energy conservation.
well .. animators most of the times don't care if there was a theoretical physics law .. they want to get things done
hum i think
on the other hand it is for sure raising confidence to the soft body module when simple physical rules can be verified
so i won't 'turn a hand' on either approach
IMHO the inaccurate soft approach serves best to animators
you have both so you can decide devil or Beelzebub
have fun BM

14 years agoadded a function to the outliner for groups - "Link Group Objects to Scene"
Campbell Barton [Thu, 24 Jan 2008 23:23:34 +0000 (23:23 +0000)]
added a function to the outliner for groups - "Link Group Objects to Scene"
in some cases
removed some globals from the

14 years agominor fix
Campbell Barton [Thu, 24 Jan 2008 22:43:42 +0000 (22:43 +0000)]
minor fix

14 years agoSelect linked particles (Shift+L)
Campbell Barton [Thu, 24 Jan 2008 21:32:36 +0000 (21:32 +0000)]
Select linked particles (Shift+L)

14 years agofix for lightwave object loader
Campbell Barton [Thu, 24 Jan 2008 20:31:11 +0000 (20:31 +0000)]
fix for lightwave object loader

14 years ago=== Mirror Tool ===
Martin Poirier [Thu, 24 Jan 2008 20:11:54 +0000 (20:11 +0000)]
=== Mirror Tool ===

Making the mirror tool axis selection interactive instead of using a popmenu.

Mirror is now just a constant -1 scaling transform, which enables you to choose the mirror axis through hotkeys (x,y,z) and with MMB. It also means it's easier to select the correct axis if you're not sure which is which and gives access to all the orientation supported in transform (including custom user orientations).

Mesh and Object header menus still have the individual axis as options but have an added "Interactive Mirror" which just enters transform and lets user pick the axis there. Ctrl-M enters "Interactive Mirror" too.

In a nutshell, this changes adds more possible mirroring axis and unifies the mirror axis selection process with transform constraint axis selection.

14 years agoFixes for SSS with render layers. Now in the preprocessing pass
Brecht Van Lommel [Thu, 24 Jan 2008 15:41:21 +0000 (15:41 +0000)]
Fixes for SSS with render layers. Now in the preprocessing pass
it uses flags from all render layers added together, not fully
correct yet, but it's not so easy to separate passes cleanly with

14 years agoPhase one of better masking support while rendering.
Ton Roosendaal [Thu, 24 Jan 2008 15:03:34 +0000 (15:03 +0000)]
Phase one of better masking support while rendering.

Problem: artist wants character to walk in grass, but still have all rendered
in seperate render-layers, for postpro effects and vblur. How to efficiently
create a mask image you can put *over* the character for the grass?

Solution has two parts; this commits allows any layer inside of the renderlayers
to become a Z-mask (Z values for solid gets filled in, but not rendered).

Second part of commit is render option "Only render stuff that's in front of
a zbuffer value that was filled in (saves render time)

14 years agoAdded an "effector" vertex group for hair, that defines how much
Brecht Van Lommel [Thu, 24 Jan 2008 14:16:52 +0000 (14:16 +0000)]
Added an "effector" vertex group for hair, that defines how much
influence effectors have.

14 years agoComposite fix: the RenderLayer node option "rerender only this layer" did
Ton Roosendaal [Thu, 24 Jan 2008 13:43:12 +0000 (13:43 +0000)]
Composite fix: the RenderLayer node option "rerender only this layer" did
not invoke a re-composite signal to the right window. Looked like as if the
re-render had no effect.

14 years agoFix for strand render + simplification + vector blur. With the number
Brecht Van Lommel [Thu, 24 Jan 2008 13:11:15 +0000 (13:11 +0000)]
Fix for strand render + simplification + vector blur. With the number
of strands changing between frames, vector blur couldn't work. Now
speed vectors are interpolated from the surface. This also means
child particles don't have to be computed in the previous and next
frames, so saves time too.

14 years agoParticle instance modifier works again in path mode. There's still some work to do...
Janne Karhu [Thu, 24 Jan 2008 10:44:21 +0000 (10:44 +0000)]
Particle instance modifier works again in path mode. There's still some work to do with rotations and twisting though.

14 years ago* copy python25_d.dll when building BF_DEBUG=1
Nathan Letwory [Thu, 24 Jan 2008 07:25:02 +0000 (07:25 +0000)]
* copy python25_d.dll when building BF_DEBUG=1

14 years agopart 2 of n in the process
Jens Ole Wund [Thu, 24 Jan 2008 00:51:48 +0000 (00:51 +0000)]
part 2 of n in the process
to make the soft body UI consistent/understandable
that is ->
split material properties from solver settings
this part deals with solver settings

14 years ago* Made the "mini axis" draw with lines proportional to it's size. Currently, the...
Joshua Leung [Thu, 24 Jan 2008 00:03:16 +0000 (00:03 +0000)]
* Made the "mini axis" draw with lines proportional to it's size. Currently, the thick lines are a bit too thick at larger sizes, but it's better than having slower viewports.

* Fixed bug with IPO-transform. When "Switch Mouse Buttons" is on, click-drag transforms of keys didn't work.

14 years agoChanged the way falloff for fields works, was hard to control well.
Brecht Van Lommel [Wed, 23 Jan 2008 22:46:09 +0000 (22:46 +0000)]
Changed the way falloff for fields works, was hard to control well.
Specifically with maxdist set, the falloff is now from 1.0 to 0.0 at
the maxdist, so that there isn't a sudden discontinuity.

14 years agoBugfix to filter strands with solid correctly.
Brecht Van Lommel [Wed, 23 Jan 2008 20:54:44 +0000 (20:54 +0000)]
Bugfix to filter strands with solid correctly.

14 years agoFixed small typo... This is [#8138] Tiny typo
Kent Mein [Wed, 23 Jan 2008 15:51:25 +0000 (15:51 +0000)]
Fixed small typo...  This is [#8138] Tiny typo


14 years agoTiny fix in UI for editing actions/ipos:
Ton Roosendaal [Wed, 23 Jan 2008 15:06:44 +0000 (15:06 +0000)]
Tiny fix in UI for editing actions/ipos:

Each Ipo block (actions, objects, etc) stores the last view
of the ipo window. Nice for selecting objects/bones and then getting
the previous view back.

When you use option "Lock time to other windows", this option is very
annoying; the action window then shifts all channels around, almost as
if this is a bug.

14 years agoBugfix for strand pass adding with non-box filter, same bug as
Brecht Van Lommel [Wed, 23 Jan 2008 14:30:55 +0000 (14:30 +0000)]
Bugfix for strand pass adding with non-box filter, same bug as
existed in ztransp.

14 years agoopenexr, touch and noOverwrite setting access from py api
Campbell Barton [Wed, 23 Jan 2008 14:15:34 +0000 (14:15 +0000)]
openexr, touch and noOverwrite setting access from py api

14 years agoMinor render memory usage optimization, removed layer and
Brecht Van Lommel [Wed, 23 Jan 2008 13:35:51 +0000 (13:35 +0000)]
Minor render memory usage optimization, removed layer and
radface from VlakRen, saves about 100mb for 10 million faces.

14 years agoBugfix in render instancing for missing leaves.
Brecht Van Lommel [Wed, 23 Jan 2008 11:51:18 +0000 (11:51 +0000)]
Bugfix in render instancing for missing leaves.

14 years agoConstraints GUI:
Joshua Leung [Wed, 23 Jan 2008 10:54:10 +0000 (10:54 +0000)]
Constraints GUI:
Up/Down buttons which are disabled are now always drawn, but those that are disabled (cannot be done) now have their 'button backgrounds' not drawn. Also, they won't do anything when clicked.

14 years ago== "Custom Bone Colors" ==
Joshua Leung [Wed, 23 Jan 2008 10:14:45 +0000 (10:14 +0000)]
== "Custom Bone Colors" ==

This commit introduces the ability to give groups of bones different colour-sets, which enables them to be more easily identified in the 3d-view. Currently, custom bone colours have been implemented as a way to visualise bone-group membership (after all, colours and groups are both just ways of managing bones).

Usage Notes:
* Each theme currently has 20 Color-Sets available for Bones.
These can be accessed from the "Bone Color Sets" option under the Theme buttons. (Note: currently, I haven't defined any default colour-sets. Donations welcome on this ;-) ) As such, colour sets are not saved per file! You will need to save the theme to preserve the color set for the next session.
* Each Bone-Group can use any one of these 20 sets, or just use the default colour-set.
Use the "GroupCol" button to set this. When a set has been chosen, three little rectangles are drawn beside the button to preview the colours the set provides.
* A bone must belong to a Bone-Group to get that group's colours.
* "Colors" toggle on "Armature" panel must be enabled for these custom-colours to be shown for all bones that can have them.
This toggle is off by default, but is there to allow rigs to be debugged (by colours) for example.
* The "Use 'Constraint' Colouring" option (per Colour Set), determines whether the colours denoting presences of constraints, ik, or keyframes are drawn in conjunction with the custom colours. It is off by default, as in many combinations, they look quite ugly when used in conjunction with custom colours.
* Custom colours are only shown in PoseMode

Assorted Notes:
* I've tested this thoroughly, and there shouldn't be any problems caused by this.
* In the process, I found a bug with envelope bone drawmode. In wire-frame mode, all bones got scaled up by several types.
* I've cleaned up the armature drawing code a bit (mostly fixing messy white-space usage), but also creating a centralised method of setting colours for bones (currently only used for bones in PoseMode).

14 years agosoft body stuff
Jens Ole Wund [Wed, 23 Jan 2008 00:04:59 +0000 (00:04 +0000)]
soft body stuff
got really tired of users asking "why this on the XXX panel'
so i did try sort it out
looks like UI is not my friend

14 years agoBugfix:
Joshua Leung [Tue, 22 Jan 2008 23:24:55 +0000 (23:24 +0000)]

Grouping ungrouped channels in the Action Editor was broken by the previous commit to prevent hidden channels from showing.

14 years agofix for bug where that caused vector blur to crash but could also cause problems...
Campbell Barton [Tue, 22 Jan 2008 22:01:49 +0000 (22:01 +0000)]
fix for bug where that caused vector blur to crash but could also cause problems elsewhere.

14 years agoBugfix for crazyspace correction of childof constraint on bones.
Brecht Van Lommel [Tue, 22 Jan 2008 20:59:45 +0000 (20:59 +0000)]
Bugfix for crazyspace correction of childof constraint on bones.

14 years agoFixed bug #8128, Sculpt Mode crash with Smooth Stroke
Nicholas Bishop [Tue, 22 Jan 2008 19:46:47 +0000 (19:46 +0000)]
Fixed bug #8128, Sculpt Mode crash with Smooth Stroke

Disabled smooth stroke when the grab brush is active

14 years agoBugfix for approximate AO to deal better with degenerate geometry.
Brecht Van Lommel [Tue, 22 Jan 2008 14:01:50 +0000 (14:01 +0000)]
Bugfix for approximate AO to deal better with degenerate geometry.

14 years agoBugfix for another issue with last render instancing commit,
Brecht Van Lommel [Tue, 22 Jan 2008 12:10:59 +0000 (12:10 +0000)]
Bugfix for another issue with last render instancing commit,
objects could get created multiple times.

14 years ago* Fix for bilateral blur node
Matt Ebb [Tue, 22 Jan 2008 06:27:27 +0000 (06:27 +0000)]
* Fix for bilateral blur node

The 'Determinator' input didn't work at all - there was some quite weird code in there. I think the patch review process could have been quite a bit better on this one.

14 years agoPython API
Ken Hughes [Tue, 22 Jan 2008 05:45:09 +0000 (05:45 +0000)]
Python API
Correct error in LibData module documentation.

14 years agoFixes for CMake.
Chris Want [Tue, 22 Jan 2008 05:34:53 +0000 (05:34 +0000)]
Fixes for CMake.

14 years agoCMake isn't fully working yet, just correcting a simple typo.
Chris Want [Tue, 22 Jan 2008 04:27:23 +0000 (04:27 +0000)]
CMake isn't fully working yet, just correcting a simple typo.

I see BINRELOC is set as a configurable option -- does this mean
that it is optional on linux? (I thought it was required.)

14 years ago* Menus for Bone-Groups
Joshua Leung [Tue, 22 Jan 2008 03:35:14 +0000 (03:35 +0000)]
* Menus for Bone-Groups
* Added missing #include in poseobject.c

14 years ago== Action/Bone Groups - Ctrl-G Hotkey + Bugfixes ==
Joshua Leung [Tue, 22 Jan 2008 03:16:48 +0000 (03:16 +0000)]
== Action/Bone Groups - Ctrl-G Hotkey + Bugfixes ==

New Stuff:
* When in PoseMode, the Ctrl-G hotkey now presents a menu with options for manipulating Bone Groups. There are options to add/remove all selected bones from a certain group.
 TODO - add appropriate entries to menus

* Renaming Bone-Groups in the buttons panel could cause segfaults or memory corruption. Wrong maximum-length for button used here (it's far too easy to miss).

* In the Action Editor, (re)grouping channels didn't take into account whether a group was expanded or not. This meant that selected channels from inside a collapsed group got added to the new group too.

14 years ago* Fix button alignment in vecblur node after the excellent recent commit. Also gave...
Matt Ebb [Tue, 22 Jan 2008 01:54:23 +0000 (01:54 +0000)]
* Fix button alignment in vecblur node after the excellent recent commit. Also gave it a proper button instead of just 'C'.

14 years agooutliner messed up shift+clicking on linked objects - would display their library...
Campbell Barton [Tue, 22 Jan 2008 00:56:35 +0000 (00:56 +0000)]
outliner messed up shift+clicking on linked objects - would display their library path rather then selecting them. displaying library path could be useful but should add elsewhere.

14 years agoScript to set timeoffset of all selected objects using the animated path of an active...
Campbell Barton [Tue, 22 Jan 2008 00:53:10 +0000 (00:53 +0000)]
Script to set timeoffset of all selected objects using the animated path of an active object.
This means you can have 100's of objects animations run by animating an empty over them, (needs docs to explain really) ... Easy to setup and time a Mexican wave for instance ;)

14 years agoFix for error in approximate AO in last commit, made it really slow.
Brecht Van Lommel [Mon, 21 Jan 2008 23:17:19 +0000 (23:17 +0000)]
Fix for error in approximate AO in last commit, made it really slow.
Also, duplis are now taking into account, the proper way to exclude
them is to set the material to be not traceable.

Removed an unnecessary pointer from the VlakRen struct to save some
memory, not really that significant, but still, saves 70 mb for 10
million faces.

14 years agoNeeded to add another instance of openNL/SuperLU to the link line
Chris Want [Mon, 21 Jan 2008 23:09:23 +0000 (23:09 +0000)]
Needed to add another instance of openNL/SuperLU to the link line
so that the softbody code in blenlib could see it.

14 years agoAdded view2d_getscale function for getting the opengl x/y scale for 2d windows.
Campbell Barton [Mon, 21 Jan 2008 23:06:23 +0000 (23:06 +0000)]
Added view2d_getscale function for getting the opengl x/y scale for 2d windows.
Display/Edit TimeOffset accounting for its added parent offset.
removed Extension button by mistake.

14 years ago== MSVC 7.1 projectfiles ==
Andrea Weikert [Mon, 21 Jan 2008 22:29:57 +0000 (22:29 +0000)]
== MSVC 7.1 projectfiles ==
- added missing files to projectfiles:
    - source/blender/render/intern/occlusion.c
    - source/blender/src/radialcontrol.c

14 years agoadded function BLI_filepathsize - so you dont have to open the file to get its size.
Campbell Barton [Mon, 21 Jan 2008 22:10:20 +0000 (22:10 +0000)]
added function BLI_filepathsize - so you dont have to open the file to get its size.
made render Touch function remove the touched file if the animation is canceled.

14 years agoRender instancing can now also handle the same object in multiple,
Brecht Van Lommel [Mon, 21 Jan 2008 22:10:14 +0000 (22:10 +0000)]
Render instancing can now also handle the same object in multiple,
non-animated dupligroups.

14 years agoAdded object mode select random (use for changing the group instances of many objects...
Campbell Barton [Mon, 21 Jan 2008 18:09:05 +0000 (18:09 +0000)]
Added object mode select random (use for changing the group instances of many objects to vary them without selecting manually - leaves/sticks etc)

14 years agoVector Blur now has option to be curved!
Ton Roosendaal [Mon, 21 Jan 2008 18:08:57 +0000 (18:08 +0000)]
Vector Blur now has option to be curved!

Especially for fast moving objects (as we have here in Peach) the
art department demanded nice curved vector blur. This formula uses
a quadratic bezier function, which is not giving perfect circles, but
certainly useful results.

Also on todo: get this blur code to do nicer accumulation...

14 years agoFixes:
Brecht Van Lommel [Mon, 21 Jan 2008 14:18:24 +0000 (14:18 +0000)]
- Particle system distribution wasn't flushed properly for non-edited hair.
- For instances in the renderer, also count their verts and faces in the stats.
- Fix for error in the "surface diffuse" formula for strand shading.

14 years agoNow, when rearranging channels in the Action Editor, Action-Channel's only get rearra...
Joshua Leung [Mon, 21 Jan 2008 11:30:54 +0000 (11:30 +0000)]
Now, when rearranging channels in the Action Editor, Action-Channel's only get rearranged if no groups were moved (i.e. not groups were selected). This should be less annoying for users.

14 years ago== Action/Pose Groups - Keyframing Integration ==
Joshua Leung [Mon, 21 Jan 2008 11:26:24 +0000 (11:26 +0000)]
== Action/Pose Groups - Keyframing Integration ==

Now, when inserting keyframes (either IKEY or AutoKeying), if an ActionChannel has been newly created, it will get assigned to an Action-Group with the same name as the Bone-Group that the bone it represents belongs to.

14 years ago== Limit Rotation Constraint - Affects Transform ==
Joshua Leung [Mon, 21 Jan 2008 07:54:31 +0000 (07:54 +0000)]
== Limit Rotation Constraint - Affects Transform ==

Now, the Limit Rotation Constraint can be made to work on the Transform values like the Limit Location/Rotation constraints. Use the "For Transform" button to activate.

Note: this does not really work as well as for the other constraints, as it currently does conversions between eulers/quats and matrices. This results in loss of rotation data.

14 years agoselecting keyframes in the ipo view didn't work well when zoomed in far, use pixel...
Campbell Barton [Mon, 21 Jan 2008 00:41:29 +0000 (00:41 +0000)]
selecting keyframes in the ipo view didn't work well when zoomed in far, use pixel width rather then frame with when giving deselected frames a bias

14 years agoAdded missing header (stddef.h)
Joshua Leung [Mon, 21 Jan 2008 00:41:29 +0000 (00:41 +0000)]
Added missing header (stddef.h)

14 years ago[Coder API's]: Added a "generic unique name-finding function".
Joshua Leung [Sun, 20 Jan 2008 23:53:13 +0000 (23:53 +0000)]
[Coder API's]: Added a "generic unique name-finding function".

Basically, this is based on the behaviour of the unique_constraint_name (or equivilant) functions, which have traditionally been duplicated everytime a new datatype needed this.

Currently, this is in use for the following things:
* Constraints
* Action/Bone Groups
* Local Action Markers / PoseLib poses

Usage Notes:
* The file in which this is to be used should include the standard header file <stddef.h>. This defines the offsetof() macro, which should be used to find the relative location of the "name" member of the structs
* This function is only designed for names of up to 128 chars in length (Most names are at most 32. TimeMarkers are 64). If a longer string needs to be handled, the function will need to be modified accordingly.
* defname is the default name that should be used in case one hasn't been specified already

14 years agoopengl stamp wasnt working right, stamp assumed an alpha channel existed.
Campbell Barton [Sun, 20 Jan 2008 23:52:48 +0000 (23:52 +0000)]
opengl stamp wasnt working right, stamp assumed an alpha channel existed.

14 years ago=== Transform Snap ===
Martin Poirier [Sun, 20 Jan 2008 22:43:48 +0000 (22:43 +0000)]
=== Transform Snap ===

Snapping Mode: Active

With this mode, the active element (at this time, object or vertice) is used as snapping target. If there is no active element in the selection, it reverts back to median mode.

Edit Mode snapping, other meshes no longer have to be selected to act as snapping point.

Fix a potential bug with snapping point from other meshes.

14 years agohiding some softbody options i did hope to get working
Jens Ole Wund [Sun, 20 Jan 2008 22:01:51 +0000 (22:01 +0000)]
hiding some softbody options i did hope to get working
that is : good enough to pass PQC = personal qualitiy control
before peach freeze
some of them almost did ..
but hey we want to give 'em peachers something to rely on
not a mushy "may be it works"
so 'implicit solver' is gone for now
and from what i read between the lines in various papers
the main problem is the Jacobian has negative 'eigenvalues'
yeah that rings a bell .. the transition from a continuous system to a discrete one
bears that.
/* you did not read/understand that .. fine .. because this is something that might give me my late PhD */

14 years agotouch function that should also work on non unix os's, though I cant test here.
Campbell Barton [Sun, 20 Jan 2008 21:27:16 +0000 (21:27 +0000)]
touch function that should also work on non unix os's, though I cant test here.

14 years agodraw muted strips faded. hkey added alt+hkey to mute and un-mute strips, Mkey is...
Campbell Barton [Sun, 20 Jan 2008 20:09:06 +0000 (20:09 +0000)]
draw muted strips faded. hkey added alt+hkey to mute and un-mute strips, Mkey is used for metastrips. would be nice to make this similar to object mode restrict render option.

14 years ago== Sequencer / FFMPEG ==
Peter Schlaile [Sun, 20 Jan 2008 18:55:56 +0000 (18:55 +0000)]
== Sequencer / FFMPEG ==

This fixes:

[#7989] Sequence editor preview and anim render output broken on Linux PPC

and also optimizes RGBA -> ABGR conversion function a little bit.
(Fixing also a crash, if there is no ibuf->rect available...)

14 years agoMade it so locked strips inside metastrips are transformed.
Campbell Barton [Sun, 20 Jan 2008 17:53:58 +0000 (17:53 +0000)]
Made it so locked strips inside metastrips are transformed.

Removed FTYPE from render output panel - was some old format that did index colors, and wasn't even used anywhere.

Added 2 options to the render output panel that can be used for a really basic local renderfarm (even artists can use it!),
"NoOverwrite" and "Touch"
When both are enabled, rendering 1 scene between many pc's on a fast network will populate the directory with frames.
Also useful to delete frames that have errors and re-render (without manually re-rendering each frame)

14 years agoTwo fixes for yesterday commit, new Mist pass:
Ton Roosendaal [Sun, 20 Jan 2008 14:50:30 +0000 (14:50 +0000)]
Two fixes for yesterday commit, new Mist pass:

- non OSA case didn't work
- ztransp adding was accidentally using an incorrect alpha value

NOTE: allmost all pass types rendered in OSA with a filter (not box!) were
incorrectly added on solid layers. Like diffuse, AO, etc.

14 years agoCant use WHILE_SEQ when drawing,
Campbell Barton [Sun, 20 Jan 2008 13:52:54 +0000 (13:52 +0000)]
Cant use WHILE_SEQ when drawing,

drawing strips was setting the depth that would then incorrectly overlap when used with metastrips. - so metastrisp would grow when moved - showed up in peach animatic.

Now metastrips draw display differently- only immediate children are shown on the strip.

Also disabled overlap checking during transform for non zero depth strips since its not needed.

14 years ago== Sequencer ==
Peter Schlaile [Sun, 20 Jan 2008 08:59:06 +0000 (08:59 +0000)]
== Sequencer ==

Fixed crash with metastrips where ibufs where null...

14 years ago== Action Editor - Copy/Paste Improvements ==
Joshua Leung [Sun, 20 Jan 2008 05:10:35 +0000 (05:10 +0000)]
== Action Editor - Copy/Paste Improvements ==

Changed the way the offsetting of pasted keys relative to the current time works. Now, all pasted frames are offset by the same amount. This is calculated as the difference in the times of the current frame and the 'first keyframe' (i.e. the earliest one in all channels to be pasted). The 'first keyframe' is found when doing the copying.

14 years agoAction Editor - More Bugfixes for Action-Groups:
Joshua Leung [Sun, 20 Jan 2008 04:27:54 +0000 (04:27 +0000)]
Action Editor - More Bugfixes for Action-Groups:
* Wrong selection functions were being used for borderselect when handling groups. This resulted in all of the keyframes for a group getting selected
* Select row was not working for groups either, as there was missing code there...

14 years agoBugfix for Action-Groups:
Joshua Leung [Sun, 20 Jan 2008 03:16:19 +0000 (03:16 +0000)]
Bugfix for Action-Groups:

The way the end of a group's channels was being detected was wrong in many places, resulting in the group's last channel often being skipped.

14 years ago== Bone Groups ==
Joshua Leung [Sun, 20 Jan 2008 02:55:35 +0000 (02:55 +0000)]
== Bone Groups ==

I'm committing some work-in-progress code for "bone groups" now, as I there have been are some major bugs caused by the timeoffset stuff (some of my test files were not loading, and other files were showing all sorts of weird problems).

Anyway, in this commit, the following things for "bone groups" have been done:
* Bone groups are stored per armature (internally, this is per bPose block)
* Added controls for editing bone-groups per armature - "add", "remove", "rename". These can be found in the "Links and Materials" panel in PoseMode, beside the settings for PoseLib.
* Reorganised buttons for editing selected bones in PoseMode. I've replaced the "dist" and "weight" buttons (they existed in EditMode anyway) with a menu to choose the bone-group and the custom-shape-ob field. In the place of the old custom-shape-ob field, I've restored the "Hide" button. This might break muscle-memory a bit, but there isn't a lot of space to play with there.

Some stuff I'd been originally planning to do before committing:
* When adding keyframes for bones, an action-group with the same name as the bone's group will be added to the action, and the action-channel will be made a member of that.
* New action/bone groups have unique names (renaming/adding new should check if name exists before assigning it)
* There's a setting under Bone-Groups stuff which sets which custom-colour set is used to colour that group's bones. Currently, this is non-functional, as the necessary drawing code for armatures is not in place yet.

14 years agominor changes to address bugs
Campbell Barton [Sat, 19 Jan 2008 21:52:09 +0000 (21:52 +0000)]
minor changes to address bugs
[#8109] Incorrect header information in exported X3D Files
[#8110] Illegal characters in exported X3D files

14 years agoBugfix for crash in approximate AO pixel cache.
Brecht Van Lommel [Sat, 19 Jan 2008 19:33:32 +0000 (19:33 +0000)]
Bugfix for crash in approximate AO pixel cache.

14 years agomissing header from editipo.c
Campbell Barton [Sat, 19 Jan 2008 19:01:19 +0000 (19:01 +0000)]
missing header from editipo.c

14 years agomade BINRELOC disabled by default with scons, only enable for linux
Campbell Barton [Sat, 19 Jan 2008 18:52:39 +0000 (18:52 +0000)]
made BINRELOC disabled by default with scons, only enable for linux

14 years agoadd the option to add the parents time offset value.
Campbell Barton [Sat, 19 Jan 2008 16:32:29 +0000 (16:32 +0000)]
add the option to add the parents time offset value.

14 years ago find_group would only return the first group, this let to the assumption that an...
Campbell Barton [Sat, 19 Jan 2008 15:13:42 +0000 (15:13 +0000)]
 find_group would only return the first group, this let to the assumption that an object was only in 1 group, made it easy to loop through all groups an object is in.

group = NULL;
while( (group = find_group(base->object, group)) ) {

14 years agoAdded new render pass: "Mist".
Ton Roosendaal [Sat, 19 Jan 2008 11:17:12 +0000 (11:17 +0000)]
Added new render pass: "Mist".
This is actually just the alpha value as currently being calculated
by the mist code. It is in many cases not very useful to have this as
alpha in shading result, also for postprocess and composite.

Note: this pass also works with "Mist" not set in World, of course.

14 years agoAdded "WITH_BF_BINRELOC = 'false'" for msvc+scons too
Joshua Leung [Sat, 19 Jan 2008 03:24:12 +0000 (03:24 +0000)]
Added "WITH_BF_BINRELOC = 'false'" for msvc+scons too

14 years agodon't display relative paths button when loading files.
Campbell Barton [Fri, 18 Jan 2008 23:31:18 +0000 (23:31 +0000)]
don't display relative paths button when loading files.
this was silly anyway since it always gave an error.

14 years agoDisabled "WITH_BF_BINRELOC" for mingw
Joshua Leung [Fri, 18 Jan 2008 23:13:07 +0000 (23:13 +0000)]
Disabled "WITH_BF_BINRELOC" for mingw

14 years agoFixing makefiles for binreloc I made it use flags like other
Kent Mein [Fri, 18 Jan 2008 21:39:47 +0000 (21:39 +0000)]
Fixing makefiles for binreloc  I made it use flags like other
things default on for linux.  ideasman helped me get scons working.
Cmake still needs some love...


14 years agoupdate with many improvements:
Remigiusz Fiedler [Fri, 18 Jan 2008 17:03:43 +0000 (17:03 +0000)]
update with many improvements:
 v1.0.12: 2008.01.17 by migius
 a8 lately used INI-dir/filename persistently stored in Registry
 a8 lately used DXF-dir/filename persistently stored in Registry
 a7 fix missing layersmap{} for dxf-files without "section:layer"
 a6 added support for XREF external referenced BLOCKs
 a6 check for bug in AutoCAD2002:DXFr12export: ELLIPSE->POLYLINE_ARC fault angles
 a6 support VIEWs and VPORTs as cameras: ortho and perspective mode
 a6 save resources through ignoring unused BLOCKs (not-inserted or on frozen/blocked layers)
 a6 added try_finally: f.close() for all IO-files
 a6 added handling for TypeError raise
 a5 bugfix f_getOCS for (0,0,z!=1.0) (ellipse in Kai's dxf)
 a4 added to analyzeTool: report about VIEWs, VPORTs, unused/xref BLOCKs
 a4 bugfix: individual support for 2D/3DPOLYLINE/POLYMESH
 a4 added to UI: (*wip)BLOCK-(F): name filtering for BLOCKs
 a4 added to UI: BLOCK-(n): filter anoname/hatch BLOCKs *X...
 a2 g_scale_as is no more GUI_A-variable
 a2 bugfix "material": negative sign color_index
 a2 added support for BLOCKs defined with origin !=(0,0,0)
 a1 added 'global.reLocation-vector' option

 v1.0.11: 2007.11.24 by migius
 c8 added 'curve_resolution_U' option
 c8 added context_sensitivity for some UI-buttons
 c8 bugfix ELLIPSE rotation, added closed_variant and caps
 c7 rebuild UI: new layout, grouping and meta-buttons
 c6 rewritten support for ELLIPSE mesh & curve representation
 c6 restore selector-buttons for DXF-drawTypes: LINE & Co
 c6 change header of INI/INF-files: # at begin
 c6 apply scale(1,1,1) after glob.Scale for all mesh objects, not for curve objects.
 c5 fixing 'material_on' option

14 years agoLinux only addition to know for sure the path of blender because sometimes the Play...
Campbell Barton [Fri, 18 Jan 2008 15:10:17 +0000 (15:10 +0000)]
Linux only addition to know for sure the path of blender because sometimes the Play button doesn't work depending on how blender is started.
This uses binreloc -
it should also solve the problem of python scripts not being found.

14 years agoBugfix: particle settings didn't automatically link in associated
Brecht Van Lommel [Fri, 18 Jan 2008 14:30:26 +0000 (14:30 +0000)]
Bugfix: particle settings didn't automatically link in associated
objects or groups.

14 years ago2 new timeoffset buttons in the animation panel "Ofs" and "Rand"
Campbell Barton [Fri, 18 Jan 2008 12:20:28 +0000 (12:20 +0000)]
2 new timeoffset buttons in the animation panel "Ofs" and "Rand"
Useful when animating many objects falling at different times (for instance).

14 years agobugfix didnt get committed somehow, appending a group assumed any indirectly linked...
Campbell Barton [Fri, 18 Jan 2008 11:51:46 +0000 (11:51 +0000)]
bugfix didnt get committed somehow, appending a group assumed any indirectly linked objects were apart of the appended groups and the objects added to the scene.
Now there are recursive dupli's this is no longer true. so need to check the append flag.

14 years agoupdate to m3g exporter by Gerhard Völkl
Campbell Barton [Fri, 18 Jan 2008 10:46:37 +0000 (10:46 +0000)]
update to m3g exporter by Gerhard Völkl

14 years ago== Action-Groups - Drawing Tweak ==
Joshua Leung [Fri, 18 Jan 2008 00:04:19 +0000 (00:04 +0000)]
== Action-Groups - Drawing Tweak ==

Now action-group channels are drawn with a green-ish strip background instead of the usual colours to help distinguish them from other channels, making it easier to identify them.

14 years agoRoutine purge of compiler warnings
Joshua Leung [Thu, 17 Jan 2008 23:38:53 +0000 (23:38 +0000)]
Routine purge of compiler warnings

14 years ago== Action Editor - Groups for Action Channels (Peach Request) ==
Joshua Leung [Thu, 17 Jan 2008 23:02:11 +0000 (23:02 +0000)]
== Action Editor - Groups for Action Channels (Peach Request) ==

Now, you can assign Action Channels to named (folder-like) groups, which help to organise the channels (important for more complex rigs). These are collapsible, can be "protected", and show a "summary" of the keyframes in the channels the Group contains. They are drawn as bright-green (active) or a darker shade of green (not active) channels.

* Each Action has its own set of Groups.
* An Action-Channel can only occur in one Group at a time. It can also not occur in any group.
* Action-Channels can be moved between Groups
* Groups + grouped-channels always occur BEFORE un-grouped channels

Important Hotkeys:
* Shift-G  :  Adds the selected Action-Channels to the Active Group. This will create a new group if need be
* Ctrl-Shift-G : Always adds a new group, and adds the selected Action-Channels to it
* Alt-G : Removes selected Action-Channels from their groups
* Ctrl-Shift-Alt-G : (Note: this will be removed soon) This is a simple debugging-hotkey I added, which just prints a list of the groups, channels, and their addresses...
* NKey / Ctrl-LMB: While hovering over the name of a group, this shows a popup like for other channels, which allows the editing of the channel's name, etc.

Assorted Notes:
* Some tools may not work yet with this (Ctrl Numpad+/- for example)
* Fixed some bugs in various places in Action Editor code
* Added theme colours for group channels
* The nomenclature of these tools may change in future when a better alternative is found
* The ability to auto-assign action-channels to groups when they are keyframed will be coming up shortly

14 years ago=== Custom Transform Orientation ===
Martin Poirier [Thu, 17 Jan 2008 22:57:00 +0000 (22:57 +0000)]
=== Custom Transform Orientation ===

Added orientation overwriting old ones didn't change correctly (weren't returning the correct index).

14 years agoFixed some whitespace indentation I found while looking at something else.
Kent Mein [Thu, 17 Jan 2008 21:25:25 +0000 (21:25 +0000)]
Fixed some whitespace indentation I found while looking at something else.


14 years agoApproximate Ambient Occlusion
Brecht Van Lommel [Thu, 17 Jan 2008 19:27:16 +0000 (19:27 +0000)]
Approximate Ambient Occlusion

A new approximate ambient occlusion method has been added, next to the
existing one based on raytracing. This method is specifically targetted
at use in animations, since it is inherently noise free, and so will
not flicker across frames.

Further improvements are still needed, but it can be tested already. There
are still a number of known issues:

- Bias errors on backfaces.
- For performance, instanced object do not occlude currently.
- Sky textures don't work well, the derivatives for texture evaluation
  are not correct.
- Multiple passes do not work entirely correct (they are not accurate
  to begin with, but could be better).

14 years agoRender control feature: shader-level shadowbuffer bias
Ton Roosendaal [Thu, 17 Jan 2008 19:01:58 +0000 (19:01 +0000)]
Render control feature: shader-level shadowbuffer bias

Lampbuffers require painful bias tweaking (to prevent aliasing or to
get shadow detail). Sometimes you want this different per object, like
for gras you want less shadow detail, but for the ground you want high
detail. This feature allows to tweak it.

The new "LBias" slider is in shader panel, bottom. Ugly! But, thats for

14 years agoTiny fix but took me hours to track down: render layer menu in Image Window
Ton Roosendaal [Thu, 17 Jan 2008 15:45:40 +0000 (15:45 +0000)]
Tiny fix but took me hours to track down: render layer menu in Image Window
is not being reset when you render, so after render the layer you picked is
still visible in Image Window.

14 years agoBugfix for "ghost feathers" trailing one frame behind the character.
Brecht Van Lommel [Thu, 17 Jan 2008 12:02:15 +0000 (12:02 +0000)]
Bugfix for "ghost feathers" trailing one frame behind the character.
The derivedmesh and particle system needed to be evaluated at render
level before creating dupliparticles.