Commit Graph

8200 Commits

Author SHA1 Message Date
Joshua Leung
41b84e4ef0 Previous commit (Smooth Ipo) was indeed not too useful. I've
rewritten the code (less code now) so that it is more useful, and
doesn't just duplicate the functionality of another feature.

Now, IPO smooth works only on the selected keyframes in
selected frames. It finds the average value of all the selected
keyframes, and finds the halfway point between each keyframe
value and this average value. Handles are also automatically set
to 'aligned'.
2006-11-13 10:16:07 +00:00
Joshua Leung
6e46d87dd7 == IPO Editor Tools ==
* IPO Curve Smoothing:
This new tool smoothes (i.e. resets the adjusts) the handles on selected
ipo curves in ipo editor. The core code is based upon a python script
that used to do this (author unknown).

- Available from menus
- Hotkey Shift O
- Only available from ipo editor

If the usefulness of this tool is limited (adding bloat), I will consider removing it.
2006-11-13 08:56:02 +00:00
Andrea Weikert
32d49a8dae ==== scons ====
- cleanup for wintab library headers
- properly define BF_WINTAB and BF_WINTAB_INC
2006-11-13 06:40:08 +00:00
Joshua Leung
001fb2c722 Just a few fixes to the indention of some functions (purely cosmetic code changes) 2006-11-13 04:37:42 +00:00
Matt Ebb
fb9f21b614 Set the default material preview type to 'sphere' for newly added materials. 2006-11-13 01:24:46 +00:00
Nicholas Bishop
521815eab2 Removed erroneous switch to the front buffer when reading depth values in sculptmode and retopo. 2006-11-12 21:28:09 +00:00
Erwin Coumans
3a1b7ece40 updating Bullet 2.x with latest changes. The integration + C-API will follow at some stage. 2006-11-12 21:05:10 +00:00
Andrea Weikert
22d97b2e34 - compile fix for msvc 6 which doesn't declare M_PI at all it seems. 2006-11-12 17:23:26 +00:00
Jens Ole Wund
bbfb7e5483 bugfix
crash with duplicated softbodies
in copy_softbody() scratch pointer was not initialized to NULL in copy
did not know that function exists at all
2006-11-12 16:51:29 +00:00
Ton Roosendaal
8e487f3e29 Ooops, previous commit of mine forgot to commit the .h file. 2006-11-12 16:24:59 +00:00
Andrea Weikert
7abf00bbce compile fix for MSVC compiler.
- math.h doesn't include #define M_PI by default (_USE_MATH_DEFINES needs to be defined)
2006-11-12 16:21:16 +00:00
Jens Ole Wund
c6f9720eb6 msvc6 adding DNA_customdata_types.h to project 2006-11-12 16:13:07 +00:00
Ton Roosendaal
caea20a82e Patch #5185, Juho V (bebraw)
Convert menu for Text objects (ALT+C) now has option to directly degrade to
a Mesh.
2006-11-12 13:51:28 +00:00
Ton Roosendaal
af4422bdb2 Patch #5184, Juho V (bebraw)
One liner basically; makes toolbox pop up like in 3d window, if you've
set it to reveil on holding RMB.
2006-11-12 13:28:39 +00:00
Andrea Weikert
fe97147be8 ==== MSVC 7 project files ====
very small cleanup: add DNA_customdata_types.h header
2006-11-12 13:04:04 +00:00
Ton Roosendaal
a56b95c049 Bugfix #5107
Autosmooth didn't copy additional texture coordinates such as sticky
correctly. This was part of the vertex struct in 2.41 and older, but it
became dynamic in 2.42.
2006-11-12 11:41:43 +00:00
Ton Roosendaal
72f620fef3 Bugfix #5207
Silly error in code initialized envmap "Render" struct wrong. It didn't
work for ortho render, so also crashed on previews in ortho 3d window.
2006-11-12 11:03:34 +00:00
Brecht Van Lommel
883f7dd4d5 Missing check for pointer being NULL in last commit, could crash on
entering editmode.
2006-11-12 10:53:30 +00:00
Matt Ebb
20cf5deb46 Some clearer comments on the meaning of the tabletdata struct's variables 2006-11-12 09:52:03 +00:00
Matt Ebb
6f474ccaca Added tablet tilt data collection for GHOST/Win32 - thanks elubie for doing the hard work getting it all set up first! The tilt values still aren't being used anywhere in Blender (yet? :) but at least now the data is there reliably and consistently across platforms. 2006-11-12 09:50:44 +00:00
Ton Roosendaal
fbcb0c1e45 New 'TOG DUAL' button (for locking bone layers) disabled extend-press
with shift key.
2006-11-12 09:26:38 +00:00
Ton Roosendaal
c8a8760c41 Simple & efficient feature request from Campbell;
One of the annoying things in Blender was that the UV Faceselect mode
immediately forced the object to draw 'Textured', mimicing how the game
engine could show it. For modeling and texturing workflow not optimal.

