blender.git
11 years agoNLA SoC: Merge from 2.5
Joshua Leung [Fri, 10 Jul 2009 01:57:55 +0000 (01:57 +0000)]
NLA SoC: Merge from 2.5

21330 to 21469

11 years agoNLA SoC: Tweaks from feedback from Broken + jez
Joshua Leung [Fri, 10 Jul 2009 00:32:13 +0000 (00:32 +0000)]
NLA SoC: Tweaks from feedback from Broken + jez

* Renamed the 'blend' blending mode to 'replace', since that's what it usually does

* Drawing a darkened rect behind the keyframes shown in the action line

--

* Fixed typo made last night which broke compiling
* Consolidated all the keyframe-shape drawing code to use a single codebase. Even if we don't ultimately go with OpenGL keyframes, there's always a tidy option for that now.

11 years ago2.5: Various
Brecht Van Lommel [Thu, 9 Jul 2009 19:49:04 +0000 (19:49 +0000)]
2.5: Various

* Weight paint: brush strength was changed to both define weight
  and strength, this can't work, made them separate buttons.
* Allow adding particle system as modifier (fix crash).
* 3D view modal ops (zoom ..) could not be ended when invoked
  from a button.
* Fix some warnings.
* Fix spelling in particle RNA property.

11 years ago2.5: Buttons Window
Brecht Van Lommel [Thu, 9 Jul 2009 19:45:27 +0000 (19:45 +0000)]
2.5: Buttons Window

* Fix poll() callback changes in recent commit, note that these have
  to work with pinned context too.
* Hide header for context panels in py layout.
* Don't jump back when collapsing a panel, allow the view to be
  over some empty space until you scroll back.
* Fix follow context icon, order had to be reversed in icon file.
* ID template now has icon as part of browse button instead of
  outside the buttons.

11 years ago2.5: fix for last commit, left in debug print.
Brecht Van Lommel [Thu, 9 Jul 2009 18:10:35 +0000 (18:10 +0000)]
2.5: fix for last commit, left in debug print.

11 years ago2.5 Buttons:
Thomas Dinges [Thu, 9 Jul 2009 16:09:44 +0000 (16:09 +0000)]
2.5 Buttons:

* Fixed some Bugs from Commit 21458.

* Show Preview Render only when there is an active id block.

* Some Code Cleanup (especially in polls). Please try to keep it clean ;-)

11 years ago2.5: X11
Brecht Van Lommel [Thu, 9 Jul 2009 16:05:01 +0000 (16:05 +0000)]
2.5: X11

* Pass on mouse location on window leave/enter too, fixing some
  issues with button highlights and tooltips.
* When a modal operator runs, grab the mouse cursor so that for
  example transform still works when you move your mouse outside
  of the window, previously it would just stop then. This is
  automatic now for all modal ops, perhaps not always needed?
* Fix for a trailing button highlight issue.

11 years ago2.5
Ton Roosendaal [Thu, 9 Jul 2009 15:40:04 +0000 (15:40 +0000)]
2.5

Monthly cleaning round to make it compile warning free.
Mostly it was const stuff (strings, Context), but also
a couple useful fixes, like wrong use of temp pointers.

Only Mathutils callback struct I left alone... design issue.

11 years ago2.5
Ton Roosendaal [Thu, 9 Jul 2009 14:35:40 +0000 (14:35 +0000)]
2.5

Bad bad DNA errors! People should really check on warning prints for
compiling dna dir...

- SpaceFile:  ListBase* prev;  <- dna doesnt recognize this
- wmEvent: const variables were not supported yet.

The first I fixed, 2nd I added support for in makesdna.

Note that files saved between tuesday july 7 and now can be corrupted!

11 years agoNLA SoC: Cleanup of Keyframe Drawing code for DopeSheet
Joshua Leung [Thu, 9 Jul 2009 13:14:51 +0000 (13:14 +0000)]
NLA SoC: Cleanup of Keyframe Drawing code for DopeSheet

* Removed the glaMapping stuff in favour of remapping the keyframes manually. The old code was causing some mess, and not really working well for the DopeSheet with various mappings being used.

* Fixed NLA-mapped selection in DopeSheet. Clicking on individual keyframes should now work ok. More testing required though.

* Keyframes in DopeSheet are now drawn fully using OpenGL (instead of icons). They look less tactile now, but this may be compensated with in terms of speed? Previously I disabled this type of drawing due to issues with some cards. Enabled again for now, but mainly because I couldn't get the icons to line up nicely in screenspace...

* Borderselect in DopeSheet. I've had a look at issues with it selecting the wrong channel's keyframes. The issues don't seem to be solved yet though... will look again tomorrow.

11 years agopatch from William, panel names need to be unique
Campbell Barton [Thu, 9 Jul 2009 09:42:34 +0000 (09:42 +0000)]
patch from William, panel names need to be unique

11 years agoPatch from William
Campbell Barton [Thu, 9 Jul 2009 09:07:25 +0000 (09:07 +0000)]
Patch from William
"moving the ID browser into its own panel. Eventually these panels should loose their headers to distinguish them from other, normal panels. Also a few other fixes for bones and armature panels."

11 years agooperator rename
Campbell Barton [Thu, 9 Jul 2009 08:39:58 +0000 (08:39 +0000)]
operator rename
VIEW3D_OT_viewhome  ->  VIEW3D_OT_view_all
VIEW3D_OT_viewcenter  ->  VIEW3D_OT_view_center
VIEW3D_OT_clipping  ->  VIEW3D_OT_clip_border

