Commit Graph

11212 Commits

Author SHA1 Message Date
Joshua Leung
5be2e5aa98 == PoseLib - Overhauled Implementation ==
Based on feedback from Ton, I've recoded the way "PoseLibs" are implemented/exposed. Therefore, quite a bit of code has been changed to fit this in better.

Now, ANY ACTION can be a "PoseLib". A set of Markers which belong to the Action (it's taken a year, but they're finally back), are used to tag "poses" in the Action. These markers are shown using diamond-shaped blue icons (designed by Matt Ebb) in three shades - unselected/normal, selected, active. 

Notes:
* Each Armature Object has an Action which acts as a PoseLib.
* Improved UI presented in buttons panel for this
-- added proper buttons for action assigning
-- renamed "Validate PoseLib" to "Auto-Sync PoseLib" (this option auto-tags poses based on keyframes found) 

Like in the 3d-view, use the hotkeys:
* Shift-L to add a local marker 
* Ctrl-Shift-L to rename a local marker
* Alt-L to delete selected local markers

Note: transforms, etc. are not currently available with these markers 

== PoseLib Preview ==
Added a few features here:
* Left/Right-Arrow keys now change the poses too (previous and next respectively)
* Up/Down-Arrow keys also change the poses, but "jump" to a pose 5 steps away in their respective directions
2007-12-30 12:08:28 +00:00
Matt Ebb
96935a6c5d Reverting mistaken CMakeLists.txt commit, woops! 2007-12-29 05:29:08 +00:00
Matt Ebb
3c1ad6a295 * Displacement map baking
This is an extension on the work Brecht already did to implement normal map baking. I've updated the release notes page here with info and pics:

http://www.blender.org/development/current-projects/changes-since-244/render-baking/
2007-12-29 05:17:19 +00:00
Matt Ebb
02b00e2fd7 * Displacement map baking
This is an extension on the work Brecht already did to implement normal map baking. I've updated the release notes page here with info and pics:

http://www.blender.org/development/current-projects/changes-since-244/render-baking/
2007-12-29 05:16:00 +00:00
Campbell Barton
81cdf24284 Fix for [#7866] Relative Path to library from command line
http://projects.blender.org/tracker/index.php?func=detail&aid=7866&group_id=9&atid=125

where linked relative blend files would not load when the absolute path was not given.
Solved by constructing the absolute path from the command line argument given.
2007-12-28 21:16:00 +00:00
Ton Roosendaal
6a5ce69a16 Error in previous commit: the texture filter size should not be scaled
at all if you use new 'minimal' option. The new option works much nicer
if it only sets the minimum. (use texture with 'refl' map)

Added option to env map too!
2007-12-28 19:38:47 +00:00
Ton Roosendaal
c3ecba1d65 And there's another annoyance I got poked for:
Image texture "Filter size" was not well usable for making the
appearance soft filtered, this because it multiplied the sample 
values, and such values could be extreme small.

Added next to "Filter" buton a new "Min" option, which enforces
a filter size to be a minimum of 'filter' pixels in size.
2007-12-28 18:58:40 +00:00
Campbell Barton
1c02a5f620 Added a new option for 'Apply Object', (Ctrl+A) Called "Apply Visual Transform to Loc/Size/Rot"
Since there was no easy way to apply a constraint's transformation back to the original objects transformation.

Also adjusted how Apply Scale/Rot works so that it wont change some objects then raise an error and leave others unchanged, better to check first so it changes everything or nothing.
2007-12-28 17:10:55 +00:00
Janne Karhu
64dd90af0b - particle size changes weren't updated without a cache clear
- protecting the particle cache now actually protects the cache a bit better and not just prevent the clear button from working
- cache was being used for "none" physics.
- a bad tooltip for "reactor initial velocity"
2007-12-28 16:13:52 +00:00
Ton Roosendaal
a85c1c8a65 Render feature: the END OF DIFFUSE BANDING!
http://www.blender.org/development/current-projects/changes-since-244/rendering-features/

Thanks Andy for poking and analysing, and Nathan for feedback!
2007-12-28 13:11:27 +00:00
Campbell Barton
1b72bc9792 small edits noticed when using linked objects, - Make undo string say linked and disallow editing PassIndex and changing the Parent of linked objects. 2007-12-28 12:11:45 +00:00
Joshua Leung
aa9aa530fb == Action Editor - Header Buttons Shuffle ==
* Changed the order of Copy/Paste and AutoSnap buttons
* Auto-snap menu now has more descriptive names (off --> No Snap)
2007-12-28 09:57:06 +00:00
Juho Vepsalainen
4a0dc8d4d9 Bugfix - Socket selection status was not updated properly on file load
This commit adds a missing initialization that caused "Toggle Link (f key)"
not to work properly in case a file with an existing selection status was
opened.
2007-12-28 08:04:37 +00:00
Campbell Barton
16ea99cbaa Support for recursive dupli's, now dupliverts and duplifaces can instance empties that intern instance dupligroups. 2007-12-27 22:58:32 +00:00
Jens Ole Wund
fbc743f332 fix .. hum not really a bug but waste of CPU
remove 6 multiplications and one square root in core spring calculation .. called for every solver step try
2007-12-27 22:48:30 +00:00
Juho Vepsalainen
f4015d9fce Bilateral Blur Node
Bilateral Blur node allows the user to blur images while retaining their
sharp edges. Blurring can be controlled by following controls:
*Iterations
*Color Sigma
*Space Sigma

Also image input to blur and a determinator image is provided. The node produces
a blurred image as its output.

The more iterations are provided, the smoother the result. Use color and space
sigmas to control the amount of blur. One way to use the determinator input is
to feed a mix (add) of Z and normal passes to it.

Examples of usage:
Ambient Occlusion smoothing - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_01.blend
Blurry Refraction - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_02.blend
Smoothed shadows and smoothed Ambient Occlusion combined - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_03.blend

If you check out the examples, render the image and alter the values to see how 
they affect.

More information about the algorithm can be found at 
http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html .

Thanks to Vilem Novak for contributing the patch.
2007-12-27 20:36:17 +00:00
Campbell Barton
59d40d7f84 DupliGroups can now instance duplifaces and duplierts - not nice code, but this should help a move to proper recursive dupli's.
This is needed for peach project leaves on tree's

(space.c better tooltip for mipmaps)
2007-12-27 20:33:29 +00:00
Juho Vepsalainen
8ddc48d32f Directional Blur Node
Directional Blur node allows the users to do various blur operations on the input 
image. It essentially offers three different kind of ways of blurring in one node.
It is possible to blur using a certain direction, spin and zoom. These three ways 
can be used in conjunction.

The node contains following controls:
*Iterations, Wrap
*Center: X, Y
*Distance, Angle
*Spin
*Zoom

Iterations is used to determine the smoothness of the result. The more iterations,
the smoother result. Low values are good for preview.

Wrap means that the image is wrapped as if it was tiled on both x and y directions.
To see better what this means, try it with spin for instance.

Center values (X and Y) determine the location which is used as a pivot point for
the operations. It is center (0.5) of the image by default.

Distance and angle are used to adjust directional blur. The result can be described
as a sweep that varies based on given distance (bigger distance, longer sweep) and
angle. Angle is given in degrees.

Spin produces rotating blur based on given angle. Yet again it is in degrees. Also
negative values work.

Zoom causes the image to be zoomed towards set center point (Center values).

Thanks to Alfredo de Greef (eeshlo) for contribution.

Possible development ideas:
*Make an algorithm to extend image in case spin is used. Extend would temporarily
change the size of the canvas of the input image. Canvas would be filled based on
colors on the edges of the input image. After the blur operation has been done,
the image would be cropped back to normal size. The advantage of this would be nicer
result of spin (no problems with image size) on a computational cost.
*Make values animatable. This is something that is better solved on more general
level. ("everything is animatable" paradigm)
*Provide an option to calculate automatic value for iterations. A good value that
produces a smooth result could be calculated based on direction deltas. This would be
useful in conjuction of animatable values.
2007-12-27 14:19:11 +00:00
Campbell Barton
28805c626f ==Python API==
added mipmap as an option for Blender.Get/Set
2007-12-27 13:35:14 +00:00
Joshua Leung
c020b9b146 == PoseLib - Bugfixes ==
* Fixed crash using Interactive Preview, on an armature without a PoseLib 

* Cancelling Interactive Preview now correctly restores the original Pose 

* Interactive Preview now sets the correct active pose after it is run

* Interactive Preview now also updates the buttons window after it is run

* Clicking on the "New PoseLib" button now creates a new PoseLib action, even when one existed before

* Poses can be applied using the Pose browsing menu (i.e. when a menu item from that list is clicked, that pose is assigned)
2007-12-27 11:20:37 +00:00
Juho Vepsalainen
d06dc00af9 Toggle links tool for Node Editor
This commit adds a new tool, Toggle Links, to the node editor. This tool
allows the user to toggle the status (linked/not linked) between desired
sockets. The tool can be used either by using the f key or the menus.

This functionality is analogue to one found in object editing modes except
for its additional toggle functionality.

To use this tool, the user has to first select an input and an output socket.
Selecting is done by clicking with right mouse button on a socket. After the 
tool has been invoked, the link between those two sockets is toggled. The 
result may vary based on existing linkage.

There can be only one input and one output selected at maximum in a node 
tree. This means that if the user selects a socket while one of the same 
type is already selected, the old one will be deselected.

The tool complements the current way of connecting nodes. One possible use
for it is to use it to review output of nodes by using a viewer node. Just
select wanted input socket of a viewer node, set it visible and use selection 
of an output socket in conjuction with f key to show the output in the viewer
node. Select another output and hit f to see its output and so on.
2007-12-27 10:17:33 +00:00
Joshua Leung
0dc38a5bd9 == PoseLib - Added 2 features ==
* When previewing poses, it is now possible to manipulate the view to look at the pose from another angle. It is a known issue, that the normal header displays when using the MMB to do so.

* Added a tool to "validate" or sync its PoseLib data to the keys stored in the Action.
2007-12-27 08:36:27 +00:00
Nicholas Bishop
55d49ed63b == Multires ==
Fixed a crash on adding a UV layer to a multires mesh while in editmode.
2007-12-27 07:27:03 +00:00
Nicholas Bishop
fc2cf13fc6 == Sculpt ==
Fixed a memory leak when using the interactive brush resize tool.
2007-12-26 23:08:00 +00:00
Nicholas Bishop
015007beaf == Sculpt ==
Fixed bad level calls in sculptmode.
2007-12-26 22:40:56 +00:00
Kent Mein
ae976e087a This is patch: [#7975] imbuf for DDS textures: improved read support and a few bugs fixed
Kent

Notes From the author:
The attached patch syncs the DDS code in Blender with the latest revision 
(324) of the nvidia texture tools. This fixes a few minor issues and adds 
support for a more types of DDS textures, in particular uncompressed textures 
that don't have the standard 16, 24, or 32 bits per pixel.

Note: I have started using the nvidia texture tools convention for naming 
integer types (uint, uint16, uint8, uint64 etc.) because doing so makes it 
much easier to merge patches from upstream. Since the code is compiled 
separately from the rest of Blender, this likely does not pose a problem. 
However, if there turns out to be a good reason for avoiding those nvidia type 
names from upstream, I'd be happy to fix it.

Regards,
Amorilia
2007-12-26 21:46:30 +00:00
Nicholas Bishop
8e84f64c3d == Multires ==
Fixed multires_update_colors so it ignores the editmesh during render.
2007-12-26 20:43:58 +00:00
Peter Schlaile
6d13d44734 == Sequencer ==
Moved status info bar into panels. It was always shown on the wrong place...
Added anim-startofs and anim-endofs, so that one can specify the range of 
_input_ that should be used. 

There is a subtle difference to start-ofs and end-ofs,
which will show, when you use "Reverse Frames" or "Speed Control". Both
effects operate on the input-range and _not_ on the display range! Now
you can control both in a comfortable way. Only thing missing: a button
to copy start-ofs and end-ofs to anim-startofs and anim-endofs.
(Andy: that was the feature you missed, when storyboarding with the sequencer
and the speed control effect :)

Also: added File-Name and Dir-Name to redirect input as needed.
2007-12-26 19:30:49 +00:00
Andrea Weikert
e06edeb801 == MSVC 7.1 projectfiles ==
- added missing files to projectfiles
- cleaned up thumbnail creation to avoid dependency on BKE_
2007-12-26 19:19:51 +00:00
Juho Vepsalainen
2daf4c978c Node curves to maintain handle status after adding a control point
Node curves maintain handles status (normal, auto, vector) even after adding
a control point now. This makes the behavior the same as in case of removing a control
point. Previously the status of handles was reseted.
2007-12-26 17:04:21 +00:00
Ton Roosendaal
1b95e2badd Bugfix, Peach collection:
- new "preview" image in material caused crash because copy/paste material
  didn't support it yet.
2007-12-26 16:15:27 +00:00
Peter Schlaile
237ba0291a == Sequencer ==
Moved N-keys dialog into panel (sub panel of "Scene")
_much_ better :)

Since UI-code isn't directly my main field of coding, please check
thoroughly...
2007-12-26 16:07:16 +00:00
Joseph Eagar
debf29022a =Particle bugfix=
Hair keys were saved via a non-sdna function, which resulted
in endian problems.  As ton pointed out on irc, he invented
sdna for a reason!
2007-12-26 15:25:30 +00:00
Joshua Leung
10b8237eab == PoseLib - Pose-Library Tool for Blender ==
"A slightly late Christmas present for the Animators out there :-)"

This tool allows animators to store frequently used poses in an action, and be able to label those poses to help them retrieve them later. In a way, it acts as a glorified clipboard for poses.

One of the cool features with this is the ability to select which stored pose to use interactively in the 3d-view. Once a few poses have been stored in the PoseLib, simply use the "Ctrl L" hotkey to start previewing. Use the Mousewheel or the Page Up/Down keys to change poses, and confirm/cancel the preview in the same way as you do for transforms.

Usage Notes:
* Each Armature may get its own PoseLib. PoseLibs are simply actions with extra data, so they can get relinked.
* Manually editing actions used as PoseLibs is not a good idea, as some data may not be able to be found. Tools to automagically find poses in an action could be investigated...
* PoseLib will only apply/retrieve poses to/from selected bones
* A basic UI for this can be found in the "Links and Materials" panel. Most of the PoseLib tools are presented there.

Useful Hotkeys (also found in Pose->PoseLib menu):
* Ctrl L  - interactively preview poses
* Shift L - add a new pose or replace an existing pose in the PoseLib with the current pose
* Ctrl Shift L - rename an existing pose in the PoseLib 
* Alt L - remove a pose from the poselib.c
2007-12-26 11:17:26 +00:00
Joseph Eagar
f81bc543e7 =Scons ffmpeg link order update=
Update link order for ffmpeg on win32, patch provided by
Anders Nor "Debolaz" Berle on irc.
2007-12-26 10:59:08 +00:00
Nicholas Bishop
9807586192 == Multires ==
Fixed bad level calls within multires usage.
2007-12-26 10:43:51 +00:00
Nicholas Bishop
88e71a5b79 == Multires ==
Cleaned up bad level calls for multires; moved most of multires functions to blenkern, where they should have been in the first place. Functionality of the tool is unchanged.
2007-12-26 09:39:15 +00:00
Martin Poirier
b0b3a69c19 == Transform: Warp ==
Adding special hotkey (MMB) to reverse the direction of the warp.

Normal input is 0..360 mapped to the horizontal position of the mouse on the 3D view (the 3D view becomes a sort of giant horizontal slider), pressing MMB reverses the value to 0..-360 and back if you press it again.

I've used MMB mostly because it's unused in Warp, easily accessible and already used to switches mode for Shear (shear x/y).

Indirectly suggested by a user question on ba.
2007-12-26 03:06:59 +00:00
Peter Schlaile
6e812d5901 == Sequencer ==
* Make Lock flag work for metastrips
* Fixes: flags are cleared on exit of metastrips
* Fixes (hopefully): red picture on big endian
2007-12-25 20:31:07 +00:00
Peter Schlaile
a3a88f9591 == Sequencer (includes a little bit of Peach :) ==
Reworked image / movie loading, to add the following features:

- Mute strip
- Lock strip (peach request :)
- Crop / Translate _before_ image rescaling
- N-keys editing of start, startofs, endofs, startstill, endstill

Added (currently disabled) data structures for

- proxy support
- strip blend modes (currently only "REPLACE" works, which always did :)

Planed:

- automatic FPS rescaling
- command keys to lock/mute a bunch of selected strips 
  (which would complete the peach request to lock tracks)

Caveats: now the N-keys dialog is four-tabbed. I think, we should move those
tabs into the panels dialog in the future...
2007-12-25 15:31:36 +00:00
Joseph Eagar
139cb3c0bc =Scons ffmpeg update and avi fix=
Updated scons to work with the ffmpeg binaries in
lib/windows/gcc again.  Also fixed a bug reported by
Debolaz on irc.  Blender's internal avi reading (which can
only read simple formats like motion jpeg) was telling the
video code it could read all avis, without checking their
codec.