UV FaceSelect mode now draws textured & default lighted, if the view is
set to 'Solid'. Switch view to 'Textured' to see again what the game
engine could draw (which is using real lamps, and the per-face lighted
flag).
2006-11-12 09:14:43 +00:00
Joshua Leung
328e032ab0 == Copy Pose Attributes Menu ==
I've added a few more options for the copy pose attributes menu - Copy:
* Transform Locks
* IK Limits/DOF settings
* Custom Bone Shape
2006-11-12 05:58:59 +00:00
Brecht Van Lommel
e4a1eb4e09 Added custom vertex data support to editmode. Only used for vertex groups
now, others can be added later (sticky, shape keys). Beside one small fix
for knife exact vertex group interpolation, is intended to work the same
as before.

Also fixes bug #5200, related to editmode undo and vertex groups. And
corrects the editmode to faceselect mode selection conversion, that was
broken in a previous commit.
2006-11-11 23:23:15 +00:00
Brecht Van Lommel
8857f4ce86 Patch #5195 by Anders Gudmundson.
On X11, make the table device name check case insensitive.
2006-11-11 22:47:41 +00:00
Peter Schlaile
c1b4132e8d == Sequencer ==
Major sequencer rewrite to add Speed Control effect.
Changes:
- Cleaned up large parts of sequence.c removing a lot of unnecessary code.
  (We first built old seqar array to decide, what is visible, then build
   dependencies with new code, then used old code to iterate through the
   strips and deciding using new code what is used and so forth and so on...)
  Should be much faster now.
- Now we build the strips recursively thereby elemenating the need of a
  seperate dependency calculation.
- Added a Speed-Control effect to change strip speed afterwards.
  (Offers global speed as well as IPO-controlled speed.
   There are several modes to play with:
   - Control by velocity (IPO = velocity where 1.0 is normal speed)
   - Control by frame number (IPO = target frame)
   - IPO-Value can be rescaled to frame-value, to make frame exact matching
     possible. (Matching video tracks to audio tracks with IPOs ;-)

Demo-Blend file is here http://peter.schlaile.de/blender/sequencer/speedcontroltest.blend

Since this was also a Plumiferos request I hope to be mentioned in the
credits ;-)

Enjoy! And please test the new sequencer thoroughly. It is really more like
a rewrite this time.
2006-11-11 22:35:40 +00:00
Chris Want
05c59da48f Fix for bug #4922
The VRML97 exporter was rounding a lot of stuff to three decimal points.
This is silly, since the spec says single-precision floats are used for
most things, which gives about 7 decimal points precision.
2006-11-11 19:12:43 +00:00
Ton Roosendaal
dddc04f0c4 Bugfix #5208
Dupli-group, with armature in PoseMode, made selections not work.
Weird that this wasn't reported before :)
2006-11-11 18:17:53 +00:00
Brecht Van Lommel
c41823cdb6 Compile error fix for last commit, using an undeclared variable. How GCC
allowed this to compile I have no idea.
2006-11-11 17:18:42 +00:00
Ton Roosendaal
f5cff857a5 Tinsy fix for ~ key (set all layers). It as actually doing 21 layers :)
Reported by Matt, via Campbell, thanks!
2006-11-11 17:15:42 +00:00
Ton Roosendaal
feb210f08e Experimental feature, especially for the animation department:
THE OBJECT PROXY

