Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-05-282.5 - Fixes for animating enum valuesJoshua Leung
Interpolation between keyframes for enum values (and booleans) can only be constant now. TODO: A way to do this for modifiers is still needed.
2009-05-18Graph Editor: Attempts at Improving Curve DrawingJoshua Leung
* Trying a slightly different approach with curve drawing. Now curves aren't drawn darker down the list, as that approach proved to have massive contrast issues all around. However, it's not completely back to the old rainbow style, as the colours are still grouped in 3's and 4's, only that they now use hue offsets... * Unselected curves are now drawn less opaque. However, selected curves still leave some brightness to be desired... * Bugfix - Deselecting keyframes in graph view now deselects the curves too.
2009-05-172.5 - 2 Bugfixes:Joshua Leung
* Long Keyframes get shown again in DopeSheet. Some theme cleanouts cleared the theme colours for these. * An error is now presented when there are problems trying to resolve a path to keyframe some settings now (instead of silently giving up).
2009-05-15UI: Layout EngineBrecht Van Lommel
* Buttons are now created first, and after that the layout is computed. This means the layout engine now works at button level, and makes it easier to write templates. Otherwise you had to store all info and create the buttons later. * Added interface_templates.c as a separate file to put templates in. These can contain regular buttons, and can be put in a Free layout, which means you can specify manual coordinates, but still get nested correct inside other layouts. * API was changed to allow better nesting. Previously items were added in the last added layout specifier, i.e. one level up in the layout hierarchy. This doesn't work well in always, so now when creating things like rows or columns it always returns a layout which you have to add the items in. All py scripts were updated to follow this. * Computing the layout now goes in two passes, first estimating the required width/height of all nested layouts, and then in the second pass using the results of that to decide on the actual locations. * Enum and array buttons now follow the direction of the layout, i.e. they are vertical or horizontal depending if they are in a column or row. * Color properties now get a color picker, and only get the additional RGB sliders with Expand=True. * File/directory string properties now get a button next to them for opening the file browse, though this is not implemented yet. * Layout items can now be aligned, set align=True when creating a column, row, etc. * Buttons now get a minimum width of one icon (avoids squashing icon buttons). * Moved some more space variables into Style.
2009-05-12Graph Editor Bugfix: Drivers for Materials now get shownJoshua Leung
2009-05-11F-Curve Colouring: Attempt at a new auto-algorithmJoshua Leung
This new algorithm groups F-Curves into groups of 3-4 with similar colours, since triplets of related settings are more likely to be encountered. The colours get darker down the list. Blocks of related F-Curves will alternate between being boldly and weakly shaded. I've left the old method still there but commented out. This new method could still be improved, as some of the colours chosen don't really stand out that well IMO. Testing and suggestions welcome as always :)
2009-05-112.5Joshua Leung
* Broke compiling on previous fix... * Starting fix for nestled structs...
2009-05-11RNA Bugfix: (Brecht, please check over these fixes...)Joshua Leung
Fixed one of the causes of keyframes not being able to be inserted. For ID-types where inheritence of the basic wrapping of the struct (i.e. for Lamp blocks, shadow and other lamp-type specific settings were only defined in subclasses of the Lamp struct), the RNA_id_pointer_create() function now performs additional refinement of the PointerRNA so that the pointer will be resolved correctly to allow access to these settings. The other case which is unresolved for now is nestled structs. The RNA_path_from_ID_to_property() needs modification for this, but dunno how yet.
2009-05-092.5 Bugfixes:Joshua Leung
More work on getting these marker-dependent tools working. They should finally work now :)
2009-05-082.5 - Restored Various Tools using MarkersJoshua Leung
* Added back a few Marker-API tools * Restored column select tools using markers (some of these aren't working right yet though).
2009-05-082.5 - Assorted animation code cleanupsJoshua Leung
* Replaced a few duplicated enums that were also defined for some RNA properties already with the RNA ones. * Start of cleanup of markers code in preparation for getting the rest of the editing code involving markers working again
2009-05-062.5 - Scons compiling fix for BDiego's commitJoshua Leung
Was missing includes for blenfont module in a few places.
2009-04-22UIBrecht Van Lommel
* Headers and menus can now be created in python. * Replaced the uiMenuItem functions to create menus with equivalent uiItem functions using a layout, removing duplicated code. * More uiItem functions are now exposed to python. * The text editor header, panels and one of its menus are now created in space_text.py. * Buttons window data context icon new changes depending on active object. Issues * Icons are not wrapped yet, hardcoded ints at the moment. * The ID browse template is unfinished.
2009-04-19RNA: Generic Type RegistrationBrecht Van Lommel
The Python API to define Panels and Operators is based on subclassing, this makes that system more generic, and based on RNA. Hopefully that will make it easy to make various parts of Blender more extensible. * The system simply uses RNA properties and functions and marks them with REGISTER to make them part of the type registration process. Additionally, the struct must provide a register/unregister callback to create/free the PanelType or similar. * From the python side there were some small changes, mainly that registration now goes trough bpy.types.register instead of bpy.ui.addPanel. * Only Panels have been wrapped this way now. Check rna_ui.c to see how this code works. There's still some rough edges and possibilities to make it cleaner, though it works without any manual python code. * Started some docs here: http://wiki.blender.org/index.php/BlenderDev/Blender2.5/RNATypeRegistration * Also changed some RNA_property and RNA_struct functions to not require a PointerRNA anymore, where they were not required (which is actually the cause of most changed files).
2009-04-172.5 Animation UI Tweaks:Joshua Leung
* Added back backgrounds behind buttons for modifiers and driver targets * 'Protect' toggle doesn't draw for F-Curves with no keyframes to prevent editing on anymore * Inserting keyframes on objects using builtin keyingsets now use the right names
2009-04-162.5:Joshua Leung
* Added extra parameter to generic unique name finding function BLI_uniquename() for specifying the delimeter between non-unique parts of the name and digits. * Driver target variables now get unique names by default.
2009-04-162.5 PoseLib/KeyingSets bugfixes:Joshua Leung
* Replaced a quicky hack needed to get PoseLib working with a proper new group-naming option for KeyingSets. Now, all builtin KeyingSets will use the name of the data (i.e. Object or PoseChannel) as the name of the group new channels are added to * Fixed a bug with LocRotScale builtin KeyingSet, which meant that scale keyframes were not getting added. * TAB key (toggle original pose) now works again. Previously, events were flying past too quickly.
2009-04-15PoseLib: Interactively browsing poses with Ctrl-L now mostly works againJoshua Leung
This (most important part) of PoseLib now mostly works again. It even works for PoseLibs saved with the old animation system. However, there are a few annoying bugs that need to be addressed still: * When 'confirming' poses, the pose changes to the next one before PoseLib exits. I'm not quite sure where this is coming from yet... * There are still a few minor bugs in the search-string code that will get ironed out * AutoKeyframing doesn't work yet for this
2009-04-152.5 PoseLib - First steps to get PoseLib to work in 2.5Joshua Leung
* Cleaned up Keyframing API to get eliminate some of the problems faced during the original implementation of PoseLib, thus reducing code redundancy. * Added new Animato evaluation functions specifically for use by PoseLib. * Replaced parts of PoseLib code which relied on old animation system to the equivalent code for Animato. Notice the much cleaner + saner + compact code! Next step is to operatorfy the PoseLib tools (while maintaining possibility for an API to some things) :)
2009-04-13Further simplified code for defining builtin KeyingSets (i.e. made the ↵Joshua Leung
macros do more!)
2009-04-132.5 - Separated Keying Sets code out into its own fileJoshua Leung
2009-04-12Graph Editor: BugfixesJoshua Leung
* Fixed bug with curves sometimes not being displayed. Will investigate further tomorrow. * Copy/Paste buttons in header now work. I've ported these over to use operator buttons * Ctrl-Alt-Shift-RMB now selects all the keyframes in multiple F-Curves at once
2009-04-12Action Editor: Selection tools cleanupJoshua Leung
* Cleaned up the code for selecting keyframes * Click-column-select (Alt-RMB) now works * Also, moved a function used in both Action/DopeSheet and Graph editors to the Animation module
2009-04-112.5 Drivers:Joshua Leung
* Fixed bug with setting the active F-Curve * UI for editing drivers now works
2009-04-102.5Ton Roosendaal
Grand cleanup: - removal of FTF and ftfont dir - removal of text.c which wrapped it - wrapped old text drawing code temporarily, need to decide how 'style' will behave per editor when you draw strings outside interface code.... wouldn't be very useful to set fonts locally all over?
2009-04-102.5 Drivers - Widget ColoursJoshua Leung
* Widgets now get coloured when driven. The colour used is debatable, but I've just set it to a purplish colour so that it's easy to distinguish from animated/keyframes/highlight colours. * New drivers are given generator F-Curve modifiers by default so that they at least show up in the view.
2009-04-102.5 - Groundwork for Adding/Removing Drivers Joshua Leung
Drivers can now be Added/Removed from buttons using the D/Alt-D hotkeys, and also through the menu. Driver settings (i.e. the target) are not set by default. To set those, go to the Graph Editor (see notes). Notes: * Buildsystem maintainers - I've added a new file "editors/animation/drivers.c" * Widget colours for the driven-setting indications are needed * To see the new drivers, go into Graph Editor -> "Drivers" mode. Currently, there's a little bug there which prevents editing of the new drivers.
2009-04-10Action Editor - Part 2 of Code CleanupsJoshua Leung
Nothing much to see here... there's still a few things to recode a bit nicer...
2009-04-10Animation Editors - Part 1 of Code CleanupsJoshua Leung
* Fixed a few typos in the code * Switched the meaning of the Ctrl and Alt modifiers when selecting keyframes. - Ctrl is now select all keyframes on one side of time cursor - Alt is now select all keyframes at same time as a particular keyframe. TODO: While testing these changes, I've found that this column-select is not working yet as the tolerances are too low. This will be rectified soon.
2009-04-092.5 Bugfix: Trying to insert/delete keyframes on old-style buttons would crashJoshua Leung
Fixed the problems with using uninitialised vars in the calls for inserting keyframes from buttons. Oldstyle buttons (i.e. those without any RNA links, such as the 3D-View header buttons) would crash otherwise.
2009-04-09Animation Editors - Bugfixes:Joshua Leung
* Collapse selected channels should now work for most channels. It still doesn't work for Action Groups for some reason... * Objects are now deemed to only be selected in Animation Editors if the are selected (i.e. if they are active but not selected, they are no longer considered to be selected) * Outliner updates when scrubbing the TimeLine. As a consequence, anim playback with an Outliner open is a bit slower now.
2009-04-08Animation Editors: Restored operators to expand and collapse channelsJoshua Leung
There are two operators: one for expanding channels and one for collapsing them. These operators each have a property, "All", which specifies if they should expand/collapse all channels regardless of selection. TODO: * A few of the sub-object channel types still needs to be supported by this.
2009-04-08Builtin KeyingSets Bugfix:Joshua Leung
* Builtin KeyingSet for Scale works now. Was using the wrong RNA-paths * Added LocRotScale builtin KeyingSet
2009-04-05Animato - RNA Wrapping:Joshua Leung
RNA-Paths + Array Indices for Keying Sets, F-Curves, and Drivers are now editable. We could disable these later if need be, it is useful to be able to edit these (especially for debugging purposes now).
2009-04-042.5: Added basic insert/remove keyframes from UI buttons.Brecht Van Lommel
- I key over a button inserts a keyframe. - Alt+I removes a keyframe. - With right mouse button a menu with these options pops up. - Buttons are colored green if the property is animated, yellow if it is on a keyframe. I followed the colors from the UI mockups, but the flicker on keyframes seems too distracting in practice? - This only works for properties on the ID itself at the moment, path callbacks need to be filled in for all structs but mesh still. - It doesn't work when you're over a related label, that needs to be made to work. - I made it insert keyframes outside of any keyingset. Not sure how this is supposed to integrate?
2009-04-01Animato - Support for 'BuiltIn' and 'Relative' Keying Sets Joshua Leung
When inserting keyframes in the 3D-View (support will be extended to other editors in due course) using the IKEY hotkey, the menu which appears will now consist of 3 parts: * 'Active Keying Set' - this option allows you to use the user-defined KeyingSet which is active for the current scene (i.e. the one seen in the TimeLine/Outliner headers) * User defined Keying Sets - a list of all such available KeyingSets is included, and entries can be chosen from there * Built-In Keying Sets - see later... To achieve this, several changes needed to be made first: * Added support for 'relative' in addition to 'absolute' Keying Sets. Relative Keying Sets are Keying Sets which operate on data from the current context (i.e. a 'location' KeyingSet will add location keyframes for selected objects/bones/nodes as opposed to location keyframes for some particular object). The is a tentative 'templates' requirement system here, which still needs to be fully fleshed out. * Added support for builtin Keying Sets (i.e. 'Location', 'Rotation', 'Scaling', and 'LocRot' as a few initial demonstrations), which replaces the temporary Insert Keyframe operator for the 3D-View (IKEY). These are effectively relative Keying Set definitions which are included in Blender by default and stored in a list separate from user-defined ones. Volunteer help in defining a few more of these for other editors will be welcome soon. * Removed/replaced much of the crappy temporary Keyframing operator code, though a few tweaks could still be done.
2009-03-29- python api was returning incorrect int values from rna because it was ↵Campbell Barton
using PyLong_FromSize_t rather than PyLong_FromSsize_t, this messed up the default values in documentation. - renamed POSE_OT_select_hierarchy "add_to_sel" property to "extend" - some property names were wrong (giving errors in the console at startup)
2009-03-29- use clear, set, add, enable, disable and toggle as a prefix in operator namesCampbell Barton
- use select as a suffix eg UV_OT_loop_select -> UV_OT_select_loop - Each select all operator was using slightly different wording... select_all, deselect_all, de_select_all, select_de_select_all -> select_all_toggle - selection -> select - POSE_OT_select_connected -> POSE_OT_select_linked to match other operators - NODE_OT_delete_selection -> NODE_OT_delete since its not used in other operators - ANIM_OT_previewrange_define -> ANIM_OT_previewrange_set to match other operators - NODE_OT_fit_all -> NODE_OT_view_all to match other operators - View2D_OT_* -> VIEW2D_OT_* to match VIEW3D - View2D_OT_view_downscroll -> VIEW2D_OT_scroll_down more logical - removed MARKER_OT_mouseselect_extend and made extend a boolean property of MARKER_OT_mouseselect - MARKER_OT_mouseselect -> MARKER_OT_select - GROUP_OT_group_remove -> GROUP_OT_objects_remove more logical since its removing objects from groups - MESH_OT_removedoublesflag -> MESH_OT_remove_doubles - redundant words MESH_OT_split_mesh -> MESH_OT_split, OBJECT_OT_object_delete -> OBJECT_OT_delete renamed selection operator properties extend_select -> extend column_select -> column select_children_only -> children_only ... Since these are all in the context of selection operators there is no need for the extra 'select' in the property name. Updated docs http://www.graphicall.org/ftp/ideasman42/html/bpyoperator-module.html
2009-03-28- made epydoc generator write a list of words used in descriptionsCampbell Barton
- fix spelling mistakes in rna docs (and some comments)
2009-03-262.5: Remove OOPS code from the outliner space, as discussedBrecht Van Lommel
this can be brought back as a new space if someone decides to work on it. This also fixes remaining issues with the outliner tree open and close buttons not working sometimes.
2009-03-17F-Curve Modifier - Generator: Buttons for builtin-function mode (i.e. sin, ↵Joshua Leung
cos, etc.)
2009-03-15F-Curve Modifiers: Groundwork for getting these workingJoshua Leung
- Completed cleaning up the drawing code so that F-Curves with modifiers now get drawn to reflect this. - Added a temporary operator to add modifiers (hotkey Ctrl-Shift-M)
2009-03-07Animation Editors: Copy/Paste Keyframe changesJoshua Leung
As was discussed by the team the other day, copying keyframes (to copy/paste buffer) in DopeSheet/Graph Editor no longer relies on the selection status of the F-Curves, but rather on the selected keyframes only. This should be less confusing... However, pasting keyframes still relies on having F-Curves selected to aid in the channel-matching process. There is still a lot of room for improvement in this area though (as noted in the code!).
2009-03-022.5 - Various animation bugfixes for samplesJoshua Leung
2009-03-01Graph Editor: Added operator to 'bake' keyframe-based F-Curves to be ↵Joshua Leung
composed of samples. This operator can be activated using the 'Alt-C' hotkey for now, and operates on selected + editable F-Curves. This is currently still highly experimental, and does crash I've implemented this as a way to test out the FPoints/samples code, which will be used to provide better support of the dense F-Curves which result from importing Mocap/BVH data. These should use considerably less memory + have a few additional benefits over keyframes when they're working in a stable fashion.
2009-03-012.5 - Animation related tweaksJoshua Leung
* Scrollers for zoomable views are now always shown again. The previous method was quite bad for these, as there would be flickering as the view was zoomed + panned. Also, the old method was not suggestive of the drag-zoom features on the scrollers, which was provided by the shaded bars. (Non-zoomable views will still only show scrollers where appropriate). * Insert-Key in 3d-view (i.e. the 'temp' operator which still needs to be ported to use builtin relative keyingsets) had a bug where the wrong keyframe were being inserted (rotation in instead of location, scaling instead of rotation) for bones.
2009-02-282.5 - Various animation bugfixesJoshua Leung
* When inserting keyframes, newly created groups are no longer created with expanded + active flags set. The former should work better and keep the views less crowded by default when there are many F-Curves. * Fixed crash when trying to select action groups. This only seemed to happen in one of the BBB files... * Settings that have been tagged in RNA as being un-animateable are now ignored when creating Keying Sets. * Removed some un-needed old code from keyframing code. I've still left in the old-style builtin KeyingSets from about 2.48, since those will be useful reference when setting up the new builtin KeyingSets. * Removed obsolete correction factor for Visual Keying -> object rotations.
2009-02-25Outliner/Datablocks view: IKEY/Alt-IKEY Hotkeys work for Inserting/Deleting ↵Joshua Leung
keyframes via KeyingSets
2009-02-25Anim-Channel Filtering: If an object only has animation-data attached to one ↵Joshua Leung
of its Material datablocks, they will now get included too. This makes it possible to edit keyframes for material animation where no object-linked animation exists. However, this is provided that the material is linked to an object!
2009-02-24DopeSheet/Graph Editors: Restored Copy/Paste operatorsJoshua Leung
The channel-matching code when pasting still needs improvements to work really nicely...