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
2006-12-29* Patch #5337 from Juho: Ipo vertex size theme settingMatt Ebb
(with some small modifications)
2006-12-06Bugfix #5356Ton Roosendaal
Outliner: the new 'restriction' options were drawn as buttons, and created always even when not visible. Gave big slowdowns on large data sets. Also: help lines were drawn as shorts, should be floats Cannot fix: button coordinates are short by default still, giant outliner data sets draw buttons in wrong location. Did add nice feature though; on several events the outliner now is not being re-built anymore, but redrawn only. I want to be a bit conservative with it though... but it happens for: - LMB drag to select items - pageup/down, scrollwheel, mmb scroll - search item - show active item - toggle selection Makes a good difference :)
2006-11-30Removed the other ugly global used in action editor. Now theJoshua Leung
ACTWIDTH is a macro that tries to get actwidth from the active SpaceAction (G.saction->actwidth). This should solve any potential problems with having two action editors open editing shapekey actions. Also, I've fixed a compiler warning caused by erwin's constraint commit. Wrong ui call for button.
2006-11-30Big Commit.Joshua Leung
Now time-markers work in all time-related spaces (i.e. Ipo, Action Editor, NLA editor, TimeLine, Sound). The hotkeys and functionality set should be the same for each of these modes (with a few exceptions still). I've had to change a few hotkeys here and there, so hopefully they aren't too bad. Marker Operations: MKEY - Add Marker SHIFT MKEY - Rename marker (was CTRL MKEY) XKEY - Delete Marker PAGE UP - Jump to next marker PAGE DOWN - Jump to previous marker CTRL A - Select all markers SHIFT G - Transform markers (NLA, IPO, Action) G - Transform markers (Sound, Timeline) CTRL SHIFT D - Duplicate markers (NLA, IPO, Action) SHIFT D - Duplicate markers (Sound, Timeline) BKEY - select markers and other keyframes (if any) I've also made a few little tool additions to NLA and Action editors: * NLA editor - Snap To Frame. Now with the option to offset strip so that it starts at the current frame. Added menus for this. * Action editor - Snap To Frame A few new menus for this too
2006-08-06undid commit to stop overdrawing IPO verts, it assumed that ipo verts were ↵Campbell Barton
in order which it seems there not. (only the IPO;s I tested with were) Still might be worth looking into somehow not drawing all the points.
2006-08-05dont draw IPO points outside the ipo view, avoid extra looping also.Campbell Barton
2006-06-25Bugfix #4466 (half)Ton Roosendaal
Object 'active shape' was only 1 byte in object. OK. Let's sacrifice another byte for that then!
2006-06-15* Added a better mouse pointer for the eyedropper tool (thanks Bart) and alsoMatt Ebb
some 2d scroll pointers
2006-06-15Changed some references to 'size' to now refer to 'scale'. If anybodyChris Want
sees a reference to size, as it pertains to a 3D object, please let me know.
2006-06-04Bugfix #4223Ton Roosendaal
Sequencer: A call to view2d_do_locks() got accidentally added in main drawing loop, causing an infinite loop of redraws when this option was used with more sequence windows open. Added missing view2d_do_locks() to zooming in Sequence window. Also cleaned this call a bit.
2006-05-01Small update for pydrivers: force reloading the pydrivers.py BlenderWillian Padovani Germano
text module when user edits the input text box of any pydriver (Transform Properties panel, Ipo window). It's enough to click in and out of a single pydriver's text input box for the module reloading and also re-evaluation of all pydrivers available. Maybe this "refreshing" should also be available from a menu, let's see. Note for Python fans: Definitions and redefinitions in a reloaded module are properly handled in Python, but previously defined data in the module doesn't disappear. So if you define a function "f" inside a module, import it, then change the function's name to "g" and reload the module, both "f" and "g" will be available. This is considered a feature, check reload's documentation: http://docs.python.org/lib/built-in-funcs.html#l2h-59
2006-04-30Pydrivers: Ipo Drivers controlled by Python expressionsWillian Padovani Germano
wiki with info: http://mediawiki.blender.org/index.php/BlenderDev/PyDrivers (there are two sample .blends in the patch tracker entry, last link in the wiki page) Notes: In usiblender.c I just made Python exit before the main library gets freed. I found a situation with pydrivers where py's gc tried to del objects on exit and their ID's were not valid anymore (so sigsegv). Ton needs to check the depsgraph part. For now pydrivers can reference their own object, something normal ipodrivers can't. This seems to work fine and is quite useful, but if tests prove the restriction is necessary, we just need to uncomment a piece of code in EXPP_interface.c, marked with "XXX". Thanks Ton for the ipodrivers code and adding the hooks for the py part and Martin for the "Button Python Evaluation" patch from which I started this one. Anyone interested, please check the wiki, the .blends (they have README's) and tell me about any issue.
2006-04-17Bugfix #3683Ton Roosendaal
When the 'reference shape key' (drawn yellow) was not the first key, the channels as drawn in IpoWindow didn't match the actual shape keys. This was caused by an exception in code that skips drawing the reference shape when 'relative' was used. Now I've added a rule that the first shape in a list always becomes the reference, that way you can also edit it. To keep backwards compatibility, this is only activated on translating the shape key lines.
2006-04-14#bugfix #3682Ton Roosendaal
NLA and Action window sometimes suffered from very weird scaled display, caused by making the subwindow very small. Was a missing check for small sizes. Also in this commit removal of debug print N_T left in for ipos.
2006-04-02Bugreport #4057Ton Roosendaal
Uninitialized variable used in viewmove for 2d windows... the reporter found it himself. thanks Michael Jones!
2006-03-27==Sequencer==Peter Schlaile
This patch is mostly a usability patch for the sequencer, mainly written by Anders Gudmundson and twisted a little bit by me. - Lock Time to other windows - Possibility to switch the X-Axis between frames and seconds-display - IPO-Frame Locking for plugins (T-Key) - Additional Popup to add HD-Sound and Movie at once - In Timeline-Window: Sequencer windows only playback - Make the IPOs a little bit IPO-Frame-Lock friendlier (doesn't jump; the frame that is drawn has the right dimension) - Wheel-Mouse buttons make the sequencer window zoom again. - The "This is not a sound/movie-file message" now reads "... or FFMPEG-support not compiled in!" since I learned some prominent people who complained, that hdaudio does not work for them ;-) - Make SPACEKEY open up the "Add Strip"-Popup on the timeline and start playback in the preview window.
2006-01-31* Fix to adaptively grow and shrink the width of the Ipo channel list based ↵Matt Ebb
on the width of the names. Now we can actually distinguish our shape ipo channels!
2006-01-30* Allow the Sequence editor to scale in Y axis too. Why was this never enabled?Matt Ebb
2006-01-07Orange: while testing other code, I found out the scrollwheel code redrawsTon Roosendaal
a 2d window 3 (three!) times on every event! This explains why scrollwheel seems to lag quite some when used in buttons or outliner. The view2dzoom() and view2dmove() code is horrid. Nice project for someone is to move all 2d (View2D struct related) code into its own C file. A lot of that is spread around in the code.
2006-01-03Bugfix #3646Ton Roosendaal
Outliner, using scrollwheel with mouse in scrollbar didn't scroll in the correct direction.
2005-11-17Another Orange sneak-in feature: SoftBody support for Curves & Surfaces.Ton Roosendaal
Well, it already worked a bit, but without weight options or edge stiffness. You now can set the weights using the "Properties" Panel in the 3D Window (allows multiple selections too) or with Wkey in Edit Mode. Bezier curves have this too. NOTE: Lattice SoftBody Goal created yesterday won't work anymore! I've had to recode weight support for Nurbs Points, using a new weight variable... this because the existing W variable was in use for Nurbs already. Also Lattices have this new Weight variable, so the code is nice uniform. Sorry for the artists who already created complex Lattices... :) NOTE2: Surface Objects don't support edge stiffness yet NOTE3: I've removed ancient screen coordinates from the Bezier struct, which makes - even with added weight and padding - the struct smaller! Demo file: http://download.blender.org/demo/test/2.40/softbody_curve_lattice.blend
2005-11-06Bugfix #3358Ton Roosendaal
Deleting a shape key object could crash, when ipowindow open and showing an active key. Also: patch from tracker to increase limits of buttons for background image offset.
2005-10-30Two half working commits!Ton Roosendaal
- Python Drivers In Ipo Window "transform properties" Panel, added the buttons, and the initial handling (now only printing text). Willian makes it work! - Better Matrix to Eul, code submitted by Brecht. No time yet to do it really nice (like a Mat3ToEulCompat(mat, eul, eulc))
2005-10-29Remainder todo from Shape Action recode; the drawipo.c Panel code stillTon Roosendaal
was referencing Key pointers in spaceipo->from, this has to be Object *. Thanks Johnny for the report!
2005-10-28Autocomplete for buttons that need Blender data names (ID's and Bones).Ton Roosendaal
Just press TAB and it completes up to the level a match is found. If more matches exist a menu could pop up, thats for later. Now an evening off! :)
2005-10-28Here's another milestone: Shape Keys now can be inserted in Actions and NLATon Roosendaal
It works like for moving Object Ipos to the Action, press the Action icon in the header of the IpoWindow, to the left of the mode selection menu. It then creates an Action (if not existed) and moves the Shape Ipo to the Action, using custom channel "Shape". Main code change was that evaluating Ipo Curves for Relative Shapes had to be recoded, but that's pretty minor and even much cleaner. (added "curval" in the KeyBlock struct). That this feature can work is thanks to the full modifier/derivedmesh recode Daniel did, can't give him enough credits! :) Also; small fixes in Outliner, for clicking on the Ipo icon (sets the Ipo window to show that Ipo).
2005-10-27Orange bugreport:Ton Roosendaal
The new "lock time" option for ipo/action/nla/time/sound windows did not work proper... it could accidentally activate other windows, confusing the 2d settings.
2005-10-20New option; "Lock Time to Other Windows" for Ipo, Action, NLA and TimeTon Roosendaal
windows. If set (in View pulldown), it synchronizes the horizontal scale of the current window with the other Windows with this option set. That way you always have these windows showing an identical part of the time you work on. Also added because Action Window now displays its content relative to NLA strips.
2005-10-10Stage two of the giant animation recode project; Ipo/Action/NLA cleanupTon Roosendaal
-> Note; added 2 new c files (split editipo.c). MSVC needs upgrade. Impatient people can check the goodies in CMS: http://www.blender3d.org/cms/Action_and_NLA_editor.706.0.html Most work was on trying to unwind the spaghetti for editing ipos. Too much history and bad design got added here. Most evident changes: - made generic 'context' for detecting which Ipo is being edited, or to assign ipos or to retrieve ipo curves. - made generic insertkey() for all ipo types, including actions - shuffled a lot of code around to make things more logical. Also made sure local functions are not exported It is far from ready... when action/nla was added in Blender, a lot of duplicate code was generated. That's for another time. Now the goodies; - made Actions to allow any Ipo type - made NLA to define active actions, for Action window too - corrected timing for active action, so it shows the 'real time', as defined in NLA editor. I did update python code, but that would require testing. Testing is needed for this commit in general, too many changes happened on all levels of the animation system. :) Will keep track of all reports this evening, hopefully it doesnt break the pre-release schedule!
2005-10-05Drivers cannot drive channels of own Object, added error warning for it. ITon Roosendaal
might allow this once, but it's a lot of new complexities then. It also means you cannot drive one Bone with another Bone in same Pose.
2005-10-03New! Edit mode curve now draws solid extrusions, bevelcurves and tapers.Ton Roosendaal
Fix: when unlinking an Action from Armature, the ipo window still allowed adding drivers, causing crashes.
2005-10-03IpoWindow, Action curve update.Ton Roosendaal
When no Ipo existed yet for an Action Channel (Bone), you could not add curves with CTRL+click or Drivers. This was due to antique action code state... it's still messy, no time for big cleanup here yet. At least this works now. :) (Also: removed test prints of previous commit)
2005-10-03Bug fix; action editor, inserting mesh keys crashed. Referencing ipo stuff.Ton Roosendaal
(yes, studio orange is testing :)
2005-10-03Driver fix; entering a non-existant object name in driver Panel crashed.Ton Roosendaal
2005-10-03Version 1.0 of IpoDrivers.Ton Roosendaal
First note that this is new functionality, unfinished, and only for testing and feedback purposes. I'll list below what works, and what will need work still. This text is also in cms: http://www.blender.org/cms/Ipo_Drivers.680.0.html An IpoDriver is like an IpoCurve, but instead of a Bezier curve, it allows to connect a property of other Objects as input for the "channel". For example, IpoDrivers can be used to have a Shape Key being "driven" by the rotation of a Bone. Or the RGB colors of a Material get driven by the XYZ location of an Object. Editing of Drivers happens in the IpoWindow. Here you can notice that the channels (right hand window) now have an "active" channel indicator. To add a Driver, you have to use the "Transform Properties" Panel (Nkey). Here you can add or remove a Driver to the active channel, and use the buttons to fill in what kind of relationship you want to establish. Driver Objects Note that any Ipo Channel can become driven now, but that only Object transformation or Pose Bone transformation can be used to become a Driver now. At this moment, only the local transformation is taken into account. For Objects that means the location/rotation/scale value without Parent transform (as shown in "Transform Properties" Panel for Objects). For Pose Bones it means that only the Pose transform (changes of rest position) is Driver information (also as shown in Transform Property Panel in Pose Mode). Mapping of Drivers When an Ipo Channel is "driven", the mapping is by default one-to-one. It is only restricted by already built-in limits for Channels, like for Material the "R" value can only range from 0.0 to 1.0. Also note that when mapping rotations, the actual rotation values in Ipos are scaled down with a factor 10.0. (180 degrees actually has in the Ipo system a value of 18.0). This is an ancient year zero convention in Blender... it is a bit hidden, because the ruler (vertical as well as horizontal) displays the virtual values correctly. Only the Properties panel shows the actual value. When you draw an IpoCurve in a Driven channel, this curve will define the mapping between the Driver output (horizontal) and Driven input (vertical, as usual). A nice new option to use is "Insert one-to-one curve" (press I-key, or in pulldown menu). This will also zoom the display in exactly to fill the window, allowing easy edit. If you use this option with degrees, it will map 180 degree rotation to a range of 1.0 unit. Live updates Since the Drivers are integrated in the Ipo system, they will always be updated whenever an Ipo is evaluated. This happens at least on frame changes. For interactive feedback, updates while transforming objects were added in these cases: - Driven Object Ipos, by other Objects or Pose Bones - Driven Shape Key Ipos, by other Objects or Pose Bones You can also insert Drivers on Action Ipos, but these are only evaluated on frame change now. Todo - Drivers can also get a text button, allowing a 1 line Python script to be executed. - Make UI for it a bit less hidden... maybe with visualization in 3D? - Allowing global transform coordinates as Driver too. Issues - renaming Bones won't rename drivers - (file) appending the Ipo won't append the linked driver Objects
2005-09-28Bugfix;Ton Roosendaal
Ipo window could crash on reading old files with keys, non proper use of pointer...
2005-09-26Cleanup and new features for vertex keys.Ton Roosendaal
User doc: http://www.blender3d.org/cms/Shape_Keys.678.0.html - The mixed use of "Vertex Key","Key" or "RVK" in Blender was a bit confusing. Also a 'vertex key' assumes keys per vertex, which actually is only a single key for the entire shape. The discussions on blender.org forums all mentioned "Shape" or "Blend Shapes", which I think is an OK name for a "Vertex Key" in the UI. :) - Most work was code spaghetti cleanup. Doing shape-keys now nicely goes via the depgraph and DerivedMesh. That then allows to have different shapes per object, with the new "Pin" feature. Objects now define what Shape is shown (ob->shapenr) - Added a Shape Panel in the Edit buttons with the various options - Fixed a lot of issues in the IpoWindow, with drawing the channels. For example, deleting a key-line there caused the entire Relative option to go wrong, same for moving the lines up/down. Changing key-line order now reflects in order of channels. The active Shape is drawn more clear now too. - Noticed it doesnt work yet for curves/lattice. Need modifier advise!
2005-09-03Bug fix #2972Ton Roosendaal
Copy/Paste bone name buttons crashed, didn't use the callback for buttons proper yet. Also added MAXFRAME defines for buttons, instead of hardcoded values 9000 or 18000
2005-08-20New feature; User definable Clipping Planes.Ton Roosendaal
Press ALT+B in 3d window, draw a rect, and it becomes a clipping volume of 4 planes. You then can rotate the view anyway you like. Works for each 3d window individually. Disable it with another ALT+B press. Commit is huge because it had to change all selection code as well. The user-clipping planes are in 'eye space', the other clipping happens in projected 'viewport space'. Nice to notice is that the 'x=3200' convention (to denote a coordinate is clipped) now is a define. Define value is still a number though... but we now can get up to screens of 12000 pixels without issues! Known issue; here it refuses to draw the 'object centers' or Lamp icons within the clipping region. Can't find any reason for it... however, we might move to non-pixmaps for it anyway. Testing might reveil numerous issues, will be standby for it. Curious? Check this http://www.blender.org/bf/rt4.jpg
2005-08-03 - got rid of silly #define ..._BIT, #define ... (1<<..._BIT) stuffDaniel Dunbar
- switched almost all uiDefBut(..., TOG|BIT|..) to use UiDefButBit and the name of the actual bit define instead of just a magic constant, this makes searching the code much nicer. most of the credit here goes to LetterRip who did almost all of the conversions, I mostly just checked them over.
2005-07-27Cleanup & goodies for rigging geeks! :)Ton Roosendaal
- PoseMode: Wkey menu, "Flip Left/Right Names". On selected bones, it flips the L/R tags in names, and calls the proper code to rename everything that's related (constraint targets, bone-childs, etc). - PoseMode: Shift+S snapmenu: snap cursor to selected now works - Outliner: select bones now correctly sets 'active' flag for bones, updating the UI as well. Also made sure you cannot select hidden bones in outliner. - 3DWindow: in PoseMode/EditMode draws name of active Bone too (with user option "Draw active object name" set. - Added the new Armature/PoseMode options in View3D pulldowns. Cleanup: - moved Pose code from editaction.c to poseobject.c - removed BSE_editaction.h and BSE_editaction_types.h, moved contents of it to BIF_editaction.h. One include per C file should be fine. :) I know the src/ structure would require more elaborated includes, but we don't have that now...
2005-07-16More armature goodies;Ton Roosendaal
The B-Bones! (where the B can be read as 'block' or 'bezier' or 'b-spline') - set option on/off in edit buttons, armature panel - scaling of B-bones only works in editmode, use ALT+S to make bones fatter or thinner. Also works for constrainted transform - In pose mode, you now have a buttons panel with per-bone settings too Here you can find the "segments" button, which allows bones to interpolate between previous/next bones, including roll. - Buttons to control interpolation ("In" and "Out" are disabled, doesn't work satisfying yet NOTE: this doesn't give deform yet! Main purpose for now is to test if this drawing method serves to animate/pose armatures well. Still need to review proper interpolation methods... maybe bezier is too limited.
2005-07-15 - remove some redundant drawing codeDaniel Dunbar
- mousewheel zooming in drawipo used uninitialized var (MSVC run time error).
2005-05-14fix for bug in timeline found by Ztonzy on IrcJean-Luc Peurière
when zooming in with frame enabled, partial of frame were drawn with multiple same int labels. confusing if harmless. Ton, can you check this fix is the proper one ?
2005-05-08UI goodies & cleanupTon Roosendaal
- TimeLine: Marker grabbing works now. Use GKEY or select+drag, as usual Holding CTRL will step with 1 second (corrected for ntsc dudes yes!) Also added this in header pulldown - Time values and Time grid draw fixed for Seconds display. It used to draw steps of 2/5/10/20/50/100 etc. frames. Now does steps in seconds. Again corrected for "Frames/Sec" value. - "Frames/Sec" button redraws TimeLine, Secquencer, etc - Bug fixed in editing Theme for TimeLine (was editing Image Select...) - Added Grid color to Theme choices for Ipo, TimeLine, Sequencer, NLA, Action, Sound. Was missing!
2005-05-05Added the new Timeline Window, copied from Tuhopuu, coded by Matt Ebb.Ton Roosendaal
Main change is that it's an own Space type now, not part of the Audio window... the audio window should restrict to own options. This way functionality is nicely separated. Since it's the first time I added a new space (since long!) I've made an extensive tutorial as well. You can find that here: http://www.blender3d.org/cms/Adding_new_Space_Window.557.0.html Notes for using timewindow; - Add time markers with MKey - CTRL+M gives option to name Marker - Markers cannot be moved yet... - Pageup-Pagedown keys moves current frame to next-prev Marker - Xkey removes Markers - If an object has Ipos or an Action, it draws key lines - CTRL+Pageup-Pagedown moves current frame to next-prev Key - Press S or E to set start/end frame for playback Notes about the implementation in Tuhopuu: - Add new Marker now selects new, deselects others - Selecting Marker didn't work like elsewhere in Blender, on click it should deselect all, except the indicated Marker. Not when holding SHIFT of course - Not exported functions are static now - Removed unused defines (MARKER_NONE NEXT_AVAIL) - Drawing order was confusing, doing too many matrix calls - Removed not needed scrollbar, added new function to draw time values. (Has advantage the MMB scroll works not confusing on a scrollbar) - Added proper support for 'frame mapping' - The string button (name Marker) had a bug (checked str[64] while str was only 64 long) - String button itself didn't allow "OK on enter" - Made frame buttons in header larger, the arrows overlapped - Removed support for negative frame values, that won't work so simple!
2005-03-20 - remove all obsolete inclusions of BLI_winstuff.h (due to recent changes)Daniel Dunbar
NOTE: BLI_winstuff.h was meant to be a wrapper around windows.h to handle undefining various crap that windows.h defines. Platform specific headers should only have to be included in a few places. This reduces the number of inclusions of BLI_winstuff.h to 16 which is a much more reasonable number (than the 144 or whatever it used to be)
2005-03-09big warning hunt commitJean-Luc Peurière
lot of casts, added prototypes, missing includes and some true errors
2005-03-01Bug fix #2248Ton Roosendaal
Pressing AKEY in channel buttons (names) of IpoWindow did not show all or hide all anymore. Was due to commit last july, which enabled unlimited amount of channels.
2005-01-31Bug found by Bassam; in certain occasions reading a file calls setscreen()Ton Roosendaal
without the (ugly) global curarea being set. Fixed the crash in his sample by nicely passing on 'current area' as argument.