11 years agoDictionary style get() to property rna.
Campbell Barton [Thu, 9 Jul 2009 08:06:26 +0000 (08:06 +0000)]
Dictionary style get() to property rna.
eg..
mesh = bpy.data.meshes.get("SomeMesh", fallback)

Set length limits for python string formatting.

11 years agoremoved check for pyc when scanning the directory of python files.
Campbell Barton [Thu, 9 Jul 2009 07:35:35 +0000 (07:35 +0000)]
removed check for pyc when scanning the directory of python files.
Brecht, double checked and pyc or pyo files arent used because of the (file_extension[3] == '\0') test.

11 years agoNLA SoC: Influence of strip now gets drawn as a greyish curve on the strip
Joshua Leung [Thu, 9 Jul 2009 07:28:45 +0000 (07:28 +0000)]
NLA SoC: Influence of strip now gets drawn as a greyish curve on the strip

I'm not quite happy with how this works yet. It looks quite crude, and might be contributing to the clutter here. Ideas on this welcome.

11 years agoHooking transform operators with manipulator.
Martin Poirier [Thu, 9 Jul 2009 02:45:48 +0000 (02:45 +0000)]
Hooking transform operators with manipulator.

It's just a straight application of the normal operator for now, none of the normal manipulator goodies yet (no draw code and you have to click to confirm).

