Commit Graph

1037 Commits

Author SHA1 Message Date
Chris Want
5d0a207ecb Patch from GSR that a) fixes a whole bunch of GPL/BL license
blocks that were previously missed; and b) greatly increase my
ohloh stats!
2008-04-16 22:40:48 +00:00
Campbell Barton
0346ed80bd added a E as a key shortcut to IPO Extend Mode 2008-04-15 14:34:57 +00:00
Brecht Van Lommel
1fe5302cce Point Cache Refactoring
=======================

Caching and Baking:
- The point cache is now cleared on DAG_object_flush_update(), and not cleared for time dependency graph updates.
- There is now a Bake button instead of Protect. Also cache start and end frames were added to softbody and particles.
- The cloth autoprotect feature was removed.
- The Ctrl+B menu now also bakes cloth and particles next to softbody and fluids. Additionally there are now frree bake and free cache menu entries.
- The point cache api has been changed. There is now a PTCacheID struct for each point cache type that can be filled and then used to call the point cache functions.
- PointCache struct was added to DNA and is automatically allocated for each physics type.
- Soft body now supports Bake Editing just like cloth.
- Tried to make the systems deal consistently with time ipo's and offsets. Still not sure it all works correct, but too complicated to solve completely now.

Library Linking:
- Added some more warnings to prevent editing settings on library linked objects.
- Linked objects now read from the cache located next to the original library file, and never write to it. This restores old behavior for softbodies. For local simulation the mesh and not the object should be linked.
- Dupligroups and proxies can't create local point caches at the moment, how to implement that I'm not sure. We probably need a proxy point cache for that to work (ugh).

Physics UI:
- Renamed deflection panel to collision for consistency and reorganized the buttons. Also removed some softbody collision buttons from the softbody panel that were duplicated in this panel for cloth.
- Tweaked field panel buttons to not jump around when changing options.
- Tabbing e.g. Soft Body Collision into the Soft Body panel, it now only shows Collision to make the panel names readable.
- I tried to make enabled/disabling physics more consistent, since all three system did things different. Now the two modifier buttons to enable the modifier for the viewport and rendering are also duplicated in the physics panels. Toggling the Soft Body and Cloth buttons now both remove their modifiers.
- Fixed modifier error drawing glitch.

Particles:
- Particles are now recalculated more often than before. Previously it did partial updates based on the changes, but that doesn't work well with DAG_object_flush_update() ..
- Fixed memory leak loading keyed particle system. Now keys are not written to file anymore but always created after loading.
- Make particle threads work with autothreads.

Continue Physics:
- The timeline play now has a Continue Physics option in the playback menu, which keeps the simulations going without writing them to the cache.
- This doesn't always work that well, some changes are not immediately updated, but this can be improved later. Still it's fun to get a feel for the physics.

Todo:
- Point cache can get out of sync with and undo and changing a file without saving it.
- Change the point cache file format to store a version (so old point cache files can be either converted or at least ignored), and to do correct endian conversion.
- Menu item and/or buttons for Ctrl+B.
- A system("rm ..") was changed to remove() since the former is very slow for clearing point caches. These system() calls were already giving trouble in a bug in the tracker, but really most use of this system("") should be changed and tested.
- The Soft Body Collision and Clot Collision panel titles don't mention there's point cache settings there too, doing that makes them unreadable with the default panel setup.. but may need to make the names longer anyway.
2008-04-10 11:39:20 +00:00
Martin Poirier
c3905009c4 No need for unions in transform code.
Unneeded size optimisation.

