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.
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
Bugfixes:
* 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.
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.
- draw arrow in area that will removed and draw area that will be kept lighter (change from trunk: without arrow)
- not using notifications yet, but uses flag in ScrArea to determine draw type for area. (might be worth discussing)
- experimental: swapping of areas extended a bit, which allows user to choose area a bit more freely
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...
- 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.
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.
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.
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
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.
that is : good enough to pass PQC = personal qualitiy control
*sigh*
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 */
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...)
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)
- 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.
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.
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.
This is a patch by Michael Fox (mfoxdogg) that make more
easy join two are, just RMB+Alt in the "origin" area,
drag the mouse to the "target" area and release the mouse.
Note that this is not a "final mouse-bind" for the join
operator, just an easy and simple option for test in
this early stage of 2.5.
Other note: maybe it's a good idea add azones here ?
* 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...