To fix this, I copied AVI_open_movie(), and modified it to
to replace AVI_is_avi().  Now it properly checks the codec,
and validates the header.
2007-12-25 06:48:45 +00:00
Martin Poirier
9b45ead730 == Skeletor ==
Commenting debug code that would output the harmonic weight to vertex color.
2007-12-24 17:35:54 +00:00
Campbell Barton
052a0551e4 Added 'File->External Data->Make all files Absolute'
OpenGL stamp also wasnt checking correctly (own error)
2007-12-24 17:07:52 +00:00
Campbell Barton
8a07e665c2 patch from Vladimir Espinosa for keying object layers from python 2007-12-24 11:43:09 +00:00
Campbell Barton
df46987ba3 old bug in python api, Blender.Scene.Unlink() did not check if screens were using this scene or if it was used as a set elsewhere.
In both cases this resulted in invalid pointers and crashes.
Also was not freeing nodes or sequence data.
2007-12-24 10:25:35 +00:00
Martin Poirier
2b49858b02 Missing change in previous BPy revert.
This was only the added build options in scons, so no harm done.
2007-12-23 23:41:16 +00:00
Peter Schlaile
146b0aec14 == Sequencer ==
Fixed IPO calculation for threaded prefetch rendering. (do_seq_ipo used
global CFRA tststs...)
2007-12-23 21:27:12 +00:00
Peter Schlaile
9f7182b8c8 == Sequencer ==
[#7861] Sequencer segfaults when trying to add images

Fixed some _really_ stupid bugs in transform_seq, that made it segfault
if one selected 0 images.
2007-12-23 19:21:43 +00:00
Peter Schlaile
6cbc3daf34 == FFMPEG ==
Fixes [#7475] no video as background 
libswscale sets the alpha channel to 0 by default... grmbl.
Added a workaround. Big endian users please complain, if it doesn't work.
2007-12-23 18:44:32 +00:00
Peter Schlaile
690d7a85bd == Playback (peach request) ==
Correct playback frames per second when "Play" is pressed. (Play spawns a new instance of blender, it could pass an argument that sets the frames per second)

(double credit :)
2007-12-23 17:27:06 +00:00