Commit Graph

2994 Commits

Author SHA1 Message Date
Joshua Leung
386e97f73a Purging compiler warnings 2010-03-26 03:10:58 +00:00
Joshua Leung
3c872daa59 4 Devs in Agreement - End of the Road for Old Track
This commit removes the Old Track method (used to be found under Object -> Animation -> Track), with all existing instances of this being converted to Track To Constraints. In fact, while performing this removal, I found that this was supposed to have happened in version 2.27 already, but for some reason the options were left in, and this function managed to survive for a further decade.

I've left the tracking axes around still, since it seems some curve tools still use that. However, that usage should probably get faded out in future too?


Misc notes:
* Fixed compiling error with constaints from harkyman's Maintain Volume patch. 
* Subversion of 2.52 now bumped up to .2
2010-03-26 02:57:49 +00:00
Matt Ebb
fda6082c68 Fix for ben dansie, incorrect gamma with render baking.
Linear/gamma issues weren't really considered in baking yet.
2010-03-26 01:31:43 +00:00
Brecht Van Lommel
587a1f806c fix for incorrect args, before pyapi fixes these were ignored.
(commit 27723 by Campbell from render25 branch)
2010-03-25 13:53:24 +00:00
Joshua Leung
535bce8cf1 Adding menu entries for the new hotkeys (change keying set) 2010-03-25 11:42:02 +00:00
Matt Ebb
33f880e866 Restored Fluid Sim baking
This commit restores fluid sim baking functionality in 2.5, it's been on the todo for
a while, and was previously almost completely non-functional. The old 
code was quite complicated and specific to the 2.4 animation system, so I've 
pretty much rewritten most of it.

This includes:
* Animated variables work again - just key them in the UI. Non-animateable values
should be already set non-animateable in RNA, hopefully I got them all.

Available are: Domain Gravity / Domain Viscosity / Object loc/rot/scale / 
Object initial velocity / Deforming meshes / Fluid control Attract strength / 
Fluid control Attract radius / Fluid control Velocity strength / 
Fluid control Velocity radius / Object Active status (checkbox next to fluid type)

The Domain time scale is still not yet implemented.

* Fluid sim now use global scene units data by default - when enabled, the 
scene's global gravity value is used and when units are set (metric/imperial)
the simulation real world size is taken from the object's actual measurements.

* The baking process is now done in the background, using the nifty threaded
Jobs system. It's non-blocking and your domain object will show the simulated
fluid as it becomes available for that frame.

A nice extra thing for the future would be to improve the visualisation of the 
object's state while baking, and also the jobs system/ui could do with some
touchups - currently it has to share a bit from the 'render' job, and appears as
'Render' in the header. Progress bars for jobs in the header would be great too.
2010-03-25 06:27:25 +00:00
Campbell Barton
6f724c54bc replace exceptions with getattr() fallback 2010-03-24 15:17:11 +00:00
Campbell Barton
b84bc45c7f fix for keying set rna path attribute and object select menu incorrect args to UI func. 2010-03-24 15:08:15 +00:00
Joshua Leung
230a2e62f0 Keying Sets - PyAPI consistency issues:
* Added 'id_name' property, which is used as the "typeinfo_name" by Keying Set instances. This is simply the name of the relevant KeyingSetInfo classes.

* Renamed the 'array_index' arg for ks.add_path() to 'index'. Also removed the 'entire array' toggle arg in favour of just passing -1 to index. However, Keying Sets in general still maintain their 'entire array' toggle flags for now, it's just that the API function does conversion between the two.
2010-03-24 12:48:03 +00:00
William Reynish
094098fa9d Added Set VIsibility (V key) to Graph Editor menu. 2010-03-24 12:39:51 +00:00
Robert Holcomb
fffb9cb1a2 oops forgot this! 2010-03-23 23:36:24 +00:00
Brecht Van Lommel
cb6d2685bd rna/py-api fix.
C functions and python used different argument order, this relied on mapping non-keyword arguments to 'REQUIRED' arguments but meant that you could not have an optional, non-keyword argument.