11 years agoReduce multiplication factor for trackball input in transform (slows down trackball...
Martin Poirier [Thu, 9 Jul 2009 01:52:54 +0000 (01:52 +0000)]
Reduce multiplication factor for trackball input in transform (slows down trackball rotation)

11 years agoCosmetic changes in etch-a-ton drawing code, mostly.
Martin Poirier [Thu, 9 Jul 2009 01:48:08 +0000 (01:48 +0000)]
Cosmetic changes in etch-a-ton drawing code, mostly.

11 years agoNLA SoC: Toggle muting operator - HKEY
Joshua Leung [Thu, 9 Jul 2009 01:32:13 +0000 (01:32 +0000)]
NLA SoC: Toggle muting operator - HKEY

This operator provides a quick way of toggling the muted-status of several strips at the same time.

11 years agoNLA SoC: Assorted cleanups
Joshua Leung [Thu, 9 Jul 2009 01:04:42 +0000 (01:04 +0000)]
NLA SoC: Assorted cleanups

* Some cleanups aimed at giving some (neglible) speedups

* Preparation for NLA-Strip keyframes to be editable

11 years agomingw-config.py prepared for work with python 2.5 and 2.6 controlled by only one...
Remigiusz Fiedler [Wed, 8 Jul 2009 22:49:35 +0000 (22:49 +0000)]
mingw-config.py prepared for work with python 2.5 and 2.6 controlled by only one parameter: BF_PYTHON_VERSION.
It needs the files: libpython25.a and libpython26.a to be copied to \\lib\windows\python\lib\

11 years ago2.5:
Brecht Van Lommel [Wed, 8 Jul 2009 21:41:35 +0000 (21:41 +0000)]
2.5:

* Rename OT_duplicate_add, to OT_duplicate. Also fixes warning
  print since I forgot to do this in the toolbar for MESH.

11 years ago2.5: Mesh and Various Fixes
Brecht Van Lommel [Wed, 8 Jul 2009 21:31:28 +0000 (21:31 +0000)]
2.5: Mesh and Various Fixes

* 3D view Mesh menu works again, but incomplete.
* Add Properties and Toolbar to 3D View menu.
* Added "specials" menus back, vertex/edge/face and general.
* Various fixes in existing mesh operators, some were not working.
* Add MESH_OT_merge.
* Merge all subdivide ops into MESH_OT_subdivide, subdivide code
  changes to make smooth + multi give good results.
* Rename all select inverse ops to *_OT_select_inverse.
* Fix "search for unknown operator" prints at startup, and some
  warnings in py code.
* Don't run .pyc files on startup.
* Remove unused image window header C code.

11 years ago2.5 Sequencer:
Thomas Dinges [Wed, 8 Jul 2009 19:14:32 +0000 (19:14 +0000)]
2.5 Sequencer:

* Replaced some notifiers with proper ones.
* Added "Draw Safe Margin" and "Separate Colors" Features to the menu.

11 years ago2.5
Ton Roosendaal [Wed, 8 Jul 2009 17:49:14 +0000 (17:49 +0000)]
2.5

Makefile still had libradioisty.a

11 years ago== Sequencer ==
Peter Schlaile [Wed, 8 Jul 2009 17:41:45 +0000 (17:41 +0000)]
== Sequencer ==

* Added a lot of update notifiers to RNA
* Fixed strip deallocation (didn't free effect data for some reason...)

11 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Wed, 8 Jul 2009 17:40:42 +0000 (17:40 +0000)]
2.5 MSVC9 projectfiles
* small maintenance: keyval.c removed, some headers in editors/include renamed.

11 years ago2.5: code consistency
Brecht Van Lommel [Wed, 8 Jul 2009 16:17:47 +0000 (16:17 +0000)]
2.5: code consistency

* Rename BIF_transform/retopo.h to ED_transform/retopo.h
  for consistency.
* Move MESH_OT_duplicate_add to editmesh_add.c.
* Remove some code from BIF_gl.h which is not needed there
  anymore.

11 years ago2.5: Various Fixes
Brecht Van Lommel [Wed, 8 Jul 2009 15:34:41 +0000 (15:34 +0000)]
2.5: Various Fixes

* Context panel now draws without header, with arrows, no scene name.
* Softbody vertex group search popup.
* Improve names for autogenerated shortcut keys in menus.
* Make most Select menus in the 3D view header work.
* Fix armature border select selection syncing.
* Add POSE_OT_select_constraint_target,
  MESH_OT_select_by_number_vertices, MESH_OT_select_vertex_path.
* Merge mesh select similar into one operator.
* Don't give MESH_OT_select_random Space hotkey.
* Add DAG_object_flush_update to many mesh edit tools, not calling this
  will crash with modifiers.
* RNA_def_enum_funcs for dynamic enums in operators, but not very useful
  without context yet.
* Fix refresh issue with image window header + editmode.
* Fix drawing of shadow mesh for image painting.
* Remove deprecated uiDefMenuButO and uiDefMenuSep functions.
* Remove keyval.c, code is in wm_keymap.c already.
* Rename WM_operator_redo to WM_operator_props_popup.

11 years ago2.5
Ton Roosendaal [Wed, 8 Jul 2009 15:01:28 +0000 (15:01 +0000)]
2.5

Brought back the basics for transform manipulators. Martin will
hook it all up to new transform system.

Some notes:
- Still uses G.moving
- BIF_do_manipulator() is called as a View3D Operator
  I've tested selecting handles, added a print to confirm
- BIF_GetTransInfo() returns a dummy struct now, just to get
  it running.
- Marked some other issues with XXX

11 years agofix for loading YoFrankie levels in blender 2.5. Multires pointer was corrupt on...
Campbell Barton [Wed, 8 Jul 2009 14:32:03 +0000 (14:32 +0000)]
fix for loading YoFrankie levels in blender 2.5. Multires pointer was corrupt on linked meshes.

Note that the files didnt use multires so something odd is going on, but for now this stops the crash.

11 years ago2.5
Ton Roosendaal [Wed, 8 Jul 2009 14:26:43 +0000 (14:26 +0000)]
2.5

Copied some Python compat stuff to get py 2.3 running... just
googled for it on python.org mailing list.

11 years agoNLA SoC: Little optimisation + Drawing bugfix
Joshua Leung [Wed, 8 Jul 2009 12:30:09 +0000 (12:30 +0000)]
NLA SoC: Little optimisation + Drawing bugfix

* Text labels on NLA-Strips should now draw properly for most short-strips now. Previously, the padding on the text was a bit too extreme, so for very short strips (less than 4 frames or so), the text was often pushed down into the bottom-right corner of view.

* Optimised the keyframe-highlighting code for buttons a bit. Replaced the custom linear-search with the binary-search used when inserting keyframes (and for the 3d-view keyframe-indicator). There should be some theoretical improvements due to this at least...

11 years agoThis fixes some NULL checks.
Peter Schlaile [Wed, 8 Jul 2009 11:18:47 +0000 (11:18 +0000)]
This fixes some NULL checks.

* base was referenced before NULL check
* ob wasn't checked for NULL

Still broken: Add Mesh doesn't seem to work in Object Mode.
But now it doesn't crash anymore...

11 years ago* workaround for PySys_SetArgv() in python3 needing wchar_t
Campbell Barton [Wed, 8 Jul 2009 09:23:49 +0000 (09:23 +0000)]
* workaround for PySys_SetArgv() in python3 needing wchar_t
* PyRNA - id_struct.keyframe_insert("path", index, frame)

11 years agoNLA SoC: Minor UI-Tweaks
Joshua Leung [Wed, 8 Jul 2009 06:32:52 +0000 (06:32 +0000)]
NLA SoC: Minor UI-Tweaks

* When influence/time for NLA-strips are animated, settings in the other panels which used to control these are now greyed out to show that they won't have any impact over the result.

* NKey panel for Graph Editor now opens on Right-Hand Side, just like for NLA Editor. The small sub-region above the Channels region was too troublesome to work with.

11 years agoNLA SoC: Influence/Time properties for strips can now be animated
Joshua Leung [Wed, 8 Jul 2009 05:00:10 +0000 (05:00 +0000)]
NLA SoC: Influence/Time properties for strips can now be animated

* These settings can now be edited + keyframed (using IKEY over the button only for now... other cases will fail)

* Reshuffled some of the keyframing code to make this sort of thing easier to do. Also, restored corrections for NLA-mapping when inserting/removing keyframes.

TODOS:
* animation editors don't show these keyframes yet
* the buttons don't change colour yet to reflect this state. How to do this efficiently?
* allow keyframing of these in more places
* more robust UI handling for this.

11 years agoNLA SoC: Clarifying the error message for adding transitions
Joshua Leung [Tue, 7 Jul 2009 23:33:39 +0000 (23:33 +0000)]
NLA SoC: Clarifying the error message for adding transitions

NOTE: transition strips can only be added between two selected action-clips that have a gap (but no other strips) between them, and are in the same track.

11 years ago2.5
Ton Roosendaal [Tue, 7 Jul 2009 17:30:39 +0000 (17:30 +0000)]
2.5

- Scrollers now only disappear for regions with a fixed total view, like
  lists, buttons, channels. More or less infinite views keep scrollers to
  indicate that you can still pan or zoom further.

- Nodes: put back SHIFT+D "Add duplicate"
  (Also fixed duplicate objects menu name... it should be a bit more
  descriptive)

11 years agoNLA SoC: Meta Strips + F-Modifiers
Joshua Leung [Tue, 7 Jul 2009 12:17:06 +0000 (12:17 +0000)]
NLA SoC: Meta Strips + F-Modifiers

F-Modifiers now work on 'all' types of NLA Strip. To get them working on Meta-strips, F-Modifiers on the Meta strip must be applied on top of those for child strips. For now, this is done by joining the lists of modifiers, and evaluating the joined list.

Currently, Transitions don't work that great with F-Modifiers yet (only the endpoints get evaluated with the F-Modifiers). Solving this is for another time...

11 years agoNLA SoC: Recoded way that Meta-Strips are Evaluated
Joshua Leung [Tue, 7 Jul 2009 11:37:33 +0000 (11:37 +0000)]
NLA SoC: Recoded way that Meta-Strips are Evaluated

Previously, the quick-hack I coded for Meta-strips evaluation didn't really take into account the possibilities to use Meta-Strips as strips in their own right - i.e. reversed, muted, time-mapping-curves, influence-blending - were all unavailable.

This commit makes the aforementioned capabilities of other strips available for Meta-Strips too. The evaluation is now kind-of recursive (as with most of the other methods which take them into account) so that each 'level' of strips get evaluated correctly within their frame-of-reference.

TODO:
* F-Modifier support for Metas...

11 years agoNLA SoC: Fixed bug with NLA-Transform
Joshua Leung [Tue, 7 Jul 2009 10:25:55 +0000 (10:25 +0000)]
NLA SoC: Fixed bug with NLA-Transform

Strip-sorting code was buggy, as it was trying to access an invalid pointer, so the call to sort strips after transform was temporarily disabled in previous commits.

11 years agoNLA SoC: Quick hack - Reversed playback
Joshua Leung [Tue, 7 Jul 2009 07:29:21 +0000 (07:29 +0000)]
NLA SoC: Quick hack - Reversed playback

Animations can now be played back in reverse, by clicking on the reversed-playback button in the TimeLine header beside the play button (NEW ICON NEEDED HERE).

I'm not sure how well this works with sound, but from what I gather, this can be quite useful for animators to use.

11 years ago2.5 filebrowser: previous/next + bugfix + elubie's changes and cleanup
Dalai Felinto [Tue, 7 Jul 2009 07:25:44 +0000 (07:25 +0000)]
2.5 filebrowser: previous/next + bugfix + elubie's changes and cleanup
* Previous/Next Folder browser
* bugfix: "open most recently opened directory".

* Previous and Next functionalities:
- use BACKSPACE to navigate to previous folders
- use SHIFT+BACKSPACE to navigate forward
- once you change the folder by other ways the forward folder list is cleared

* bug fix: the sfile->params->dir set through ED_fileselect_set_params wasn't correct. According to the code taking the settings from the existing (previous) filebrowser is a temp solution. In that case this is a fix for a temp solution :)
(changes in: wm_event_system.c, filesel.c and ED_fileselect.h)

** Andrea(elubie): we can get away of the folderlist_clear_next test if we manually pass a boolean to file_change_dir (e.g. file_change_dir(sfile, true)). I tried not to mess up with your changes here. It's slightly slower (and maybe hacky) but its's more conservative IMHO.

(my first commit to 2.5 ... that was a good reason to put my paper on hold :p)

11 years agoNLA SoC: Current Frame can now be negative
Joshua Leung [Tue, 7 Jul 2009 06:56:29 +0000 (06:56 +0000)]
NLA SoC: Current Frame can now be negative

This commit is quite experimental, and might have to be reverted, but in quite a few places, the cleanups from this commit were already necessary.

* I've left most of the image-handling functions alone, since I'm not sure how well they cope with negative indices.
* Start/End frames cannot be negative for now... any specific reasons why they should be negative?

11 years agoNLA SoC: Small cleanup in Graph Editor struct code (obsolete + commented out stuff)
Joshua Leung [Tue, 7 Jul 2009 06:39:01 +0000 (06:39 +0000)]
NLA SoC: Small cleanup in Graph Editor struct code (obsolete + commented out stuff)

11 years agoNLA SoC: Auto-Snapping Fixes (Transform)
Joshua Leung [Tue, 7 Jul 2009 06:21:38 +0000 (06:21 +0000)]
NLA SoC: Auto-Snapping Fixes (Transform)

Snap to nearest-second works again for NLA and Graph Editors

11 years agoNLA SoC: Fixes for bugs in transform code from previous commit
Joshua Leung [Tue, 7 Jul 2009 06:16:06 +0000 (06:16 +0000)]
NLA SoC: Fixes for bugs in transform code from previous commit

* The code to move strips between tracks now works (though it can still be a bit too eager to change tracks half-way through some transforms).
Strips are moved up/down one strip at a time, depending on whether there is any space in the next-track in the direction you direct it to move in.

* Auto-snapping works again. Also enabled snap-to-marker option for Graph Editor here.

11 years agoNLA SoC: Transform Code for NLA-Strips recoded (still buggy)
Joshua Leung [Tue, 7 Jul 2009 05:41:59 +0000 (05:41 +0000)]
NLA SoC: Transform Code for NLA-Strips recoded (still buggy)

Recoded the Transform code for NLA-Strips so that they can now be moved between strips and will not get truncated when they get moved into other non-moving strips.

Todos:
* The current code for moving strips between tracks is buggy (only goes up, and has a tendency to move up without being told to)
* Auto-snapping doesn't work yet...

11 years agoNLA SoC: Start of integration of Meta-strips in Transform
Joshua Leung [Tue, 7 Jul 2009 02:12:50 +0000 (02:12 +0000)]
NLA SoC: Start of integration of Meta-strips in Transform

* Chains of selected strips are now converted to meta-strips before transforms begin, and converted back afterwards. This simplifies the transform code needed in later stages...

* Transform-flushing code for Meta-Strips should now work. There seems to be a little bit of numeric inaccuracy problems somewhere, as two strips which met at the same frame can get separated when scaling.

* Meta-strips now draw with proper text identification

* Snapping strips now properly clears meta-strips if a moved strip needs to be moved into a new track to be accomodated.

* Fixed a filter used by a selection-operator.

11 years ago2.5
Andrea Weikert [Mon, 6 Jul 2009 17:29:32 +0000 (17:29 +0000)]
2.5
* fix for RNA generation dependency in MSVC projectfiles
* added missing include

11 years agoNLA SoC: Fixes for Meta-Strips and Editing
Joshua Leung [Mon, 6 Jul 2009 12:24:09 +0000 (12:24 +0000)]
NLA SoC: Fixes for Meta-Strips and Editing

* Split strip (YKEY) now plays nicely with Transitions and Metas. Meta strips get split up into their child strips, while transitions are ignored.

* Wrapped Meta_Strip->strips in RNA

* Bugfixes in Meta-strip API functions to silence some runtime-errors...

11 years agoNLA SoC: More work on Meta-Strips
Joshua Leung [Mon, 6 Jul 2009 11:06:34 +0000 (11:06 +0000)]
NLA SoC: More work on Meta-Strips

* Added several API functions for Meta-Strips editing. One of these (flush transform) still needs a few tweaks before it does its job well enough for all cases.

* Meta strips are now drawn with a purple-ish colour. The start/end points of the strips they encompass are shown with lines along the length of the strips, with lines starting from the top indicating start-points and lines starting from the bottom indicating end-points.

* Meta strips can be made (i.e. strips can be assigned to meta-strips) by selecting some strips and pressing Shift-G.
Meta strips can be removed by selecting some meta-strips and pressing Alt-G.

* Strips can now be 'snapped' to start from: the current frame, the nearest frame, the nearest second, or the nearest marker; using the Shift-S hotkey.
'Islands' of adjacent selected strips occurring in the same track are moved together as a single strip so that the start-point of the first strip is on the sepcified time, but all the relative lengths of strips stay the same. Internally, temporary meta-strips are created to facilitate this.

11 years agoNLA SoC: Start of 'Meta' Strips
Joshua Leung [Mon, 6 Jul 2009 03:44:44 +0000 (03:44 +0000)]
NLA SoC: Start of 'Meta' Strips

Refactored the backend code/API's to support 'meta' strips (i.e. strips containing other strips). These have been implemented to be nested to 'unlimited' depths (in terms of common usages that is, though there is a very remote chance of stack-overflow in theoretrical evil cases only that shouldn't ever be encountered in production).

