Commit Graph

25562 Commits

Author SHA1 Message Date
Joshua Leung
2a85eff40c Bugfixes:
* After changing driver target settings, the driver F-Curves now have
their "disabled" flags cleared, so that they will be updated
immediately instead of needing a manual "Update Dependencies" flush
* Little comment tweak to appease my text editor
2011-06-30 04:38:27 +00:00
Joshua Leung
97e4681217 Some tweaks to naming of channels in animation editors - thanks Matt
* F-Curves no longer show the name of the datablock of the property
they affect if this is an ID-block. For example, transform curves for
a cube won't get the "... (Cube)" suffix anymore. In these cases, it's
relatively clear that these belong to the parent datablock, so doing
this should be fine (and reduces clutter).

However, for non-id data (i.e. subsurf modifier settings) or bones,
this info still gets shown. In these cases, there is some ambiguity.

* "ActiveAct: <...>" is no longer shown for NLA action channels (i.e.
just the name of the action gets shown). This should make it easier to
see at a glance what action is being used.
2011-06-30 01:07:03 +00:00
Joshua Leung
2710c567b9 Animation Editors - Small Visual Tweaks for Usability
== Datablock filters in the headers are now hidden by default ==
This has been done because users were generally not frequently
toggling these, so quick access vs screen-estate cost wasn't really
worth it to have these always showing and taking up space on the
header.

Usage notes:
- To show these again, click on the "Filter more..." toggle.
- The "Filter more..." button DOES NOT affect whether those filters
apply.

Design notes:
- I tried many other button/icon combinations, but those were either
too space-hogging, vague, or had wrong button order.
- I also tried putting a box around these, but there was too much
padding.
- The ordering of the filters has also been modified a bit so that the
group/fcurve-name filters occur earlier in the list, given that
they're used more frequently

== Graph Editor - Use Fancy Drawing ==
Renamed this option to "Use High Quality Drawing" as suggested by
Matt. "Fancy" isn't really descriptive enough.

== Icons for Mode Dropdowns ==
The mode dropdowns in the DopeSheet and Graph Editors now have icons.
- These were important enough (compared to the auto-snap mode) that
some visual decoration was perhaps warranted.
- It makes it easier to see at a glance what mode the view is in

Icon choices:
- In some cases, the icons seem like quite a natural fit IMO (i.e.
outliner<->dopesheet, key<->shapekey editor, grease pencil, fcurve
editor)
- Action Editor uses an "object" icon to indicate that this is object-
level only for now (though I hope to find a way to address this
soon/later). This will be kept like this until then.
- There isn't any icon for drivers, so after trying a few
alternatives, I settled on area-link icon, since it ties together two
entities using some link.
2011-06-29 13:00:19 +00:00
Joshua Leung
2f10ded896 Compiler warning fixes 2011-06-29 05:07:12 +00:00
Joshua Leung
2f60a5030f Actions can now be made single-user from the Outliner
* Use the same method as from unlinking actions to do this.
* Split off the make single-user code used for the ID-browser into a
function in blenkernel which can be used elsewhere. Getting materials
to also work using this method proved to be a bit too tricky (due to
the whole messy ob vs obdata situation), so I haven't done that.
2011-06-29 04:34:20 +00:00
Mitchell Stokes
b85e0c3e85 BGE Animations: Moving the BL_Action::IsDone() implementation from the header file to the source file. 2011-06-29 02:45:08 +00:00
Mitchell Stokes
3afe0e9c88 BGE Animations: Beginning work on layer blending. Blending armature actions works, but needs more testing. Also, currently the mode is forced to ADD and the weight to 1. 2011-06-29 02:42:46 +00:00
Mitchell Stokes
d122f24c1a BGE Animations: Fixing a bug with priority and non continuous animations. 2011-06-29 01:53:17 +00:00
Mitchell Stokes
de3c95a09c BGE Animations: Adding blendin for Shape Actions. 2011-06-29 01:05:12 +00:00
Sukhitha Prabhath Jayathilake
caef67eb92 Set Edit bone roll on Armature Import.
+ Light->Color Sid for testing.
2011-06-28 19:30:00 +00:00
Joshua Leung
0b41c479e4 Action-Management from Outliner - Unlinking Actions
It is now possible to use the Outliner for managing the active action
of an ID-block (provided that it appears in the Outliner), which
should be a bit better than having to go through the NLA Editor.

So far, this only allowing unlinking actions, using some existing
operators. To use:
1) Navigate through the Outliner tree to find the
Object/Material/Lamp/etc. that the animation belongs to. (NOTE: this
doesn't work in Datablocks mode, but should in the normal "All Scenes"
and related modes)
2) Expand the "Animation" entry below this
3) Right-click on the Action entry below this, and select "Unlink"
from the RMB menu

In the process, I've fixed problems with some data-blocks not showing
their animation data in Outliner.
2011-06-28 11:21:12 +00:00
Joshua Leung
c4e28f999b Outliner Bugfixes:
* Mesh Animation-Data was not shown. Other data types would get this
shown.