next commit will make order of arguments consistant (currently only changed order that rna wrapped).
(commit 27674 by Campbell from render25 branch)
2010-03-23 15:25:33 +00:00
Joshua Leung
4ae515a4e5 Keying Sets: BuiltIn vs Absolute Tweaks
This commit clarifies the somewhat "murky" separation between "builtin" and "absolute" KeyingSets as a result of discussions with Cessen.

* "Builtin" Keying Sets are now just the Keying Sets which in the past have been known as PyKeyingSets or Relative KeyingSets. These are registered from Py Scripts at startup, and will use the context info to determine what data they should be keyframing. These are stored per Blender session, independent of files, since usually these will be coded specific to sets of rigs used at a studio.

* "Absolute" Keying Sets are the ones that you can create from the Scene buttons and/or KKEY or RMB over any property. They specify the exact set of properties which should always get keyframed together. These are stored in the scene. 

In relation to this, I've made it possible to now set one of the builtin Keying Set types as the active Keying Set. 
* For now, this can only be done via the box beside the insert/delete key operator buttons on the TimeLine header (now complete with an recycled icon - HINT TO ICON DESIGNERS, to make this a bit more obvious). Later on I'll commit an operator to set this via a hotkey.
* The "IKEY" menu will only show up when there is no active Keying Set. When there is one, keying will happen silently (with info notice at the top of the screen). Later on, I'll hook this menu up to a hotkey, so that that active Keying Set can be changed without inserting keyframes or clearing active Keying Set...
* By default, there isn't any default Keying Set enabled. IMO, this is probably a good default, though some might like to have LocRotScale instead.
* I'm not terribly impressed with the search menu for the items being SORTED (and of all things, alphabetically!) currently, since this does break muscle-memory with the menu (and jumbles up order of closely related vs not closely related).
* The Scene buttons for KeyingSets still need some changes to fully cope with users setting builtin KeyingSets as active sometimes. Controls which are useless or shouldn't be used when a builtin set is shown are being shown.