Or simple said; local control of referenced data from libraries.
Having library files with references is a very common studio setup, and
Blender did do quite well in that area. Were it not that for character
setups it was impossible to use still.

This commit will enable a full rig+character to remain in the library,
and still have - under strict control - local access for animation edits.

Full log:
http://www.blender3d.org/cms/Proxy_Objects.824.0.html
2006-11-11 16:45:17 +00:00
Brecht Van Lommel
97f892b86b Added custom face data support in edit mode. The code used to do this is
the CustomData module from the modifier stack rewrite, but with additions
to make it also usable in edit mode. Some of the datatypes from that
module were move to a DNA header file, they are not saved to file now, but
will be soon.

The only code that wasn't abstracted is the uv collapse / merging code. It
is rather complicated, will look into that in the future.

There should be no user level changes.
2006-11-11 16:38:37 +00:00
Jens Ole Wund
9e717b59cb softbody review
1. UI review -> disabeling options when not available .. giving hints why ( even tried to give usefull tooltips )
1.1 give some more user control to the solving process  (mins,maxs).. optional feedback on the console

2. replacing ugly object level 'sumohandle' with SB (private runtime) level/pointer 'scratch'
which holds runtime data like cached collider data and more .. and it's thread save this way :)

3.related no 2.  write a 'private' history of collision objects to ease the 'fast' collider tunneling syndrome'

4. some <clean> optimizations, 3-BSP for self collision,  general AABB checking before ever going to collision details

5. some <dirty>  ( in the sense of do some inacurate physics noone ever will see ) little tricks to make things faster .. ..fuzzy collision situation bypass .. forward collision resolution
2006-11-10 23:09:16 +00:00
Joshua Leung
68a2f29db3 Cleanup of evaluation code for Copy Rotation and Limit Rotation constraints.
Made them use the new the two new math functions I've added in arith.c (in
various patches) - Mat4ToEul and LocEulSizeToMat4 - cutting down on the
amount of code reuse.
2006-11-10 23:00:31 +00:00
Peter Schlaile
35b1719ecc == Sequencer ==
Bugfix for the bugfix: corrected intrr's patch.
2006-11-10 18:29:26 +00:00
Kent Mein
68300b6101 ICONV stuff was defined twice so cleaning it up.
Kent
2006-11-10 18:01:18 +00:00
Kent Mein
14b6fd1209 Tweaks for ICONV stuff in scons.
Kent
2006-11-10 17:59:40 +00:00
Alexander Ewering
ba0d87474c Fix meta strips. Peter, please check if it is OK. It seems you just forgot
this place (it's marked with /* crash */).
2006-11-10 17:34:34 +00:00
Brecht Van Lommel
f314a00be1 Bugfix for image painting crash on windows as reported on bf-committers. 2006-11-10 17:21:46 +00:00
Ton Roosendaal
2a0ef5454d Bugfix #5199
Irregular shadow buffer, for solid OSA case, suffered aliasing. This caused
by optimized storage of shadow factors in 1 pixel (averaged for all sub
samples). That didn't work well really...

Now the code uses same method as for transparent faces, storing results for
each sample.
2006-11-10 14:21:27 +00:00
Ton Roosendaal
ac14a2c2b7 Bugfix #5197
Radiosity tool or render was using an uninitialized variable, causing clip
to work incorrect. (black lines in radiosity).

Error caused by commit in august, after 2.42a release.
2006-11-10 11:54:36 +00:00
Ton Roosendaal
9a14548104 Old feature request: undo system now restores images without reloading.
Was surprisingly easy to add, compiant with file reading and undo code.

Currently only the Image->ibuf gets restored, and its opengl binding, so
for realtime texture it works nicely. Also texture images are not freed
inbetween undo steps

Notes:
- Painting textures will just keep the painted image, there's no undo
  yet for that
- If this works satisfying, I'll extend it to compositing previews

TEST IT WELL PLEASE! :)
2006-11-10 10:17:04 +00:00
Nicholas Bishop
a54bd4993f Fixed display of modifiers in sculpt mode. 2006-11-10 08:18:16 +00:00
Nicholas Bishop
a4112470d7 Fixed bug #5193, crash using multires with sculpt
In fixing, replaced several frees and copys of dverts with the proper
blenkernel functions.
2006-11-10 03:58:04 +00:00
Campbell Barton
daec99c470 new image names were being created with 2 ..'s
added a function to BPyMesh.py to get faces in linked groups (like split by loose parts) - but returns lists of faces only.
2006-11-10 02:23:30 +00:00
Nicholas Bishop
7c6ffecfff Fixed bug #5174, Crash on sculpt mode undo
The fix adds support for storing edge/face/partial visiblity data to the sculpt
mode undo data. (This may also be useful for multires.)
2006-11-10 01:57:06 +00:00
Brecht Van Lommel
740e3233e0 Modified the way face data is preserved in the radiosity module. There
is one user level change: the result is now no longer split up in meshes
of maximum 64k faces, was a workaround for an old limitation.
2006-11-09 23:47:28 +00:00
Peter Schlaile
57a2f7a5b5 == Sequencer ==
This adds support for "generator effect strips", which don't need necessarily
an input strip and my version of Matt Ebb's [ #5035 ] 'Solid Color'
sequence strip.