There's much better way to tackle this if it really is a problem.
2008-04-04 22:21:24 +00:00
Campbell Barton
e8e1007386 moved some duplicate lines into their own function 2008-04-04 15:22:19 +00:00
Campbell Barton
6b6e5eb4c9 Restore bezier handles to their original flag if the transform is canceled, for IPO's and curve edit mode.
Also retopo was running of curve transform was canceled.
2008-04-04 15:06:50 +00:00
Janne Karhu
49c65433cc Fix for bug: [#8117] Particles with fluid broken
-Handling of fluid particles was not coded at all
-Now things should work properly, but as fluid particles are not very familiar to me I'd appreciate some thorough testing
2008-04-02 17:48:46 +00:00
Kent Mein
b73ba9c181 This commit reverts the #include <mesa/glu.h>
stuff used for peach to the standard <GL/glu.h>
the mesa stuff was needed for the machines for peach but its
not the stanard location of the headers, now that its not
needed were switching it back.

Kent
2008-04-02 15:03:03 +00:00
Campbell Barton
82e816eb1a added a sloppy option for getting the active face, which returns the last selected if none is active, made the uv calculation aspect correction use the active faces image rather then the last used image viewports. 2008-04-01 13:35:52 +00:00
Joshua Leung
5b73d96fd5 == Armature Tools - Separate (not yet functional) ==
Initial commit of Separate tool for Armatures. Currently, the functionality is hidden behind a temporary patch, as there are still issues to be worked out (crashes under certain conditions and a re-linking issue). It may remain like this for the release if I can't get it to work correctly.

Note:
- Hotkey for separate is Ctrl-Shift-P (it's a bit clumsy, and isn't consistent with P for separate for meshes, but Select Parent(s) is better as P)
2008-03-31 03:40:47 +00:00
Joshua Leung
bc518579a6 Fixed compiler warnings. (unused vars) 2008-03-27 05:12:14 +00:00
Brecht Van Lommel
972b0a5218 Fix for bug #8713: edge loop delete did an undo push too much. 2008-03-26 16:46:04 +00:00
Campbell Barton
4197e37200 made editmode face copy menu appier with when there is no active face (without options that required an active face)
active face drawing didnt always work since it used the last selected element for drawing.
moved stipple into glutil.c rather then using 128 bytes in the stack for each stipple draw.
2008-03-26 16:06:25 +00:00
Campbell Barton
5fa576a89f UV Unwrap (lscm, project from view, cube etc) now default to correcting for the active images aspect ratio.
This is now default but can be disabled in the UV Calculation panel. At the moment its called "Image Aspect" but another name could be better.
2008-03-26 14:50:29 +00:00
Peter Schlaile
8d2a0a566f == Sequencer ==
A lot of fixes for anim_startofs / anim_endofs:
* crashed when striplen was 0 and startstill / endstill still in use
* made it work for Audio (HD and RAM)
* made it work for Image Sequences
* added a new cutting tool, that uses anim_startofs / endofs instead of
  startofs / endofs. This is now the default and called "hard cut"
* moved old cutting method to "Shift-K" and renamed it "soft cut"
2008-03-24 17:35:01 +00:00
Campbell Barton
dbd64ac751 uv stretch display respect image aspect ratio,
tooltip correction (bug #8660)
ghostwinlay.c was missing string.h include
2008-03-24 09:00:39 +00:00
Peter Schlaile
c52695bafe == Sequencer / ImBuf ==
Fixed a long standing bug in IMB_dupImBuf: refcounter should be better 0
within the duplicated ImBuf...

Finally removed this strange STRIPELEM_META mumbo jumbo.

On a way to asset management: made METAs behave like true input strips:
* proxying should work
* input filter options should work (including transform and color balance :)
* IPOs now work in replace mode
2008-03-23 17:56:44 +00:00
Stefan Gartner
4a6d75af27 added support for linux on pa-risc 2008-03-23 12:59:26 +00:00
Joshua Leung
95e781c601 == Action Editor - Preview Range (Ctrl-Alt-P) ==
Quick feature for setting Preview Range in Action Editor: the hotkey Ctrl-Alt-P sets the Preview Range so that it matches the extents of the active action.
2008-03-22 11:06:51 +00:00
Jean-Luc Peurière
32b5138e64 update to trunk r14199 2008-03-21 17:00:40 +00:00
Campbell Barton
107bed0170 shift+b zoom in perspective mode, (apricot feature for better navigation on large maps) 2008-03-20 20:03:13 +00:00
Martin Poirier
6a2e538d98 == Align ==
Use pupmenu menu to select align orientation. Faster workflow than always having to change the current transform orientation beforehand.
2008-03-16 16:00:00 +00:00
Jean-Luc Peurière
a68a7f42b0 resolved conflict state with HEAD r14096
blenderbuttons still bad

not let this compile
2008-03-13 23:54:02 +00:00
Jean-Luc Peurière
526d0bec47 final (??) work on NDOF branch
it is now in a state where it can be safely
merged with trunk.

Note: basic icons were provided but I'm not
an icondesigner and working in a 16x15 grid
is way too small for me, so feel free to 
change them.
2008-03-13 15:40:24 +00:00
Brecht Van Lommel
d73ed401da Added two UV features (Apricot request):
- Alt+click edge loop select.
- Next to Align X/Y, Align Auto which will pick X or Y automatically,
  should give the expected result for nearly all cases.
2008-03-12 19:55:37 +00:00
Martin Poirier
cbfbe53ebe == Align to Transform Orientation ==
New rotation alignement fonction

Rotates objects/Pose bones to match the selected transform orientation.

Can be used to align to view, active object (normal) and custom transform orientations.

Accessible in the Object -> Transform submenu and through the hotkey Ctrl-Alt-A (which was previously a fall through for Apply but only Ctrl-A and Ctrl-Shift-A did anything special).

Can be eventually made to work in edit mode (not too hard).
2008-03-10 00:27:17 +00:00
Joshua Leung
ac750cf7a2 * Numeric input now works better for TimeSlide
* Removed a compiler warning
2008-03-09 03:41:13 +00:00
Joshua Leung
b4e13ae575 Another big purge of warnings. (Main culprits this time were Campbell and Geoffrey):
* no newline at end of file (2-3)
* uninitialised vars (1)
* unused vars (1-2)
* assigning/comparing pointers and ints (numerous)
* etc.
2008-03-07 03:24:23 +00:00
Campbell Barton
08f306c81c Made python scripts save and load in the blend file so you can have the same scripts running when you open a blend file.
Also scripts will re-run on undo rather then closing.

This is done by saving and loading the name of the script or textblock of the 'Script' datablock, connected to the ScriptSpace. This way when there is a name but the script dosnt run.
Blender runs the script or text block if available.
2008-03-06 21:25:15 +00:00
Joshua Leung
b2e6520d6e Action Editor - malefico feature request:
Show Selected Action-Channels hidden in groups. Use the hotkey Shift ~  to do so. The name of this feature needs reviewing...
2008-03-04 11:29:32 +00:00
Campbell Barton
5b54b519c0 Added a feature to the UV editor- Average UV islands, this averages selected UV islands, in proportion to the faces area in 3d space.
Renamed 'Pack Charts' to 'Pack Islands' (according to google, uv islands is a more common term)
2008-03-03 01:44:35 +00:00
Tom Musgrove
f8f6a049bd This commit contains the addition of a greek translation thanks to
Κωστής Καρβουνιάρης
Kostas Gerontis

Also a patch from Markus Schulz that 

adds buttons to the material, light, and world texture panels to make it 
easy to rearrange the textures in the list without having to 
use copy and paste.
2008-03-01 03:56:16 +00:00
Joshua Leung
416f918fb8 Split the add_hook function into two parts (user interaction + actual operations) 2008-03-01 03:45:04 +00:00
Campbell Barton
96247ce19c * Made BLI_join_dirfile() check before adding a slash between dir and file so as not to get /foo///bar.blend
* Pointcache now uses the process id to construct the path for unsaved files. (so 2 or more blender's open wont try to read/write the same pointcache)
* Temp pointcache is cleared when existing blender, added BIF_clear_tempfiles() for this. Should also be usedto clear EXR's in the temp dir (TODO), BIF_clear_tempfiles also needs to be added in more places. (On file load for instace)
2008-02-29 15:50:28 +00:00
Campbell Barton
5665d9333e * Fix for own big, Adding group objects from the outliner didnt check they were externally linked.
* ping "~" in the fileselectors dir will take you to $HOME (non win32)
* Added a file selector for Node output image
2008-02-28 23:14:55 +00:00
Brecht Van Lommel
e601994b15 Fix for bug #8324: J-key render buffer switching had various issues.
One problem was that the previous render buffer was stored in the
render window or image window itself, which means that when closing
it, or switching from one to the other, things didn't work as expected.
Also in the image editor, color sampling the previous render buffer or
saving it didn't work correct.
2008-02-24 19:23:58 +00:00
Peter Schlaile
f59bbef4b3 == Sequencer ==
Fixes a lot of small things:
* zoom in/out in preview is more fine grained (use SHIFT)
* zebra scopes don't try to draw the border and fail
* lock/unlock now locks/unlocks all selected strips
* fix redraw problems of panel on lock/unlock
* buttons-panel is redrawn on translate, so that position information is shown
* added lock / hide to Strip-Menu
* fixed small drawing problems in header

TODO: find a good key for lock / unlock (Shift-L | Alt-Shift-L isn't that nice
      to press...)
2008-02-24 12:12:05 +00:00
Geoffrey Bantle
e03ab146ae -> Bevel tools and Bmesh kernel
The following is a commit of Levi Schooley's bevel code and 
the bmesh library it depends on. The current editmode bevel has 
been replaced with a new per edge bevel function. Vertex beveling is 
also availible.

To set weights for the modifier to use, use the ctrl-shift-e shortcut on either edges 
or vertices.

Recursive beveling is turned of for the time being.
2008-02-23 22:11:16 +00:00
Juho Vepsalainen
206021113d Nodes to be created at the location in which the mouse cursor was initially
This commit changes the way new nodes are created. Previously nodes were created
at the last location of the mouse cursor before creating a new node. After this
commit the nodes are created at the initial location in which the cursor was
before the menu used to add the node was opened.

This makes it possible for the user to predict where the new node appears without
having to move it to desired location like before. There is no option for this as
this behaviour is clearly superior to previous.

Codewise it uses static variables. This is something to fix during 2.50 rewrite.

Thanks to paprmh for contribution!
2008-02-23 10:33:36 +00:00
Brecht Van Lommel
0d9c6ea649 Fix for bug #6769: lattice editmode undo gave corrupt data
if the lattice resolution changed.
2008-02-21 16:57:58 +00:00
Brecht Van Lommel
36c41c96e7 Fix for bug #5986: snap circle too big when far away from the origin
(e.g. 1000 blender units).
2008-02-21 14:28:20 +00:00
Joshua Leung
75d2729fce Following on from the commits yesterday for "Action Channel Settings" quick-toggle tools, bones now have this functionality too.
Use Shift-W to toggle, Ctrl-Shift-W to enable, and Alt-W to disable one of the bone's settings.
2008-02-21 11:14:21 +00:00
Joshua Leung
6862acc1b3 == Action Editor - Channel Tools ==
* Added a new set of related tools for channel editing (Toggle/Enable/Disable Setting). These are activated using the Shift-W, Ctrl-Shift-W, and Alt-W hotkeys. They allow for setting of the given setting on all selected channels (where it will apply).

* Moved + grouped all the channel-related operations in a new "Channels" menu, located between the "Select" and "Markers" menus. This makes more sense than squeezing the functionality at the end of the "Key" menu!
2008-02-20 11:02:32 +00:00
Martin Poirier
83ddab60b7 == Transform Orientations ==
Merge Normal orientation calculations with Custom Orientations, to make it work the same all accross the table:
- One or more faces: use average face normal (first edge of faces define tangent)
- One edge: use edge itself as normal (vertex normals define tangent)
- One vertex: use vertex normal (tangent is perpendicular to normal and z-axis)
- Two vertices => edge orientation
- Two vertices => face orientation

*I tested quite a bit but please report any bugs this might have caused.*

ADDED FILE WARNING: source/blender/src/transform_orientations.c
2008-02-17 22:19:02 +00:00
Campbell Barton
11c926b575 Python api addition PupTreeMenu() - for apricot 2008-02-15 16:08:41 +00:00
Ton Roosendaal
de707a32be Simple but useful compositor feature:
CTRL+click on node will not only select it, but also connect the active
viewer to the top output of the node.
To evaluate: make viewing option to have this as a default on select. 
Could work nice for collapsed nodes.
2008-02-15 15:20:50 +00:00
Joshua Leung
87494c0ad8 == Action Editor - Keyframe Selection (Added tools) ==
* Ctrl-I now swaps the selection status of keyframes/channels depending on where the mouse cursor is located. Ctrl-Shift-I does so for markers.

* (De)selecting channels now clears the 'active' flags too, so there will be no more 'selected' items lingering around even after pressing AKEY
2008-02-15 06:06:08 +00:00
Joshua Leung
3f03fff557 == Shift-G - Select Grouped menu in PoseMode ==
In PoseMode, the Shift-G menu now presents options for selecting bones in the same layer or the same bone-group.
2008-02-14 06:31:40 +00:00
Joshua Leung
5beaeb9f4b == Custom Bone Colours - Per Group Colour-Sets ==
Now it is possible to define a custom colour set per bone group. This allows rigs to look consistent across different computers with different themes. As such, the bone-groups buttons have been reshuffled to present the settings in a better way.

Colour sets are now selected from a menu with descriptive names, instead of using a slider. Choose the 'Custom Set' entry to use a custom set of colours for the active group. The sets of theme colours have been retained, and can be used directly, or as the basis for a new custom colour set (when any one of the colour controls is touched). 

For bone-groups that haven't had any custom colour set used yet, a default 'test' set is used. This uses bright versions of the RGB colours.
2008-02-14 05:00:23 +00:00
Joshua Leung
0f68741217 == Action Editor - Insert Key+ "Active Group" ==
"Insert Key" menu in Action Editor (IKEY) now has a new option: "In Active Group". This only inserts keyframes in the active action group (if available).
2008-02-13 06:43:31 +00:00