This paves the way for implementing the necessary tweaks needed for the transform code (in addition to some cool user-level tricks)

11 years ago2.5 filebrowser
Andrea Weikert [Sun, 5 Jul 2009 22:26:43 +0000 (22:26 +0000)]
2.5 filebrowser
* bringing back file numbering operator (PADPLUSKEY, PADMINUS)
* Note: discovered conflicting key with View2D zooming that causes it to not work in panel area.

11 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Sun, 5 Jul 2009 19:11:29 +0000 (19:11 +0000)]
2.5 MSVC9 projectfiles
* RNA project cleanup. Better file naming and first attempt at deleting files before rebuilding.
* editors/object/object_vgroup.c added

11 years agoAdded a particle instance modifier option to use particle size.
Janne Karhu [Sun, 5 Jul 2009 12:36:20 +0000 (12:36 +0000)]
Added a particle instance modifier option to use particle size.

11 years agoRendering animations with particle trails cached.
Janne Karhu [Sat, 4 Jul 2009 12:09:21 +0000 (12:09 +0000)]
Rendering animations with particle trails cached.

11 years ago2.5 Physic Buttons:
Thomas Dinges [Sat, 4 Jul 2009 08:50:41 +0000 (08:50 +0000)]
2.5 Physic Buttons:

* Some minor layout cleanup to the field panel.