TODO: With a little bit more tweaking it will be possible to make animated
effect plugins and my still unfinished "Bake"-Strip.

For the 'Solid Color'-Effect, to quote Matt:
This is nice and simple, just provides a solid colour that's set in a colour picker in the properties popup. This is something we've needed for a long time, and I got totally sick of having to make 'black.png' and 'white.png' just to do fades, so I coded this.
2006-11-09 22:23:09 +00:00
Andrea Weikert
708e327b10 ==== MSVC 7 project files ====
boolop and bsplib cleanup
2006-11-09 20:55:13 +00:00
Peter Schlaile
0df60a9ef4 == Sequencer ==
Added enhancements by blendix (Patch #4919: Insert sequence effect between)

It adds the following things:
- You can add a sequence strip afterwards in the middle of an effect chain
  (you have to move strips around before, so that there is "room" for it.
   Blender will ask you then, if you want to add in between or after the
   selected strips)
- In the case you messed it up and want your effect strips to be reassigned in
  a different way, there is the new "R"-key. Just select three arbitrary
  strips and press "R". If you don't create a cycle, those will be connected
  to a new effect chain.
- Fixed freeing of imbufs on changes to properly take into account dependencies.  An example of a simple case that went wrong is one image strip with two
  glow effects, changing the parameters of the first glow strip will not
  result in any updates. Basically only direct dependencies were taken into
  account, which resulted in the image preview not being updated in some cases.
- Let the sequencer detect an active sequence strip if none is defined, to
  get rid of annoying error messages when trying to add an effect to a
  selected sequence strip right after loading a file.
- Delete is less destructive. If you delete somewhere between other strips,
  Blender now tries to relink in a reasonable way.
- The active sequence strip is now displayed with a light instead of a dark
  outline, which makes it easier to spot, and is especially useful for the
  tools using the active sequence strip.
- Ability to view the final result when editing inside meta strip.
  The channel button was modified to also allow negative numbers,
  where -n is n levels up the meta stack. There is probably a nicer way to
  specify this, instead of (ab)using the channel button, but this seems to
  work quite efficient.
- Also a small bugfix: don't crash on loading files from newer versions with
  an unknown effect strip.
2006-11-09 18:58:02 +00:00