* Added attempted fix for the problem where when you try to expand the
last item in a RNA list or so, you often end up expanding the first
item (and then have to close and try again, at which point the expand
works as you expected the first time round). More testing needed, but
seems to work better already
2011-06-28 05:17:17 +00:00
Joshua Leung
661c55b78a Refactoring code for filtering actions
- This is still quite convoluted unfortunately...
- I can't quite figure out what a bug note I left in the code was
about anymore. Removed.
2011-06-28 05:02:00 +00:00
Joshua Leung
26b7d513f1 Small bug fixes:
* Removing the last of the owner/ownertype stuff. The bulk of this
stuff was removed in Part3 of the refactor, but it seems I forgot to
actually remove these struct members at the end of that.
* Texture datablocks without animdata aren't skipped immediately
anymore. This could lead to texture nodetrees on animdata-less
textures getting skipped.
2011-06-27 13:04:21 +00:00
Joshua Leung
489ca86b59 Texture Nodes AnimEdit support 2011-06-27 04:46:03 +00:00
Joshua Leung
fd3c5bef7e Bugfix: Selecting nodes now updates animation editors
Noticed while testing the material nodes commit
2011-06-27 04:24:59 +00:00
Joshua Leung
b6bc47eb09 AnimChannelFiltering - Material Nodes support
Animation for Material nodes is now shown in Animation Editors :)
2011-06-27 03:54:33 +00:00
Sukhitha Prabhath Jayathilake
87f242fab0 set_pose function completed. Algorithms to be checked.
(Still not the desired results )
2011-06-26 18:56:06 +00:00
Sukhitha Prabhath Jayathilake
12e5d69af0 pose channel -> pose matrix import ( in progress ) 2011-06-26 15:35:02 +00:00
Joshua Leung
10d775df3d AnimChannels Filtering Refactor - Part 4
This commit is aimed at cleaning up the filtering code by changing the
filtering idiom/pattern used. While the old code used a "check then
do" approach, the new code does a "grab then assimilate".

The main benefits are that:
* the code duplication that used to exist has now been removed, making
it easier to add new channel types for data
* a recursive "peeking" ability now means that the old problems with
data existing deep in the tree (i.e. figuring out whether a channel
should be shown based on whether it will have any descendents) should
now work much better than before.

In the process, I've found and fixed a few previously unnoticed bugs
with how some channels were constructed, so hopefully things work a
bit better now.

TODO's:
* Action-Group filtering stuff hasn't been refactored yet. This was
causing some grief in the past, so I still need to check this
carefully.
* Material Nodes support (missing in trunk) should be easy to slot in
now :)
2011-06-26 14:50:19 +00:00
Sukhitha Prabhath Jayathilake
c863cdcaf3 Fixed issues with unit conversion and animation channels. 2011-06-25 07:23:23 +00:00
Mitchell Stokes
a165ad251e BGE Animations: Removing no longer used code and variables. 2011-06-24 00:31:13 +00:00
Mitchell Stokes
f969b813a4 BGE Animations: Making BL_Action::SetFrame() not so dependent on timing. This should smooth out things like setActionFrame(). 2011-06-23 23:19:39 +00:00
Mitchell Stokes
12ca476b8b BGE Animations: For KX_GameObject.setActionFrame(layer, frame), frame should be a float, not a short. 2011-06-23 23:18:53 +00:00
Mitchell Stokes
ea47125f16 BGE Animations: Exposing KX_GameObject's GetActionFrame() and SetActionFrame() to Python. KX_GameObject.setActionFrame() seems to still have some issues, which I suspect to be a timing thing. I may need to find a better way to set the local time. 2011-06-23 22:44:24 +00:00
Mitchell Stokes
7996d04474 BGE Animations: Shape Action Actuators are now converted to Action Actuators and new Shape Action Actuators cannot be created. 2011-06-23 22:23:46 +00:00
Mitchell Stokes
f1a2d46aa0 BGE Animations: Adding the concept of priority back. Priority is handled on a per layer basis. 2011-06-23 22:12:49 +00:00
Mitchell Stokes
0fbca841ef BGE Animations: Making the play modes for the Acton Actuator behave more like they have in the past. The only one that still needs work now is Flipper. Property, Loop End, Loop Stop, Play, and Ping Pong should all now be behaving as they used to. 2011-06-23 22:00:54 +00:00
Mitchell Stokes
545bf50e1d BGE Animations: Adding shape actions to BL_Action. This means Shape Actions now work through the Action actuator. I still need to handle blendin for shape actions though. 2011-06-23 19:49:53 +00:00
Mitchell Stokes
8d179ca920 BGE Animations: BL_Action now creates a PointerRNA only when constructed instead of on each Update() call. 2011-06-23 19:20:28 +00:00
Mitchell Stokes
2d2aa95227 BGE Animations: Making shape actions work again:
* BL_DeformableGameObject is no longer responsible for handling keys, BL_ShapeDeformer is
  * BL_ShapeDeformer also creates a copy of the key on construction and puts it back on the mesh when destructed. This avoids us permanently modifying Blender data.
  * I'm not too fond of clearing out the key every frame, but this works and I can't think of another alternative at the moment (something may be possible with some key juggling)