Builtin set registrations have been tweaked a bit:
* Renamed "bl_idname" to "bl_label" for consistency with rest of API. Note that this is the identifier used by Blender internally when searching for the KeyingSet, and is also what the user sees.
2010-03-23 11:59:34 +00:00
Janne Karhu
371732154b Fix for child drawing bug reported in the comments of [#21103] Updating bugs in Particle Mode 2010-03-22 19:38:40 +00:00
Janne Karhu
867cad85b7 Fix for [#21103] Updating bugs in Particle Mode 2010-03-22 17:12:08 +00:00
Brecht Van Lommel
30efa59b0d Fix node material properties not showing correct, the code here should not
be removed, because some panels use the parent materials while others use
the nested materials.
2010-03-22 15:50:16 +00:00
Brecht Van Lommel
09b1c681e1 Sculpt Mode Bugfixes:
* #20833: layer brush doesn't work with multires.
* #20946: sculpt mode partially removes parts of the mesh in the viewport.
* #20420: grab brush stops after moving some distance.
* #20906: sculpt grab tool moves in wrong direction.
* #21132 and #21272: undo on object with subdivision surface modifier crashes.
* #21115: subsurf + multires + sculpting + undo causes crash.
* #20683: sculpt + multires apply + undo crash.
* #19094: wrong outline in solid mode.
2010-03-22 11:59:36 +00:00
Campbell Barton
fb9546746e Screw Modifier (old patch was called Lathe)
didnt commit this patch because curves are generally better to create a shape to lathe however now that curves can have modifiers applied to them I think its good to have this.

Added options to offset the lathe so it can work like the screw tool as well.

- optional object for axis which also controls the center point.
- screw offset so rather then just lathing this can work more like the screw tool.
- screw optionally using the object distance along the axis.
- iterations so the screw can be applied multiple times.

tested to work well with curves.
2010-03-22 00:22:52 +00:00
Campbell Barton
247b7249bd [#21682] help() doesn't work in the console
replace pydoc's pager function so the console's input isnt used.
2010-03-21 14:56:26 +00:00
Guillermo S. Romero
42ac4a3e7d Fix syntax for ID keyword. 2010-03-21 01:14:04 +00:00
Campbell Barton
be8c398191 - submit docs now uses the new dialog with an OK button
- submitting operator docs sent them twice.
2010-03-20 19:22:34 +00:00
Campbell Barton
391cc2d004 merge own commits into render branch into trunk since 27560
27562, 27570, 27571, 27574, 27576, 27577, 27579, 27590, 27591, 27594, 27595, 27596, 27599, 27605, 27611, 27612, 27613, 27614, 27623
2010-03-20 16:41:01 +00:00
Daniel Salazar
504745c399 Operator name improvements in select menu 2010-03-20 05:14:22 +00:00
Daniel Salazar
d50876f8d5 Adding Non Manifold to select menu in edit mode for vertex and/or edge
select mode
2010-03-19 06:57:55 +00:00
Matt Ebb
045d33dae0 Fixed a crash switching to brush texture nodes
Also removed some python code to check for node materials within the material and texture properties. It seems to go fine without it, and this should be handled by context instead.
2010-03-17 22:54:55 +00:00
Brecht Van Lommel
634b750cbb Sound bugfixes:
* sound file path was not displayed in sequencer panel.
* sound strip with relative paths would stop working after undo.
(commit 27575 by Brecht from render25 branch)
2010-03-17 21:38:53 +00:00
Matt Ebb
1d4b932145 Fix [#21553] Re-Projection just opening the image editor but not the image.
Campbell please check/beautify if you like, but it works properly on OS X, either
opening Preview with the 'open' command or Photoshop, when the path is set 
in user preferences.
2010-03-17 03:07:37 +00:00
Matt Ebb
3c09e763c1 Fix [#21329] Extrude of single vertex constrained 2010-03-17 00:54:34 +00:00
Matt Ebb
724418f33a Fix [#21114] Graphical cursor displayed in wrong position when switching to local ortho. 2010-03-17 00:05:40 +00:00
Sergey Sharybin
14e29a62dc "Fill deformed" option for 2D curves
Add new option named "Fill deformed". If this option is switched on.
2D curve will be first deformed by modifiers and only then be filled
with faces.
2010-03-16 21:09:53 +00:00
Brecht Van Lommel
4a2efe0822 no need to include the setting names in enum items
(commit 27539 by Campbell from render25 branch)
2010-03-16 18:22:55 +00:00
Brecht Van Lommel
391526c20e option to lock alpha while projection painting.
(commit 27538 by Campbell from render25 branch)
2010-03-16 18:05:53 +00:00
Brecht Van Lommel
abb7a25426 transform marker sync for extend and grab is back.
(commit 27537 by Campbell from render25 branch)
2010-03-16 18:01:22 +00:00
Brecht Van Lommel
47a0967a30 no need to set flat shading for faces manually
(commit 27534 by Campbell from render25 branch)
2010-03-16 17:59:39 +00:00
Brecht Van Lommel
d0c10cd060 draw option to only display what is rendered, used for sequencer, opengl drawing by default. since we use preview renders a lot the empties & armatures can get in the way also.
(commit 27511 by Campbell from render25 branch)
2010-03-16 17:49:31 +00:00
Brecht Van Lommel
ecb35d463b made re-project UI less confusing
(commit 27457 by Campbell from render25 branch)
2010-03-16 17:45:01 +00:00
Brecht Van Lommel
056972a97f minor changes to rna names for consistancy
(commit 27445 by Campbell from render25 branch)
2010-03-16 17:42:58 +00:00
Brecht Van Lommel
5c9c50e13b change the scene opengl sequence rendering to be a global option with rendering and scrubbing settings.
still need to do a do_versions for this to work right without changing settings.
(commit 27442 by Campbell from render25 branch)
2010-03-16 17:37:34 +00:00
Brecht Van Lommel
63a368ceaa - menu for selecting add scenes for the sequencer.
- update internal 'btempdir' from userprefs on changing and initializing the temp dir.
- add sequence strip operators nolonger require the sequence view to be active (better for automation).
(commit 27434 by Campbell from render25 branch)
2010-03-16 17:23:20 +00:00
Brecht Van Lommel
9a986d194c fix for nasty bug where registering properties would register them in the parent classes SRNA, made for confusing rigify args turning up in add sequencer adding collection.
(commit 27433 by Campbell from render25 branch)
2010-03-16 17:20:15 +00:00
Roland Hess
d617294c49 New "Maintain Volume" constraint. When attached to a bone, you specify a "free" axis. Upon scaling, this free axis scales normally, but the constraint forces the other two axes to adjust themselves appropriately so that overall bone volume is maintained. So, setting "Y" as the free axis (the default) creates a bone that automatically squashes and stretches when scaling. Thanks to Aligorith, Fweeb, Cessen and others for the feedback. 2010-03-16 12:55:56 +00:00
Joshua Leung
1cf95d2494 Keying Set Fixes:
* 'Export Keying Set' operator works again - a change in the previous commit broke the created code
* Relative Keying Sets don't get their paths shown 
* Keying Set paths show options for inserting keyframes too now

---

Another attempt at fixing compile troubles, and removed some commented out + obsolete stuff.
2010-03-16 10:18:19 +00:00
Joshua Leung
ea4a987fd4 == Massive Keying Sets Recode ==
After a few days of wrong turns and learning the finer points of RNA-type-subclassing the hard way, this commit finally presents a refactored version of the Keying Sets system (now version 2) based on some requirements from Cessen.

For a more thorough discussion of this commit, see 
http://sites.google.com/site/aligorith/keyingsets_2.pdf?attredirects=0&d=1

------

The main highlight of this refactor is that relative Keying Sets have now been recoded so that Python callbacks are run to generate the Keying Set's list of paths everytime the Keying Set is used (to insert or delete keyframes), allowing complex heuristics to be used to determine whether a property gets keyframed based on the current context. These checks may include checking on selection status of related entities, or transform locks.

Built-In KeyingSets have also been recoded, and moved from C and out into Python. These are now coded as Relative Keying Sets, and can to some extent serve as basis for adding new relative Keying Sets. However, these have mostly been coded in a slightly 'modular' way which may be confusing for those not so familiar with Python in general. A usable template will be added soon for more general usage.

Keyframing settings (i.e. 'visual', 'needed') can now be specified on a per-path basis now, which is especially useful for Absolute Keying Sets, where control over this is often beneficial.

Most of the places where Auto-Keyframing is performed have been tidied up for consistency. I'm sure quite a few issues still exist there, but these I'll clean up over the next few days.
2010-03-16 06:18:49 +00:00
Matt Ebb
604a2b1a18 Play Back Rendered Animation operator was left out of Screen->Render operator name change 2010-03-16 05:04:56 +00:00
Campbell Barton
f8a4683b72 pep8 warnings 2010-03-14 23:26:17 +00:00
Campbell Barton
f3001c98a0 more addon UI cleanup 2010-03-14 23:19:44 +00:00
Campbell Barton
149fe90a08 cleanup for addon python internals, fix filtering bug. 2010-03-14 20:07:15 +00:00
Campbell Barton
d8d92b5d93 user preference to disable the splash screen 2010-03-14 18:08:12 +00:00
Thomas Dinges
891301c3a2 Addons:
Some code changes:

* Every Add-On now needs a dictionary with several infos, which are then displayed in the Blender UI and/or are used internally. 

Example:
bl_addon_info = {'name': 'Measure panel',
                'author': 'Buerbaum Martin (Pontiac)',
                'version': '0.6.3',
                'blender': '2.5.2',
                'location': 'View3D > Properties > Measure',
                'url': 'http://wiki.blender.org/index.php/Extensions:2.5/Py/Scripts/Panel_Measure',
                'category' : 'UI'}

Unfinished/Not working yet
* The 'blender' tag is compared with the internal version number, it raises an error if the add-on was written for a newer Blender version. 
* The 'category' tag will be added to the filter, so the add-ons can be searched/filtered.
2010-03-14 17:32:35 +00:00
Thomas Dinges
b89428ec4d Fixing a part of [#21516]. Curve preset menu doesn't appear to be a menu.
Converted to Operator Buttons. Fits well into the toolbar, lets hope, we won't get more presets. ;)
2010-03-14 13:07:13 +00:00