11 years agoA bunch of fun stuff now possible because of new pointcache code:
Janne Karhu [Sat, 4 Jul 2009 03:50:12 +0000 (03:50 +0000)]
A bunch of fun stuff now possible because of new pointcache code:
* Baked normal particles can now use the "Path" visualization.
* Path "max length" & "abs length" are now history:
- New option to set path start & end times + random variation to length.
- Much more flexible (and calculated better) than previous options.
- This works with parents, children, hair & normal particles unlike old length option.
- Only known issue for now is that children from faces don't get calculated correctly when using path start time.
* New option "trails" for "halo", "line" and "billboard" visualizations:
- Draws user controllable number of particle instances along particles path backwards from current position.
- Works with children too for cool/weird visualizations that weren't possible before.
* Normal particle children's velocities are now approximated better when needed so that "line" visualization trails will look nice.
* New particle instance modifier options:
- "path"-option works better and has controllable (max)position along path (with random variation possible).
- "keep shape"-option for hair, keyed, or baked particles allows to place the instances to a single point (with random variation possible) along particle path.
- "axis" option to make rotation handling better (still not perfect, but will have to do for now).

Some fixes & cleanup done along the way:
* Random path length didn't work for non-child particles.
* Cached & unborn particles weren't reset to emit locations.
* Particle numbers weren't drawn in the correct place.
* Setting proper render & draw visualizations was lost somewhere when initializing new particle settings.
* Changing child mode wasn't working correctly.
* Some cleanup & modularization of particle child effector code and particle drawing & rendering code.
* Object & group visualizations didn't work.
* Child simplification didn't work.

11 years ago2.5 Physic Buttons:
Thomas Dinges [Fri, 3 Jul 2009 20:03:24 +0000 (20:03 +0000)]
2.5 Physic Buttons:

* Added Softbody buttons. Patch by Wahooney. Thanks.
I did some minor code cleanup.

* Collision settings now grey out, when disabled.

11 years ago2.5:
Brecht Van Lommel [Fri, 3 Jul 2009 19:56:19 +0000 (19:56 +0000)]
2.5:

* Fix crash in python with enum properties, and don't throw
  error if no matching identifier is found. This shouldn't
  happen, but it should break a python script either, which
  is not at fault.
* Fix a wrong variable initialization in fluidsim.

11 years ago2.5 Physic Buttons:
Thomas Dinges [Fri, 3 Jul 2009 19:12:59 +0000 (19:12 +0000)]
2.5 Physic Buttons:

* Added Fluid Buttons.

11 years ago2.5/Multires:
Nicholas Bishop [Fri, 3 Jul 2009 15:59:59 +0000 (15:59 +0000)]
2.5/Multires:

Missed this somehow when merging the multires branch? Have to make sure that multires displacements are up-to-date before doing a modifier apply.

11 years ago2.5/Sculpt:
Nicholas Bishop [Fri, 3 Jul 2009 15:31:23 +0000 (15:31 +0000)]
2.5/Sculpt:

Bugfix, mesh face normals not getting updated because a list was freed in the wrong place.

11 years ago2.5
Brecht Van Lommel [Fri, 3 Jul 2009 15:23:33 +0000 (15:23 +0000)]
2.5

* Lattices: properties editable, editmode operators, menus working
  again. As a bonus you can now edit u/v/w in editmode.
* Shape Keys: some code cleanup, and added more buttons. The
  value/min/max buttons don't work correct yet though.
* Fix issue with uv textures, vertex colors not being visible outside
  editmode, and a few other issue. Mesh.edit_mesh is now NULL when
  not in editmode.

11 years ago2.5 Physic Buttons:
Thomas Dinges [Fri, 3 Jul 2009 14:32:27 +0000 (14:32 +0000)]
2.5 Physic Buttons:

* Added some collision buttons. Patch by Wahooney. Thanks!

11 years ago2.5 Physic Buttons:
Thomas Dinges [Fri, 3 Jul 2009 14:11:00 +0000 (14:11 +0000)]
2.5 Physic Buttons:

Don't show panels when object is not a mesh.

11 years ago2.5
Ton Roosendaal [Fri, 3 Jul 2009 13:48:42 +0000 (13:48 +0000)]
2.5

Windows #ifdef code missed semicolon.

11 years ago2.5
Ton Roosendaal [Fri, 3 Jul 2009 13:21:09 +0000 (13:21 +0000)]
2.5

More scroller work:

- Added subtle arrow widgets to denote a scroller can zoom the view.
- Made zoom symmetric (old convention to only zoom "one side" just
  worked badly)

11 years agofix for own missing var in recent commit.
Campbell Barton [Fri, 3 Jul 2009 11:46:46 +0000 (11:46 +0000)]
fix for own missing var in recent commit.

11 years ago2.5 - Additional warning fix
Joshua Leung [Fri, 3 Jul 2009 11:24:52 +0000 (11:24 +0000)]
2.5 - Additional warning fix

11 years ago2.5 - Quick compiling fix for Ton's commit
Joshua Leung [Fri, 3 Jul 2009 11:22:32 +0000 (11:22 +0000)]
2.5 - Quick compiling fix for Ton's commit