2011-06-23 19:09:09 +00:00
Joerg Mueller
413bc87e4f Merge with trunk r37757. 2011-06-23 17:30:56 +00:00
Campbell Barton
99253abef8 allow building with ffmpeg but not aud 2011-06-23 16:10:48 +00:00
Campbell Barton
bb3742fe91 correction to recent commit & made ffmpeg includes only add when enabled. 2011-06-23 15:58:41 +00:00
Campbell Barton
2023db70a8 cmake option to build without an audio library. 2011-06-23 09:27:56 +00:00
Campbell Barton
9c2aa3d0ff fix for function before definition in own recent commit. 2011-06-23 07:50:28 +00:00
Joerg Mueller
cc246eaca7 3D Audio GSoC:
- Fixes for MSVC compiling.
- Fix for ffmpeg audio export with timebase, which fixes vorbis encoding (the only codec using this).
2011-06-23 07:16:06 +00:00
Joerg Mueller
2afa7e4944 Merge with trunk r 37746. 2011-06-23 07:14:37 +00:00
Campbell Barton
53bf66a579 checks in rna range functions that the max value cant be less than the min.
also fix for invalid rage for FILE_OT_filenum.
2011-06-23 06:13:21 +00:00
Campbell Barton
f511409697 fix [#27726] Driven properties not checked for legal UI bounds
The rna set function clamps to the property range however properties with range functions were ignored when set by python or the animation system.

Now call the range function for ints and floats when setting.
2011-06-23 05:58:44 +00:00
Joshua Leung
5021dd3476 Bugfixes for recent commits:
* Insert Key on Selected Channels in Action Editor was broken
* Transform/Select All tools in Action Editor were broken as result of
filtering changes.
* Set Visibility operator, when used from Graph Editor now does
similar things to the TabKey lock/unlock operator with regards to the
flags it uses for filtering
2011-06-22 13:30:59 +00:00
Joshua Leung
c48e146738 Bugfix [#21276] The Tab key is not working in the Graph Editor when
the list of animated curves is closed

At long last, this old bludger can be put out to pasture. I figured it
would involve some of the visibility-filtering stuff I added, but this
required a bit extra effort than anticipated.
2011-06-22 12:54:26 +00:00
Joshua Leung
ab2026bf42 Animation Channel Filtering Refactor - Part 3 (Visibility Flag Split)
* This (big) commit is aimed at cleaning up the filtering flags used
by the animation channel filtering code. The list of filtering flags
has been growing a bit "organically" since it's humble origins for use
in the Action Editor some 3 years (IIRC) ago now during a weekend
hackathon. Obviously, some things have ended up tacked on, while
others have been the product of other flag options. Nevertheless, it
was time for a bit of a spring clean!

* Most notably, one area where the system outgrown its original design
for the Action Editor was in terms of the "visibility" filtering flag
it was using. While in the Action Editor the concept of what channels
to include was strictly dictated by whether the channel hierarchy
showed it, in the Graph Editor this is not always the case. In other
words, there was a difference between the data the channels
represented being visible and the channels for that data being visible
in the hierarchy.

Long story short: this lead to bug report [#27076] (and many like it),
where if you selected an F-Curve, then collapsed the Group it was in,
then even after selecting another F-Curve in another Group, the
original F-Curve's properties would still be shown in the Properties
Region. The good news is that this commit fixes this issue right away!

* More good news will follow, as I start checking on the flag usage of
other tools, but I'm committing this first so that we have a stable
reference (of code similar to the old buggy stuff) on which we can
fall back to later to find bugs (should they pop up).

Anyways, back to the trenches!
2011-06-22 11:41:26 +00:00
Campbell Barton
1309f17103 cmake was installing .bfont.ttf in ~/.blender/VER/config, use ~/.blender/VER instead (as with scons) 2011-06-22 08:43:01 +00:00
Joerg Mueller
11c0ee5c76 Merged with trunk r37717. 2011-06-21 21:10:36 +00:00
Joerg Mueller
2d3d025e8c 3D Audio GSoC:
- Sequencer dynamics: Now it's possible to change the output channels and the resampling quality also increased (previously maximum quality was 44,1 kHz)
- Changed two buffers to use ffmpeg allocation, not sure if that helps somehow.
2011-06-21 20:39:41 +00:00
Joerg Mueller
c89b4e4b66 3D Audio GSoC:
- Implemented a nice rechanneling solution with unofficial speaker arrangement standards similar to what OpenAL soft has
- Renamend AUD_Channel in the C API to AUD_Handle
- Removed the unlogical 7.2 speaker configuration, that's a hardware only config
2011-06-21 20:24:40 +00:00
Joerg Mueller
044887b5a4 3D Audio GSoC:
- Created Handle classes
- Changed Reference counting completely
- Fixing some streaming bugs
- Completely disabled OpenAL Buffered Factories (they were unused anyway)
2011-06-21 20:21:43 +00:00
Joerg Mueller
7ba4362c72 3D Audio GSoC:
Memory bug fix.
2011-06-21 20:14:07 +00:00
Campbell Barton
eaae38551f pep8 compliance 2011-06-21 17:17:51 +00:00