Commit Graph

8388 Commits

Author SHA1 Message Date
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
Kent Mein
d1285dc756 This is really two commits but the first one is very small and affects one
file I modified for the other patch.  So I'm being bad and combining them
together.

First one is added -lXi to LLIBS for solaris.  (Makes it so it compiles
again with the tablet stuff added)

Second one is the real commit its an expansion of patch #4458
This adds optional ICONV lining to support international fonts in the
file selector.  Thanks to wisit venita (dripstone) I mostly just cleaned
it up a little and made it optional via defines.

Its currently turned off for all platforms except for solaris on scons.
For scons see your config/(platform).py file look for WITH_BF_ICONV
For the Makefiles look at source/nan_definitions.mk look for WITH_ICONV
(basically you'll want to export WITH_ICONV=true and possibly set some other
stuff)

Let me know if there are any problems.

Kent
--
mein@cs.umn.edu
2006-11-09 15:45:19 +00:00
Ken Hughes
56a12a30c5 Patch #4896, submitted by Juho Vepsäläinen (bebraw):
Allows "Degr" field in Mesh tools accept negative and positive float values
from range [-360, 360].
2006-11-09 14:30:11 +00:00
Jens Ole Wund
c1b05cace9 msvc6 sweeping the lints out off the corners 2006-11-09 13:25:57 +00:00
Ton Roosendaal
7ce7d0e7d3 Bugreport in irc:
The Preview panel in UV window, for compositing, sets a 'crop' flag in the
scene when used. Somehow this flag can hang when you switch screens or
close windows. Or even worse, it crashed on renders.

This commit ensures that the compositor survives and gives error prints.
The real issue, hanging flags on closing windows, has to be solved still.
2006-11-09 12:06:06 +00:00
Ton Roosendaal
afc880bb45 Oops, added the #define in wrong line. Now displace modifier is back! 2006-11-09 10:12:26 +00:00
Joshua Leung
f645e51256 Two minor code cleanups.
* Removed un-needed cases for limit loc/rot/scale constraints from expand_constraints, which caused a few compiler warnings

* Removed an odd character in one of the comments for constraints. (Hopefully there wasn't any specific reason why it had to be there)
2006-11-09 09:01:20 +00:00
Ton Roosendaal
5782a80d70 Bugfix #5044 revisited
Displace modifier crashed when used on Curve, the fix removed the flag
that accepts curve objects, but apparently then a flag to accept meshes
has to be added. (eModifierTypeFlag_AcceptsMesh).

Thanks Michael Crawford for notifying this fix.
2006-11-09 08:48:24 +00:00
Joshua Leung
7f0dc54f61 This commit adds two of my recent animation editing related patches:
#5061 - Ipo/Action 'Cleaning'
#5071 - 'Only Needed' Keyframing Option

====================

* IPO/Action 'Cleaning':
It removes un-necessary keyframes from individual ipo curves.
- In both editors, the hotkey is currently the OKEY.  Also accesable from menus of each editor.
- There is currently a 'threshold' popup. This sets the value that the cleaner uses to determine if two keys have same time/value

There are a few improvements that could still be made, such as:
- There are a few cases that it still doesn't handle yet, such as when un-needed keyframes lie on a linear line (and similiar cases). This shall be improved soon.
- Also, for some reason, after running cleaning while in ipo editor editmode, all but the active curve are hidden.

====================

* 'Only Needed' Keyframing Option:
This patch adds a new keyframing option for objects and bones. It only adds keyframes where they are needed, judging from the surrounding points on that curve.

Notes about this keyframing option:
- Works like the existing 'Avail' option, except it checks if the keyframe
is needed.
- Currently uses hardcoded threshold for determining if same value.

[quote]
/* Cases where keyframes should not be added:
*       1. Keyframe to be added bewteen two keyframes with similar values
*       2. Keyframe to be added between two keyframes with similar times
*       3. Keyframe lies at point that intersects the linear line between two
keyframes
*/
[/unquote]
2006-11-09 08:43:27 +00:00
Joshua Leung
bdadf4fc83 My first commit!
This commit fixes the name of the LocZ number field in n-key panel for pose-mode bones.
2006-11-09 08:09:54 +00:00
Ton Roosendaal
911362841b Feature: Group duplicators now are recursive, so group-duplid can be
grouped and become a new duplicated group, and so on.

IMPORTANT NOTE!
- no check for eternal loops, so I've hardcoded limited it to 5 levels
- no support for animation or deformation/modifiers/constraints

So, only fun for the props and architecture department :)
2006-11-08 21:20:38 +00:00
Brecht Van Lommel
f350836342 While I'm breaking build systems anyway, also removed the two img modules,
they are not used anymore in the new image paint code.
2006-11-08 20:33:28 +00:00
Brecht Van Lommel
011f531359 Modified the way booleans preserve face data, and cleaned up some
duplicate code. Also removed redundant files from the bsp module,
that where replaced by boolop last year, no sense in updating them
for these changes. On the user level things should still work the
same, this is only preparation work.

Not counting the removed files, -1501 lines of code, not too bad :)
2006-11-08 20:14:04 +00:00