Patch (http://www.pasteall.org/6436/diff) by skejoe. Thanks.

11 years ago2.5
Ton Roosendaal [Fri, 3 Jul 2009 10:54:39 +0000 (10:54 +0000)]
2.5

Upgrading text editor to draw new scrollbar too.

11 years agoNLA SoC: Muting and Graph-Editor Curve visibility for (Action) Groups
Joshua Leung [Fri, 3 Jul 2009 10:28:10 +0000 (10:28 +0000)]
NLA SoC: Muting and Graph-Editor Curve visibility for (Action) Groups

Groups (the Action variety) can now be muted, and also be set to not be drawn in the Graph Editor. These settings get applied to all the F-Curves within the group, overriding any settings individual F-Curves might have, allowing users to quickly mute or hide groups of curves without having to go through clicking on all of them.

Also, added a flag that can be used to set the curve visiblity on AnimData level too. This will be enabled in a future commit.

11 years ago* Fix for compiling with cmake on OS X. Hopefully this goes ok for other platforms...
Matt Ebb [Fri, 3 Jul 2009 09:23:12 +0000 (09:23 +0000)]
* Fix for compiling with cmake on OS X. Hopefully this goes ok for other platforms too.

11 years agoNLA SoC: Toggle for 'Editing in Place'
Joshua Leung [Fri, 3 Jul 2009 04:48:44 +0000 (04:48 +0000)]
NLA SoC: Toggle for 'Editing in Place'

The 'pin' icon beside the name of the active Action when tweaking some strip's action can be used to toggle between editing the Action's keyframes in 'mapped' time or in 'un-mapped' time.

11 years agoset the PYTHONPATH to BLI_gethome_folder("python") if it exists.
Campbell Barton [Fri, 3 Jul 2009 04:38:55 +0000 (04:38 +0000)]
set the PYTHONPATH to BLI_gethome_folder("python") if it exists.

This lets us distribute blender with our own python module directory (next to ui and io), and avoids the need for a shell script to start blender.

11 years agoNLA SoC: Quick hack to get layer buttons in 3D view updating visible layers correctly.
Joshua Leung [Fri, 3 Jul 2009 04:24:19 +0000 (04:24 +0000)]
NLA SoC: Quick hack to get layer buttons in 3D view updating visible layers correctly.

Now it is possible to load old files and be able to switch layers to show/hide objects AND have that reflected in the Animation Editors which rely on the scene layers being set correctly.

11 years agoNLA SoC: Merge from 2.5
Joshua Leung [Fri, 3 Jul 2009 01:57:38 +0000 (01:57 +0000)]
NLA SoC: Merge from 2.5

21301 to 21329

11 years agoNLA SoC: Assorted fixes
Joshua Leung [Fri, 3 Jul 2009 01:10:46 +0000 (01:10 +0000)]
NLA SoC: Assorted fixes

* Made NLA Editing functions more aware of transitions.
- A transition can only be added between a pair of action-clips. Previous, two transitions could be added next to each other, which has undefined behaviour
- Deleting a strip with transition(s) on either side will remove the transitions too. Feedback welcome on this
- The 'type' setting for NLA-Strips is no longer editable. This was dangerous as it could result in transitions with undefined behaviour (though nothing would happen).

* Menus for adding F-Modifiers now only show relevant modifiers (i.e. 'Invalid' is not included in the list, and 'Cycles' doesn't need to be shown for NLA since we've got repeat)

* Function Generator and Noise F-Modifiers now have complete GUI's. A few settings were missed during the porting process.

* F-Modifier buttons now have their source-ID's included in the RNA Pointers used. This didn't get them animateable directly, but is a step closer.

11 years agoNLA SoC: Added buttons for animating NLA-Strip Influence/Speed
Joshua Leung [Thu, 2 Jul 2009 23:36:16 +0000 (23:36 +0000)]
NLA SoC: Added buttons for animating NLA-Strip Influence/Speed

These buttons are found in the Evaluation panel, but are currently disabled as I've yet to add the proper code to ensure that animating these will work correctly. They will hopefully be working before the end of the day.

11 years agoNLA SoC: UI-Drawing for Generator and Envelope FModifiers Restored
Joshua Leung [Thu, 2 Jul 2009 23:27:11 +0000 (23:27 +0000)]
NLA SoC: UI-Drawing for Generator and Envelope FModifiers Restored

These now use a hybrid drawing approach - using the layout engine for just layouts, but still mostly using old-style buttons in many places where button callbacks and/or special data-access methods are needed (or where RNA wrapping isn't in place yet).

11 years agocmake support for building without fluidsim
Campbell Barton [Thu, 2 Jul 2009 22:22:35 +0000 (22:22 +0000)]
cmake support for building without fluidsim

11 years ago2.5: Physics Buttons
Brecht Van Lommel [Thu, 2 Jul 2009 19:41:31 +0000 (19:41 +0000)]
2.5: Physics Buttons

All kinds of changes to get it ready for UI layouts. This means RNA
and operators should be working correct, but most buttons are still
not actually there yet.

* Added near empty soft body, fluid, field and collision panels,
  tweaks to cloth panels.
* Fluid bake works, but without escape or showing any progress.
* Fluid/Softbody/Cloth/Collision can now be both added as modifiers
  or in the physics panels.
* Missing: fields & soft body for particles.
* Missing: proper updating softbodies, guess this code still needs
  updates after pointcache refactor?

11 years ago2.5
Ton Roosendaal [Thu, 2 Jul 2009 18:12:46 +0000 (18:12 +0000)]
2.5

Cleanup of scroller drawing in 2D windows.

Before:
http://download.blender.org/institute/rt11.jpg
After:
http://download.blender.org/institute/rt12.jpg

Will add 'zoom' widget circles later, as mockupped here:
http://www.reynish.com/files/blender25/fcurve_scrollbar.png

Also note the scale values are inside scroller; drawing it
on top conflicts with current frame item and markers.

Currently scroller disappear entirely when view is total.

For Joshua:
To make sliders behave nicely, the boundbox (v2d->tot) has to
be refreshed on each change. I've added it in graph drawing
now, but it could be notifier based I guess... not sure what
the correct anim api call would be. Can discuss tomorrow!

On todo:
Layout config hints so people can make scroller positions swap.

11 years agoNLA SoC: FModifier drawing converted to use Layout Engine
Joshua Leung [Thu, 2 Jul 2009 12:41:03 +0000 (12:41 +0000)]
NLA SoC: FModifier drawing converted to use Layout Engine

* Most of the F-Modifiers have been ported to use the layout engine + RNA for drawing their buttons now. This plays much nicer with various button-layouts.
--> As a nice demo, try adding a Noise Modifier to a NLA-strip, and change the 'size' setting to about 2 to see some effects.

* Generator and Envelope modifiers haven't been ported yet since they're quite complex (requiring more time + energy), and as such, have been made to have some temporary error prints instead. Will check on this tomorrow.

* Finished/cleaned up the RNA-wrapping of most FModifiers.

TODO's (help requested... Brecht?):
Generator modifier's UI cannot be wrapped yet using the layout engine (though I might try using the old system only), as I'm having some trouble wrapping the coefficients array for this (see rna_fcurve.c - rna_def_fmodifier_generator())

11 years agoout own Py_GetPath() function to replace pythons, so we can bundle python modules...
Campbell Barton [Thu, 2 Jul 2009 12:11:20 +0000 (12:11 +0000)]
out own Py_GetPath() function to replace pythons, so we can bundle python modules with blender, #if 0'd for now but having it is useful for testing.

This works by copying /usr/lib/python3.1 to a dir called "python", next to blenders "ui" and "io" dirs.

11 years ago2.5
Ton Roosendaal [Thu, 2 Jul 2009 11:24:27 +0000 (11:24 +0000)]
2.5

Python definition of view3d context-depending toolbar. Feel free to edit
it into anything useful. :)

11 years ago2.5
Ton Roosendaal [Thu, 2 Jul 2009 11:23:19 +0000 (11:23 +0000)]
2.5

More toolbar functionality for workflow review.

- Split the region in two parts, bottom has the Tool Properties, the
  top part shows 2 panels, one for python defined tools, other for a
  "tool shelf" which (later) will get saved in files.
- Added a full context driven framework for this toolbar, showing
  the tools depending on 3D window 'mode'. Both python defined tools
  as the shelf respect this. So - for example - you will see different
  tools in editmode mesh, as in vertex paint mode, etc.
- First template for the python tools will be committed after this commit;
  it has placeholder tools to just show/test functioning.

NOTE: if you had saved a layout that shows tools region, open/close it
once to get the new region created for properties.

TODO:

- Moving paint properties to tool settings
- Test a layout with horizontal toolbar (without properties)
- Bring back floating panels, and put tool-properties here. (as option)

11 years agoNLA SoC: F-Modifiers working on NLA Strips
Joshua Leung [Thu, 2 Jul 2009 06:41:10 +0000 (06:41 +0000)]
NLA SoC: F-Modifiers working on NLA Strips

* Using the Ctrl-Shift-M hotkey, F-Modifiers can be added to all the selected strips.

* F-Modifiers can also be added/tweaked from the NLA N-Key properties. The UI now uses the same code as for the graph editor ones.

The UI drawing here is currently messed up from the NLA side, since it seems combining normal layout stuff and old-style uiBlocks doesn't seem to work too well (BUT! the buttons are at least functional).
Next up, I'll need to recode the buttons panel for the Graph Editor so that all of the drawing can be migrated over to use the new layout engine.

11 years agoNLA SoC: Separating out F-Modifier API
Joshua Leung [Thu, 2 Jul 2009 05:25:14 +0000 (05:25 +0000)]
NLA SoC: Separating out F-Modifier API

* F-Modifier API is now in its own file in blenkernel
* Renamed and refactored these so that they're no dependent on F-Curves, since all they really used was the fcu->modifiers list
* Added missing license blocks to a few files

11 years agoNLA SoC: Separating F-Modifier UI drawing into its own file
Joshua Leung [Thu, 2 Jul 2009 04:47:36 +0000 (04:47 +0000)]
NLA SoC: Separating F-Modifier UI drawing into its own file

* F-Modifier UI drawing/handling is now defined in a separate file so that it will be more suitable for inclusion into the NLA Editor's buttons.

* Started removing F-Curve dependence from the modifier drawing code, which wasn't strictly necessary

* Fixed F-Curve RNA wrapping to correctly use FPoints instead of the bulkier BPoints. Although nobody was likely to have encountered bugs here yet, this would almost certainly have contributed to some segfaults/data corruption along the track.

11 years agoNLA SoC: Bugfix for Auto-Keyframing version patching
Joshua Leung [Thu, 2 Jul 2009 03:50:20 +0000 (03:50 +0000)]
NLA SoC: Bugfix for Auto-Keyframing version patching

When auto-keying is enabled, the insertion mode is no-longer blank. The version patching code now takes this into account, but the conversion doesn't work for existing .b25.blend defaults files though.

11 years agoNLA SoC: Merge from 2.5
Joshua Leung [Thu, 2 Jul 2009 03:32:57 +0000 (03:32 +0000)]
NLA SoC: Merge from 2.5

21210 to 21300

Note to self: the next merge will be messy again, since 2 commits occurred this one was complete

11 years agoNLA SoC: Adding some files that seem to have been missed during some merges. Hopefull...
Joshua Leung [Thu, 2 Jul 2009 02:53:18 +0000 (02:53 +0000)]
NLA SoC: Adding some files that seem to have been missed during some merges. Hopefully all of these should really be in the repositry...

11 years agoNLA SoC: Separated 'Built-In Function Generator' FModifier into a separate FModifier
Joshua Leung [Thu, 2 Jul 2009 02:12:37 +0000 (02:12 +0000)]
NLA SoC: Separated 'Built-In Function Generator' FModifier into a separate FModifier

Started cleaning up FModifiers in preparation for allowing them to be used on NLA Strips.

This commit separates the 'Built-in Function' mode for the Generator modifier out into its own modifier, since it was being quite frequently used (and the RNA wrapping for this used to be quite hackish).

BACKWARDS COMPATABILITY WARNING:
Old files with FModifiers saved (i.e. old 2.5 files, but not any others) will not load correctly as a result of these changes (the wrong modifiers will be shown). I've decided that there are not likely to be many files affected by this yet, but doing this will result in a much nicer modifiers-define list in the long run.

11 years agoNLA SoC: Proper poll callbacks for Graph Editor
Joshua Leung [Thu, 2 Jul 2009 01:01:18 +0000 (01:01 +0000)]
NLA SoC: Proper poll callbacks for Graph Editor

For now, some of these polls may be a bit too restrictive, but at least we have some unified+cleaned bases to work from now (instead of relying on the generic ED_operator_area_active).

11 years ago2.5: Lists for vertex groups, shape keys, uvs, vertex colors.
Brecht Van Lommel [Wed, 1 Jul 2009 22:25:49 +0000 (22:25 +0000)]
2.5: Lists for vertex groups, shape keys, uvs, vertex colors.

RNA
* Added the relevant active_*_index properties, with proper
  get/set/range, updates and notifiers.
* Context.tool_settings.
* ToolSettings.vertex_group_weight.

Operators
* MESH_OT_uv_texture_add/remove
* MESH_OT_vertex_color_add/remove
* MESH_OT_sticky_add/remove
* OBJECT_OT_vertex_group_add/remove/assign/remove_from/
  select/deselect/copy/copy_to_linked
* OBJECT_OT_shape_key_add/remove

UI
* Some updates and cleanups in list template code.

Known issue: when going in & out of editmode, uv textures and vertex
colors dissappear. I thought me->edit_mesh would be NULL when not in
edit mode but it is not?