* Added patch 5251 X/Y Offset to Split Viewer node, by Juho
(with some modifications from the patch version).
Also various small tweaks to compositor drawing & buttons.
* Shuffled a few bone-path buttons in the Armature Visualisation panel.
* Added a new option for bone-paths drawing: Calculate/show the path
travelled by the 'head' (fat end) of bone. By default, this option is off.
* Also, I forgot to mention in last commit that I had added an option which
specified the time-difference between each highlighted point on the curve.
Also added ease in/out for roll correction and a small lag for directional changes to motion shouldnt be jurky.
If people are serious about using this to record camera path IPOs then we should have a panel for motion settings (roll correction speed x and z and motion lag for eg.)
Vertex snapping now works with backbuffered selection modes. Previously
backbuffer sampling had no way to check whether or not the indices that
it retrieved were selected or not. To resolve this I added two optional
arguments to sample_backbuf_rect in drawview.c. The first argument tells
the function that some additional testing of the retrieved index values
needs to be done and the second argument is a pointer to a function to
do the testing. findnearestvert() in editmesh_mods.c now makes use of this
and passes sample_backbuf_rect() the appropriate argument when being used
for vertex snapping.
The Plumiferos Team have requested some improvements to the
ghost and path drawing tools for armatures. These changes make
these more useful, with more customisable settings. A new panel in
the editing panels for armatures has been added to house these
settings.
-> Ghosts
In addition to the existing method of showing ghosts either side of the
current frame, it is now possible to show ghosts from a given frame range.
This is useful for visualising how the poses in another part of the animation
changed, while editing another part. The colour of ghosts goes from light
(earlier on) to darker (later on).
-> Paths
Several new options for path drawing have been added.
* It is now possibly specify a frame range in which to calculate paths too.
This offers speedups for longer timelines as a shorter span of time can be
sampled.
* Keyframes from the active action/action strip can be shown in a different
colour (in the default theme, this is yellow) on the path.
* Frame numbers for the highlighted positions on the path can be drawn.
Two notes of caution:
* For ghost range: keep the frame ranges relatively small (20-50 frames),
otherwise you will experience a slowdown.
* For path frame numbers: if you have a graphics card which is picky about
text in the 3d-view (like x,y,z labels on empty), this may cause issues.
Bugfixes:
* The speed controller changes now dynamically the IPO-curve range to
it's needs. (Frame matching and negative velocities didn't work...
Obviously nobody tried ;-)
* Fixed some redraw bugs. The IPO window is correctly updated if one pushes
the IPO Frame locking button.
* UV and Radiosity passes are now visible in Outliner (like for other passes)
* Changed tooltip of overwrite material to:
"Name of Material to use as Materials instead"
* Also, fixed Reflection and Refraction passes in the Outliner - flags were
mixed up, so turning on Reflection turned on Refraction and vica-versa.
* Added a new top-level add menu category for compositing nodes: Distort
It currently contains Translate, Rotate, Scale, Flip, Displace and Map UV
Also did some cleaning up of the ordering of add node menu items to be a
bit better organised.
-Added missing access to Node win theme (thanks Mickaël Le-bihan for pointing) and also options group and group_active.
-Added Node space to Window.Types dict.
-Tiny update to the save theme script version numbers (keeping 2.42 for now to avoid popups, but should change to 2.43 right before release).
BTW: Happy New Year everyone :).
Adding missing define for displace node (Matt can change the number when he gets back, this is just to fix compilation)
Removing "#pragma mark" from node.c. IIRC, that's XCode leaving crap around, so be sure to remove them when you commit (it outputs warnings on other compilers).
* Displace Node
Displaces an input image's pixels based on an input vector mask. This can be
useful for a lot of things, like hot air distortion, quick-and-dirty compo
refraction, compositing live footage behind refracting objects, and more!
The amount of displacement in the X and Y directions is determined by:
* The value of the mask's channels
- (red) channel 1's value determines displacement along the positive or
negative X axis
- (green) channel 2's value determines displacement along the positive or
negative Y axis
If both the channel's values are equal (i.e. a greyscale image) the input
image will be displaced equally in both X and Y directions, also according to:
* The X scale and Y scale buttons
- These act as multipliers to increase or decrease the strength of the
displacement along their respective axes. They need to be set to non-zero
values for the node to have any effect.
Because of this, you can use the displace node in two ways, with a greyscale
mask(easy to paint, or take from a procedural texture), or with a vector
channel or RGB image, such as a normal pass, which will displace the pixels
based on the normal direction.
A quick practical example:
http://mke3.net/blender/etc/displace-desert-h264.movhttp://mke3.net/blender/etc/displace-desert.blend.zip
And some techie examples:
Using a greyscale mask
http://mke3.net/blender/etc/displace-bw-h264.movhttp://mke3.net/blender/etc/displace-bw.png
Using a vector mask
http://mke3.net/blender/etc/displace-vec-h264.movhttp://mke3.net/blender/etc/displace-vec.png
* added .iconTheme variable
* bugfix. drawType was not being saved because Py_BuildValue and __members__ was missing an "s"
* added Blender.Get('icondir')
This appears to have been caused by the excessive amount of memory that multires was eating up every time an edit operation pushed a new undo copy. Added a hack for multires that allows it to use the same multires data for multiple undo copies until the user actually changes levels (which is when multires data is actually updated.)
if play and record are enabled at the same time you can record the flight path.
adds a keyframe for every frame, dosnt support the Keying options in the user prefs.
If no rotation is being done on the camera, no rot keys are applied and same for location.
Fix for bug #5248, sculpt - mirrored tiled texture odd results
Changed the algorithm used for projecting the brush texture onto the model. The old algorithm was never implemented properly, causing increasingly
wonky distortions of the brush as it got farther away from parallel to the screen. The new system uses the screen coords of vertices, the obvious
advantage being that 2D screen coords can be mapped quite easily to 2D texture coords. The main disadvantage of this method is that there are still
distortions in the brush as the surface beneath it becomes less parallel the screen. These distortions, however, are not as bad as the old ones
because they are predictable from the user's perspective. (It's analogous to a movie being projected onto a sphere; if the viewer is in front of the
sphere there is no apparent distortion, but from the side the movie appears stretched and distorted.)
This may still be worth revisiting after the release.
This patch allows icon files (.png) to be loaded into Blender dynamically,
without having to go through the tedious and technical process of compiling
them in. It also makes them part of the theme settings so they can be
attached as part of a theme and saved in the default .B.blend.
Icon files should be stored in $HOME/.blender/icons/ . This really sucks on
Mac since it's hidden in the finder, but it's a separate issue. We need a
better system of finding things like this, python scripts etc, perhaps a
nice wrapped function something like BLI_getresourcedir(), then it's easy to
do platform specific stuff there, like using ~/Library/Application Data on Mac.
More info and docs in the patch tracker @
https://projects.blender.org/tracker/index.php?func=detail&aid=5334&group_id=9&atid=127
Fixed the bug where it would snap to a selected (moving) vertex.
Fixed a bug with Snap Closest with only one vertex selected.
=== Internals: EditMesh Mods ===
Modify and documented findnearestvert.
Added a new parameter to restrict the search to selected or unselected vert instead of just adding a bias to them (as previously). Currently, the "strict" method bypasses the openGL optimisation, people with more knowledge about that should feel invited to fix it.
=== Internals: EditMesh Tools ===
Adding missing newline at the end.