Commit Graph

11316 Commits

Author SHA1 Message Date
Daniel Genrich
a9c36825aa svn merge -r 12937:13095 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-01-02 14:36:46 +00:00
Daniel Genrich
5b9a06e041 Pre merge commit, only added debug output so far 2008-01-02 13:51:44 +00:00
Peter Schlaile
fb3ed9e0a5 == Sequencer ==
Added some additional NULL-checks. (se->ibuf can be null, shame on me :)
2008-01-01 18:38:41 +00:00
Campbell Barton
9db2035e36 while trying to debug memory leaks, extended MEM_printmemlist to print a python dict and some lines at the end to format it in a useful way when run as a python script. 2008-01-01 16:14:08 +00:00
Ton Roosendaal
65f1999435 Bugfix #8032
The warning i've coded 1.5 year ago, to warn when a .blend was written
by newer executable, failed on the .B.blend load case... UI not property
initialized then.

This at least fixes the crash, a menu won't pop up correctly though...
luckily the warning works for regular load or ctrl-x
2008-01-01 14:13:37 +00:00
Peter Schlaile
3ef896a945 == Sequencer ==
Attention! Rather large sequencer rewrite:

* Implemented layer blending using implicit effects. (works like layers 
  in "The Gimp" or Photoshop.)
* Fixed Space-Bar start-stop in preview windows.
  You can start playback using spacebar within a preview-window and it _works_!
* Fixed Flip Y (didn't work for float)
* Fixed premul (didn't work for float)
* Added IPOs to _all_ tracks. In blend-mode REPLACE it drives the 
  "mul"-parameter in all other blend modes it drives the effect.
* you can meta single tracks.
* moved "mute track" from "M" to "Shift-M"
* added "Shift-L" for "lock track"
* changed inner workings for Metas. Now all ImBufs have to use the
  reference counting mechanism. (Only interesting for coders :)

!!! Really important change, that affects current files!

Since you can mute tracks and now there is real layer blending capabilities
in place, I changed the silly behaviour that chose the output track.

Old behaviour: if we have an effect track visible, use the uppermost effect
track. If there is _no_ effect track visible, use the lowest input track.

New behaviour: always use the uppermost track. With blend modes active: 
work our way down starting from the uppermost track to the first 
"replace"-mode track. This is the way the gimp, photoshop, basically _all_
other applications work...

So if this change ruins your day: please try to fix your files using
"mute". If this doesn't work out, I can still restore the old behaviour,
but I really hope, that this is _not_ necessary!

Rational: most people won't get affected by this change, since you can't
really do anything usefull with the (old) sequencer without at least one 
effect track and then you are on the safe side...
2008-01-01 11:44:42 +00:00
Campbell Barton
0a62df356d find external files wasnt finding the biggest screen area for the file selector,
other minor changes. renamed "Dump Screen" to "Screenshot" in the file menu.
2008-01-01 02:20:13 +00:00
Janne Karhu
d5e491c3ef Recoded particles initial rotations to allow much more flexible settings. 2008-01-01 01:00:05 +00:00
Campbell Barton
b3e5f6b451 more tooltip changes 2008-01-01 00:56:22 +00:00
Campbell Barton
8208d5d0be Fix for check missing files, edited some tooltips - (Show key shortcuts for PLAY and RENDER) 2007-12-31 22:18:04 +00:00
Campbell Barton
9afd6135d6 made dupli's respect render and view restrict flags (from the outliner)
This means one group can contain proxy objects to display in the 3d view as well as hi quality models that are only rendered. - again for peach tree's.
2007-12-31 12:47:10 +00:00
Campbell Barton
be207a7e4c disallow editing the path of an indirectly linked library in the outliner 2007-12-31 12:13:30 +00:00
Campbell Barton
5e4d32a9ff Improvements to File->External Data->Make Paths Relative & Make Paths Absolute,
made when testing peach blend files wont have path issues when sent to the renderfarm.
* log failed path conversions
* clean the path so //foo/../foo/ is removed (not sure why but some peach files had this problem)
Also added a function to util.c 
BLI_cleanup_file, same as BLI_cleanup_dir but dosnt add a slash at the end.
2007-12-31 12:03:26 +00:00
Joshua Leung
d00d1f1c89 Routine purge of compiler warnings
* Most were uninitialised vars
* Fixed whitespace in a few places 
* The change I made in rendercore.c -> do_bake_shade() was for an uninitialised var, but I hope it does't cause any rendering errors...
2007-12-30 23:27:35 +00:00
Janne Karhu
71f8eaa04b - Reactor particle target text was hidden in ui by distribution buttons.
- Particle system tab had wrong coloring of buttons.
2007-12-30 21:10:08 +00:00
Ken Hughes
4260b054f4 Python API
----------
Fix warning about implicit declaration of function ‘set_mipmap’.
2007-12-30 16:47:38 +00:00
Ken Hughes
65164a9e41 Python API
----------
tex->image attribute setter needed call to BKE_image_signal(), otherwise
image would not appear when render.
2007-12-30 16:41:31 +00:00
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