blender-staging.git
11 years ago* Brought back special normal recalc for sculpt (only recalculates modified faces...
Nicholas Bishop [Thu, 29 Jan 2009 03:50:46 +0000 (03:50 +0000)]
* Brought back special normal recalc for sculpt (only recalculates modified faces/verts)
* Means that full object recalc isn't done, so multires works more as expected now
* Moved mesh element cache back to sculpt session (from sculpt cache), really makes more sense there

11 years agoAnimato: Conversion code + drawing tweaks
Joshua Leung [Thu, 29 Jan 2009 03:43:04 +0000 (03:43 +0000)]
Animato: Conversion code + drawing tweaks

* Recoded the conversion code so that all data gets converted. Previously, some IPO's and Actions (notably the ones used for Action Constraints) were not ported across.

* Made F-Curve drawing use more saturated colours to make them more visible. I'm not sure whether this works well in practice.

* Restored some horizontal bounding-box checks to optimise drawing.

11 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 23:29:27 +0000 (23:29 +0000)]
2.5:
* Automatic shortcut keys in menus now compare operator properties as well.
  Implemented IDP_EqualsProperties for this.
* I imagine all these compares may be a bit slow, for this case it's not
  so bad though because it only happens for one menu when it is opened.

11 years agoAnimation Editors: Tweaking/Refresh Issues
Joshua Leung [Wed, 28 Jan 2009 22:51:42 +0000 (22:51 +0000)]
Animation Editors: Tweaking/Refresh Issues

* Added 'select-tweak' functionality to DopeSheet
* Added proper notifiers for Graph Editor updates

11 years ago* Was missing checks for scene->ed which crashed blender when using the sequencer...
Campbell Barton [Wed, 28 Jan 2009 22:36:34 +0000 (22:36 +0000)]
* Was missing checks for scene->ed which crashed blender when using the sequencer for the first time.
* Added WM_OT_tweak_gesture operator for select, drag
* Sequencer select operator now returns OPERATOR_FINISHED|OPERATOR_PASS_THROUGH

11 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 21:43:43 +0000 (21:43 +0000)]
2.5:
* UV Editor Transform, translate, rotate, scale, live unwrap, snap, gesture,
  etc work.
* Also for selection operators, used OPERATOR_FINISHED|OPERATOR_PASS_THROUGH
  instead of just OPERATOR_PASS_THROUGH to make gestures work, seems more
  correct to me.

11 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 19:42:49 +0000 (19:42 +0000)]
2.5:

* Fix using enter key for selecting item in a submenu.
* Fix some non working buttons in nodes.
* Fix memory leak when using glsl.
* Change triple buffer proxy test a bit, hopefully this succeeds
  on more cards now.

11 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 18:26:47 +0000 (18:26 +0000)]
2.5

Some drawing tweaks for animsys:

- added notifier ND_KEYS type, to send proper notes around.
  now insert-key redraws fcurve/action view
- made slider-draggers disappear when view is total or bigger.

Also experimented with making sliders go away entirely, but
this conflicts too much with current code for channel lists.

Ali: I think you have to make call that calculates the 'tot'
for channels, and run this in region listener, including the
totRect update for view2d.

The 'minsize' for channels also fails when there's a slider,
it always doesn't fit then :)

11 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Wed, 28 Jan 2009 18:02:15 +0000 (18:02 +0000)]
2.5 MSVC9 projectfiles
updates:
* windowmanager/wm_draw.c
* editors/space_ipo: ipo_draw.c, ipo_edit.c and ipo_ops.c

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

Made 'select-tweak-grab' work in 3d window, fcurve and nodes.
For nodes it works with both left/right, the others follow
user preset for select.

Tweak is a WM event, which also follows user preset for
tablet-style tweaks (release = apply).

You enable tweak events with an operator WM_OT_tweak_gesture.
Keymap entries can assign to left/middle/right button or to
action/select button tweaks.

11 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 13:16:43 +0000 (13:16 +0000)]
2.5

Joshua asked me to check depsgraph drivers; i've added the
very minimal case, but further I'm stuck, need help.
Also made region listeners for Graph Editor work for all.

11 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 12:28:50 +0000 (12:28 +0000)]
2.5

Bugfix in last commit: the read-file hotkey (enter) has to be in
the window handler queue, so it nicely exits all queues without
using free'd data.

11 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 11:27:25 +0000 (11:27 +0000)]
2.5

Filewindow: restored some usability issues :)
(Andrea: Hope you're OK, I needed to test stuff, and
file open was a pain!)

- F1: shows last saved/opened file now
- Enter key loads, ESC cancels
- Hilites on mousemove now show same theme colors as before
- Enabled intended roundbox draw (was added to UI api)
- Tweaked roundbox hilites to nicely surround text
- Text was drawing too close to collumn dividers
- Brought back missing glDisable(GL_BLEND), messed with draw
- On file-open, mouse position is used to show active file

11 years agoGraph Editor: Restoring most tools
Joshua Leung [Wed, 28 Jan 2009 09:55:36 +0000 (09:55 +0000)]
Graph Editor: Restoring most tools

* Copy/Paste still needs to be cleaned up to be functional. Auto-set preview range + View All also need some work to become functional...
* Smooth has been moved to Alt-O hotkey, as Shift-O was taken for Sample
* Renamed a few operators for DopeSheet to be more in line with Graph Editor ones, and to be less obscure.
* The 'join' and 'remove doubles' tools are not likely to be restored. I think that a few of the new tools cover this lack anyway. We can restore them if there is a real need.

* Record tool needs a rethink to be genuinely useful, so it's not included here anymore.
A note for anyone wanting to play with implementing this: store the sampled points using the new FPoint type in the FCurve instead of using BezTriples, as FPoints are used for storing sampled/baked data.

11 years agouse wine for cross compiling
Campbell Barton [Wed, 28 Jan 2009 09:32:31 +0000 (09:32 +0000)]
use wine for cross compiling

11 years agoGraph Editor: Bringing back editing tools
Joshua Leung [Wed, 28 Jan 2009 06:32:47 +0000 (06:32 +0000)]
Graph Editor: Bringing back editing tools

* Snap + Mirror Keyframes (Shift-S and Shift-M)
* Set Handle/Interpolation type
* Snap current frame to selected keyframes (Ctrl-Shift-S) from the DopeSheet

* Toggle visibility of all handles (Ctrl H) from AnimSys2 branch also ported

11 years agoGraph Editor:
Joshua Leung [Wed, 28 Jan 2009 03:22:37 +0000 (03:22 +0000)]
Graph Editor:

Added some more buttons and a few menu entries in the View menu that simplify the viewport.

11 years agoGraph Editor - Restored all Transform tools
Joshua Leung [Wed, 28 Jan 2009 02:56:58 +0000 (02:56 +0000)]
Graph Editor - Restored all Transform tools

I've ported the transform tools for this editor as they existed in the AnimSys2 branch (minus some of the experimental pivot options which were not useful enough yet).

Hotkeys are:
* GKEY - transforms points as always
* RKEY - rotates points (only useful for a single 'knot')
* SKEY - scales points
* EKEY - like in the DopeSheet, the 'extend' translation tool only moves all the keyframes on the same side of the current frame indicator as the mouse

Useful tweaks ported from AnimSys2 include:
* Auto-snapping is on by default for time-values on the keyframes only. Handles are not snapped (or shouldn't be).
* Rotating/Scaling new keyframes using default handles (i.e. Auto-Handles) now works, as the handle is now converted to aligned so that changes can be seen.

11 years agoAnimato - Driver + ShapeKey bugfixes
Joshua Leung [Wed, 28 Jan 2009 00:50:56 +0000 (00:50 +0000)]
Animato - Driver + ShapeKey bugfixes

* ShapeKey conversions should now go to the correct places
* Added fix for drivers to prevent crashes when no driver object is provided (Franky from BBB seems to have one such driver for some reason).
* Temporarily disabled a check when evaluating drivers for whether the driver is tagged for evaluation. Drivers still need to be correctly tagged AND ordered by the Depsgraph to work correctly.

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 19:32:44 +0000 (19:32 +0000)]
2.5

Added support in threaded compositor to copy the viewer
image safely away, prevents crashing especially for
people using blender -E or redrawing viewer while it
composites.

(Note; reloading images in nodes, render result, and
probably other cases have to be checked still)

11 years agoWas missing TRUE so I included extra header that had it,
Kent Mein [Tue, 27 Jan 2009 18:36:58 +0000 (18:36 +0000)]
Was missing TRUE so I included extra header that had it,
also fixed a call that had wrong number of args.

Kent

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 18:10:14 +0000 (18:10 +0000)]
2.5

Bugfix; preventing crash on dividing by zero int.

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 17:54:49 +0000 (17:54 +0000)]
2.5

Crash in node editor, when you start a new composite.
Was missing check for scene pointer

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 17:12:40 +0000 (17:12 +0000)]
2.5

Compositor now uses threaded jobs.

- updates happen per preview node! Check this file for
  fun: http://www.blender.org/bf/composite_image.blend
  (any compo node could get preview!)
- had to ensure the composite data gets fully copied before
  it executes thread, so editing is not frustrated.
- put back node buttons (missing init)
- added WM_jobs api call to check for running job,
  illustrated with red light icon in 'use nodes' button.
- added another callback to WM_jobs, to initialize.
  use this init to ensure you only do it when job really
  starts.
- added an extra notifier option for WM_jobs, to signal
  finished job (like redraw image view)
- fixed file read error, it copied the screen it read,
  instead of using it.
- commented out annoying prints for missing ops in imagewin

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 12:49:44 +0000 (12:49 +0000)]
2.5

Make space_ipo compile for make

11 years agoAnimato - Bugfixes + More conversion code
Joshua Leung [Tue, 27 Jan 2009 11:31:30 +0000 (11:31 +0000)]
Animato - Bugfixes + More conversion code

* BorderSelect in Graph Editor now works. Was a silly 1 char missing typo.
* Added conversion code for lamps and hooked up code for constraints.

11 years agoQuick fix - Alt-B in Graph Editor works again... normal BKEY still doesn't though
Joshua Leung [Tue, 27 Jan 2009 11:14:02 +0000 (11:14 +0000)]
Quick fix - Alt-B in Graph Editor works again... normal BKEY still doesn't though

11 years agoGraph Editor:
Joshua Leung [Tue, 27 Jan 2009 11:09:30 +0000 (11:09 +0000)]
Graph Editor:

* Cleaned up code for borderselect with BKEY. There's still a bug here where y-values don't seem to be getting properly checked, so nothing seems to happen.

* Set up some code for transforming keyframes. It currently uses the wrong code though (i.e. it uses the code for Action Editor which is 1D not 2D, and doesn't have some of the special checks needed). More work on this later.

11 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 08:36:09 +0000 (08:36 +0000)]
2.5

Fix: icons didnt show for uiMenu api.

11 years agoGraph Editor - Selection Tools
Joshua Leung [Tue, 27 Jan 2009 05:04:23 +0000 (05:04 +0000)]
Graph Editor - Selection Tools

* Mouse-Select and DeSelect All work again
* Added access to constraint 'influence' value

11 years ago* Struct-ified user preferences RNA
Matt Ebb [Tue, 27 Jan 2009 04:37:12 +0000 (04:37 +0000)]
* Struct-ified user preferences RNA

11 years ago2.5 - Bugfixes for loading ManCandy
Joshua Leung [Tue, 27 Jan 2009 02:31:39 +0000 (02:31 +0000)]
2.5 - Bugfixes for loading ManCandy

* Objects parented to bones now load correctly again (so Mancandy no longer looks like he had a run-in with a lawn mulcher). Was caused by a typo. I'm not sure how that got in there (or who did it)

* Action/Graph Editors would crash when loading files with Materials with some drivers.

11 years ago 2.5
Michael Fox [Mon, 26 Jan 2009 23:58:56 +0000 (23:58 +0000)]
  2.5
******
small commit just porting the makeparent menu to use the new menu contsruction system

11 years agoGraph Editor: Added files + Bugfixes
Joshua Leung [Mon, 26 Jan 2009 23:18:27 +0000 (23:18 +0000)]
Graph Editor: Added files + Bugfixes

* Copied files containing code for tools from Action Editor to use as a base for the Graph Editor's tools. The toolsets are now very similar, so it should just be a case of making a few tweaks here and there. Currently all of these tools are #if-def'd out, as there are still a few things to clean up.
(BUILDSYSTEM MAINTAINERS BEWARE!)

* Tweaked some UI stuff (width of mode selector in header, names in the spacetype choosing menu)

* Fixed a few bugs which were causing crashes when loading old files with IPO Editors open.

11 years agoAdded some code in sculpt and RNA for textures with type none. Hopefully fixes the...
Nicholas Bishop [Mon, 26 Jan 2009 21:32:22 +0000 (21:32 +0000)]
Added some code in sculpt and RNA for textures with type none. Hopefully fixes the problem with sculpt not working in 2.5.

11 years ago2.5
Ton Roosendaal [Mon, 26 Jan 2009 15:23:29 +0000 (15:23 +0000)]
2.5

Added add-primitive for Curve objects.
Shift+A, works as usual in our outside editmode.

11 years ago2.5
Ton Roosendaal [Mon, 26 Jan 2009 15:22:10 +0000 (15:22 +0000)]
2.5

Bugfix: having multiple windows didnt read events anymore for other
windows. Caused by too much security escapes in event handlers.

11 years agoAnimato/2.5 - Graph Editor (i.e. the new 'IPO Editor')
Joshua Leung [Mon, 26 Jan 2009 11:33:16 +0000 (11:33 +0000)]
Animato/2.5 - Graph Editor (i.e. the new 'IPO Editor')

This commit brings back the drawing code for the 'Graph Editor'. I've decided to call it this, as currently it can show either F-Curves for Animation stored in Actions, or F-Curves for Drivers.

Currently, it shows all curves, since some of the necessary filtering code (i.e. for limiting curve visibility) hasn't been put in place yet. At least this serves as good proof that we can have F-Curves from multiple sources at least.

It should be noted that the code still has to be modified to work with some of the new Animato features, such as F-Curve Modifiers (cycles are an example of one of the features that use this). Also, a nicer way to set the colours of the curves needs to be investigated.

Notes:
* Fixed a few bugs in RNA User-Preferences wrapping

* The keyframe drawing uses the new-style drawing for handles from AnimSys2. There's a minor bug that sometimes occurs, where a distorted handle gets drawn at the origin of the grid on the first run. Hints anyone?

* Removed most of the old data from SpaceIpo struct, as the new code uses that. Maybe later, the directories/files at least should get renamed.

* Removed ancient hack for NVidia/TNT drivers. It is probably no longer needed, but could be restored if someone needs it.

11 years ago* Added WM_operator_filesel which can be used for an operators invoke function (like...
Campbell Barton [Mon, 26 Jan 2009 09:13:15 +0000 (09:13 +0000)]
* Added WM_operator_filesel which can be used for an operators invoke function (like WM_operator_confirm).
It opens the files selector if "filename" property has not been set, else it executes the operator directly. Brecht, you might want to check, currently only sequencer add operators use it.
* Added back Effects menu back, replaced SEQUENCER_OT_add_color_strip with SEQUENCER_OT_add_effect_strip.
* Made sequencer header use operator UI functions.
* gcc complains when char's are used as array indicies when they are not explicitly signed/unsigned, corrected previous change for vpaint to silence this error.

11 years ago2.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r17853...
Brecht Van Lommel [Mon, 26 Jan 2009 08:34:40 +0000 (08:34 +0000)]
2.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r17853:HEAD

11 years ago2.5 DopeSheet/Action Editor
Joshua Leung [Mon, 26 Jan 2009 04:13:38 +0000 (04:13 +0000)]
2.5 DopeSheet/Action Editor

* Made the various datatypes in the DopeSheet get shown again (NOTE: some of the types that don't get conversions to Animato yet may need some further checking).
* Did some code cleanup to allow F-Curve channels to always show RNA-based names correctly

11 years agoAdded radial control support to vpaint and wpaint. Added undo pushes as well.
Nicholas Bishop [Sun, 25 Jan 2009 21:02:52 +0000 (21:02 +0000)]
Added radial control support to vpaint and wpaint. Added undo pushes as well.

11 years ago2.5
Ton Roosendaal [Sun, 25 Jan 2009 20:22:05 +0000 (20:22 +0000)]
2.5

Simple toolbox-style menu system. Brecht will review it
though, and/or check on way to use it for menus.
I tried to avoid uiBlock and rna stuff all over. :)

Quick image test:
http://www.blender.org/bf/rt.jpg

Examples you can read in:
- editors/screen/screen_ops.c:testing123() (press F5)
- editors/object/object_edit.c:object_add_primitive_invoke()
  (press SHIFT+A)

Concept is simple:

uiMenuBegin(): returns a handle.
uiMenuEnd(): puts it all to work.

In between you can add items like:

uiMenuItemVal(): a name, icon, retval (use uiMenuFunc())
uiMenuItemO(): an operator + icon
uiMenuItemEnumO(): an operator, property name, value

Sublevels go easy too:

uiMenuLevel(): creates item for sublevel, with function pointer.
     Inside that function you can use all menu calls again.
     Levels can go as deep you want.

uiMenuLevelEnumO(): creates operator sublevel for an enum

11 years ago2.5
Martin Poirier [Sun, 25 Jan 2009 17:08:56 +0000 (17:08 +0000)]
2.5

Use proper function to check if prop is defined instead of relying on default.

11 years agomake operator names more consistent
Campbell Barton [Sun, 25 Jan 2009 15:41:17 +0000 (15:41 +0000)]
make operator names more consistent
ANIM_OT_toggle_time -> ANIM_OT_time_toggle
SCULPT_OT_toggle_mode -> SCULPT_OT_sculptmode_toggle
UV_OT_select_inverse -> UV_OT_select_invert
NODE_OT_toggle_visibility -> NODE_OT_visibility_toggle
OBJECT_OT_toggle_editmode -> OBJECT_OT_editmode_toggle

toggle was used last in other operators eg- ´╗┐VIEW3D_OT_vpaint_toggle and ´╗┐VIEW3D_OT_wpaint_toggle.

'invert' was used everywhere else.

11 years ago* added operators SEQUENCER_OT_lock, unlock, reload, refresh_all, view_all, view_sele...
Campbell Barton [Sun, 25 Jan 2009 14:53:41 +0000 (14:53 +0000)]
* added operators SEQUENCER_OT_lock, unlock, reload, refresh_all, view_all, view_selected.
* sequencer transform now does overlap checks.
* removed old transform functions from sequencer_edit.c
* shuffle_seq moved to kernel, now moves strips to the end of the last sequence of itschannel (if all channels are used). 2.4x would remove the strip.
* most of the 'Strip' menu items now call their operators in the header menu, some for view and select too.

11 years agoAnimato - Bugfix for Conversion of Object Rotations
Joshua Leung [Sun, 25 Jan 2009 11:45:40 +0000 (11:45 +0000)]
Animato - Bugfix for Conversion of Object Rotations

Yet another attempt to fix this problem (hopefully the last). Resolved a few typos (previous code was adjusting times not values).

11 years agoDid some refactoring with brush and sculpt to make radial control easier to add to...
Nicholas Bishop [Sun, 25 Jan 2009 07:28:11 +0000 (07:28 +0000)]
Did some refactoring with brush and sculpt to make radial control easier to add to other modes.

11 years agoAnimato - Bugfixes + Nicer names in Action Editor
Joshua Leung [Sun, 25 Jan 2009 04:02:31 +0000 (04:02 +0000)]
Animato - Bugfixes + Nicer names in Action Editor

* Action Editor/Dopesheet now displays names retrieved from RNA in the form - "<Struct/OwnerName>.<PropertyName>.<ArrayIndex>"
i.e. "HeadBone.Location.X"
i.e. "Cube.Rotation.Y"
i.e. "Material.Diffuse Color.G"

For now, the first part of the name may be unclear as it is easy to confuse Material channels with Object ones if the material was called "Object1" or so (theoretrical example only). This will be explored further.

* Also, fixed crashes when loading some old files with 'Object' Action Channels in their Actions

11 years agofix syntax error
Campbell Barton [Sun, 25 Jan 2009 01:32:00 +0000 (01:32 +0000)]
fix syntax error

11 years ago2.5 / MSVC
Nathan Letwory [Sat, 24 Jan 2009 23:37:34 +0000 (23:37 +0000)]
2.5 / MSVC
* make MSVC happy. M_PI is defined for MSVC, but these constants are available only after
  doing #define _USE_MATH_DEFINES before including math.h.
  Good to remember for in the future (no need to define our own M_PI's).

11 years agoFixed a drawing error in radial control and a warning in sculpt.c.
Nicholas Bishop [Sat, 24 Jan 2009 23:20:25 +0000 (23:20 +0000)]
Fixed a drawing error in radial control and a warning in sculpt.c.

11 years agoMore radial control work.
Nicholas Bishop [Sat, 24 Jan 2009 22:58:22 +0000 (22:58 +0000)]
More radial control work.

* Added a rotation setting to brush (and brush RNA)
* Brought back strength and rotation modes for radial control
* Brought back brush texture for radial control
* Turned off display of sculpt brush during radial control operator

11 years agoeditmesh face menu back, ctrl-pkey
Shaul Kedem [Sat, 24 Jan 2009 22:21:12 +0000 (22:21 +0000)]
editmesh face menu back, ctrl-pkey

11 years agoAdded back old sculptmode FKEY radial control. (Moved fullscreen to F11KEY for now.)
Nicholas Bishop [Sat, 24 Jan 2009 16:59:55 +0000 (16:59 +0000)]
Added back old sculptmode FKEY radial control. (Moved fullscreen to F11KEY for now.)

Notes:
* So far, only size mode ported and tested, still strength and rotation to do
* Brought this back for sculptmode first, still to do are particle edit, vpaint, wpaint, texpaint, and I guess image paint?
* Changed the wm paint cursor slightly, to take a customdata pointer.
* Still need to bring back brush texture display in the cursor

11 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 14:24:59 +0000 (14:24 +0000)]
2.5

- writeimage.c back, put in space_file now...
- renamed fluidsim.c to distinguish from bke version

11 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 13:47:20 +0000 (13:47 +0000)]
2.5

Made API for elbeem sane; it was prototyping and exporting
functions from old src/ !

Note; elbeem.h is not exported anymore.

11 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 13:45:24 +0000 (13:45 +0000)]
2.5

- Brought back code for particle edit and fluidsim
- Sanitized code from globals and bad level calls,
  so its ready to come back working.
- Fixed cirle selecting (Ckey now)
- Enabled undo for editmode curve, armature, particle
  and lattice

(another commit following)

11 years agoAnimato - Shapekeys work again
Joshua Leung [Sat, 24 Jan 2009 11:35:14 +0000 (11:35 +0000)]
Animato - Shapekeys work again

The RNA-wrapping for the 'value' (internally kb->curval) was set to be not editable, thus preventing Animato from writing to it. Removing the flag makes shapekeys more functional again (there are still a few non-functional cases).

11 years agoAnimato - Insert Keyframe for PoseChannels
Joshua Leung [Sat, 24 Jan 2009 10:58:34 +0000 (10:58 +0000)]
Animato - Insert Keyframe for PoseChannels

Added temporary entries to the quick-hack insert-keyframe operator menu. Action Editor doesn't get refreshed properly yet though.

Proper keyingsets will be coming/remimplemented tomorrow or later this week.

11 years ago2.5 - Pose-Channel (i.e. PoseMode bone) Transforms work again
Joshua Leung [Sat, 24 Jan 2009 10:03:19 +0000 (10:03 +0000)]
2.5 - Pose-Channel (i.e. PoseMode bone) Transforms work again

In the brief tests I did on a few rigs, this seems to work ok. Martin may want to check on the code for any cleanups that may be needed here.

Coming soon will be some modifications to the primative insert-key operator added earlier, so that Animato can be used to animate characters!

11 years agomy last commit broke transforming metastrips, use find_id for scene lookup.
Campbell Barton [Sat, 24 Jan 2009 09:55:31 +0000 (09:55 +0000)]
my last commit broke transforming metastrips, use find_id for scene lookup.

11 years agoAnimato - FCurve Modifier Bugfixes
Joshua Leung [Sat, 24 Jan 2009 08:21:39 +0000 (08:21 +0000)]
Animato - FCurve Modifier Bugfixes

* FModifier data is now allocated correctly, solving crashes on loading files containing IPO-curves with cyclic extrapolation
* Fixed memory leaks with FModifiers and their data not being freed correctly. Not sure exactly why the old code didn't work for this.

11 years agoAdded back a line removed in r18642 so the macro CFRA can access scene.
Nicholas Bishop [Sat, 24 Jan 2009 06:08:46 +0000 (06:08 +0000)]
Added back a line removed in r18642 so the macro CFRA can access scene.

11 years agoadded back extend (Ekey) to sequener transform, works with nested metastrips too.
Campbell Barton [Sat, 24 Jan 2009 05:38:25 +0000 (05:38 +0000)]
added back extend (Ekey) to sequener transform, works with nested metastrips too.

11 years ago* operators for toggling, making, separating metastrip's. (tab, m, alt+m)
Campbell Barton [Fri, 23 Jan 2009 23:14:02 +0000 (23:14 +0000)]
* operators for toggling, making, separating metastrip's. (tab, m, alt+m)
* transform support for metastrips
* active strip is set to NULL if its freed again.

11 years agoAnimato - More compatability work
Joshua Leung [Fri, 23 Jan 2009 23:11:12 +0000 (23:11 +0000)]
Animato - More compatability work

* Absolute shapekeys work again. For now, the 'speed' curve isn't converted yet (same goes for 'Curves'). Those were kindof hacky, since they manipulated time in weird ways. Probably the clamping to 0.0-1.0 range can go though.

* Materials, Textures, Cameras, and local-constraint IPO's are now converted properly to the new system

11 years ago2.5: multiple small fixes
Brecht Van Lommel [Fri, 23 Jan 2009 20:36:47 +0000 (20:36 +0000)]
2.5: multiple small fixes

- wm draw method is now initialized correct when reading older
  files, but the SDNA bug causing the problem is still unsolved.
  is due to // char pad[8]; not being recognized as commented.
- triple buffer proxy texture test follows spec better now,
  was disabling triple buffer unnecessarily on some drivers.
- some cmake compile fixes related to sequencer pthread usage
  and removed bad level calls lib for player.
- show outliner header buttons in oops mode as well until that
  can be switched in the UI.
- fix region data free issue for tooltips
- warning fixes

11 years ago2.5
Ton Roosendaal [Fri, 23 Jan 2009 17:42:36 +0000 (17:42 +0000)]
2.5

File reading of 2.50 files fixed.
- it now exits nicely from queues without using free'd memory
  (checks CTX_wm_window(C) to be NULL)
- code that matched current (ghost) window with new situation
  lacked setting a pointer good.

Overall cleaned some parts too; like context clears now all
wm related pointers when you set a new wm, window or area.

11 years ago2.5
Ton Roosendaal [Fri, 23 Jan 2009 14:43:25 +0000 (14:43 +0000)]
2.5

Font object + editing back.

Was quite some work due to a myriad of globals all over!
Works nicely 100% local now.

To enable a single textedit operator, I've added a new
keymap entry KM_TEXTEDIT, which gives all keyboard events
to the handler. Also had to add a new keymap-add function
to force a keymap handler in beginning of region handlers.
In future this can be used to prioritize handlers.

Also: split off the arrow keys (frame change) to a separate
region level handler. Can be set with default flag in
regiontype->keymapflag ED_KEYMAP_FRAMES

11 years agofix for eternal loop that could happen when resizing the view.
Campbell Barton [Fri, 23 Jan 2009 14:08:02 +0000 (14:08 +0000)]
fix for eternal loop that could happen when resizing the view.

11 years ago 2.5
Michael Fox [Fri, 23 Jan 2009 10:51:13 +0000 (10:51 +0000)]
 2.5
*****
small commit, just added a couple missing notifiers to the timline buttons

11 years ago2.5: WM Compositing
Brecht Van Lommel [Fri, 23 Jan 2009 03:52:52 +0000 (03:52 +0000)]
2.5: WM Compositing

* Triple Buffer is now more complete:
  - Proper handling of window resize, duplicate, etc.
  - It now uses 3x3 textures (or less) if the power of two sizes
    do not match well. That still has a worst case wast of 23.4%,
    but better than 300%.
  - It can also use the ARB/NV/EXT_texture_rectangle extension
    now, which may be supported on hardware that does not support
    ARB_texture_non_power_of_two.
  - Gesture, menu and brushe redraws now require no redraws at all
    from the area regions. So even on a high poly scene just moving
    the paint cursor or opening a menu should be fast.

* Testing can be done by setting the "Window Draw Method" in the
  User Preferences in the outliner. "Overlap" is still default,
  since "Triple Buffer" has not been tested on computers other than
  mine, would like to avoid crashing Blender on startup in case
  there is a common bug, but it's ready for testing now.

  - For reference "Full" draws the full window each time.
  - "Triple Buffer" should work for both swap copy and swap exchange
    systems, the latter still need the -E command line option for
    "Overlap".
  - Resizing and going fullscreen still gives flicker here but no
    more than "Full" drawing.

* Partial Redraw was added. ED_region_tag_redraw_partial takes a
  rect in window coordinates to define a subarea of the region.
  On region draw it will then set glScissor to a smaller area, and
  ar->drawrct will always be set to either the partial or full
  window rect. The latter can then be used for clipping in the 3D
  view or clipping interface drawing. Neither is implemented yet.

11 years agoAnimato: Added conversions for Camera data and Texture IPO's
Joshua Leung [Fri, 23 Jan 2009 03:41:05 +0000 (03:41 +0000)]
Animato: Added conversions for Camera data and Texture IPO's

Most of the settings have been converted, however, there are a few which are not easy to convert.

* For textures:
- tex->noisedepth  - undefined in RNA?
- tex->noisetype   - undefined in RNA?
- tex->stype       - undefined in RNA?
- tex->noise_basis2 - is noted in RNA as undefined...

* For Cameras:
- "CAM_LENS" define was used for either 'ortho_scale', or 'lens' depending on camera type. This is currently difficult to ascertain using current code... I'll revisit this later
- cam->YF_aperature - undefined in RNA
- cam->YF_dofdist - undefined in RNA

11 years agoremove doubles op, ton: is this working properly?
Shaul Kedem [Fri, 23 Jan 2009 03:07:07 +0000 (03:07 +0000)]
remove doubles op, ton: is this working properly?

11 years agoAnimato:
Joshua Leung [Fri, 23 Jan 2009 02:59:21 +0000 (02:59 +0000)]
Animato:

* Removed a few excessive debug prints
* Fixed crash on loading "Frankie" from BBB due to missing check for Driver without a target

11 years agoAnimato Bugfixes:
Joshua Leung [Fri, 23 Jan 2009 02:50:04 +0000 (02:50 +0000)]
Animato Bugfixes:

* Fixed bug in with RNA-paths. String identifiers (i.e. some_collection["somekey"]) were not getting handled at all due to wrong indices it seems. I don't know of any other code using this, so hopefully there aren't any unintended bugs caused by this.
This means that bone animation now works again.

* Added a few more sanity checks to file-reading code, and heaps of extra prints everywhere else for debugging purposes (these will be removed in due course).

11 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Thu, 22 Jan 2009 18:09:59 +0000 (18:09 +0000)]
2.5 MSVC9 projectfiles
updates:
* windowmanager/wm_jos.c
* editors/datafiles/preview.blend.c

11 years agoNew Operators, duplicate is shift+d, Add operators are accessible from the header.
Campbell Barton [Thu, 22 Jan 2009 15:52:04 +0000 (15:52 +0000)]
New Operators, duplicate is shift+d, Add operators are accessible from the header.
SEQUENCER_OT_add_duplicate(mode=1)
SEQUENCER_OT_add_image_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True)
SEQUENCER_OT_add_movie_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True)
SEQUENCER_OT_add_sound_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True)

Some of these use the file selector, Note that sound isn't working yet because editsound.c functions are not yet in 2.5 and Operators dont have a way to recieve an array of strings so SEQUENCER_OT_add_image_strip only adds 1 image at the moment.

11 years ago2.5
Ton Roosendaal [Thu, 22 Jan 2009 15:46:35 +0000 (15:46 +0000)]
2.5

- warning cleanup (wrong casts, unused vars, missing protos)
- removed old cruft from node_edit.c
- cleaned wm_jobs.c a bit

11 years ago2.5
Ton Roosendaal [Thu, 22 Jan 2009 14:59:49 +0000 (14:59 +0000)]
2.5

Added WM Jobs manager
- WM can manage threaded jobs for you; just provide a couple
  of components to get it work:
  - customdata, free callback for it
  - timer step, notifier code
  - start callback, update callback
- Once started, each job runs an own timer, and will for
  every time step check necessary updates, or close the
  job when ready.
- No drawing happens in jobs, that's for notifiers!
- Every job stores an owner pointer, and based on this owner
  it will prevent multiple jobs to enter the stack.
  Instead it will re-use a running job, signal it to stop
  and allow caller to re-initialize it even.
- Check new wm_jobs.c for more explanation. Jobs API is still
  under construction.
  Fun: BLI_addtail(&wm->jobs, steve); :)

Put Node shader previews back using wmJobs
- Preview calculating is now fully threaded (1 thread still)
- Thanks to new event system + notifiers, you can see
  previews update even while dragging sliders!
- Currently it only starts when you change a node setting.

Warning: the thread render shares Node data, so don't delete
nodes while it renders! This topic is on the todo to make safe.

Also:
- bug in region initialize (do_versions) showed channel list in
  node editor wrong.
- flagged the channel list 'hidden' now, it was really in the
  way! This is for later to work on anyway.
- recoded Render API callbacks so it gets handlers passed on,
  no globals to use anymore, remember?
- previewrender code gets now so much nicer! Will remove a lot
  of stuff from code soon.

11 years agoAnimato - Basic version patching support
Joshua Leung [Thu, 22 Jan 2009 10:53:22 +0000 (10:53 +0000)]
Animato - Basic version patching support

This is work-in-progress patching support for converting animation saved in old system to work in the new one.

* Only IPOs/Actions directly attached to Objects + Shapekeys are converted for now. More types will follow...
* This is currently done as a step outside of do_versions() due to problems with various pointers not having been resolved yet, but which are necessary for correct resolution of issues such as drivers... However, the current code does illustrate how the data should be converted to give best results/compat between the two systems.
* Still need to get the converted data working with depsgraph correctly. Currently, some of my testfiles work, but the BBB files still don't.

11 years ago* Fixed some crashiness with sculpt file loading
Nicholas Bishop [Thu, 22 Jan 2009 04:22:26 +0000 (04:22 +0000)]
* Fixed some crashiness with sculpt file loading
* Added undo push for toggling sculpt mode
* Little optimization for brush texture, was generating quite large textures unecessarily

11 years agoUndo in sculpt mode works now. Also removed some unused old code in sculpt.c
Nicholas Bishop [Thu, 22 Jan 2009 01:58:38 +0000 (01:58 +0000)]
Undo in sculpt mode works now. Also removed some unused old code in sculpt.c

11 years agoBrought back sculpt smooth brush. Also added a new brush flag for setting whether...
Nicholas Bishop [Wed, 21 Jan 2009 22:40:28 +0000 (22:40 +0000)]
Brought back sculpt smooth brush. Also added a new brush flag for setting whether to use brush spacing.

11 years agoBrought back rake mode for sculpt (turns the brush texture with the direction of...
Nicholas Bishop [Wed, 21 Jan 2009 21:17:32 +0000 (21:17 +0000)]
Brought back rake mode for sculpt (turns the brush texture with the direction of the brush stroke.)

11 years agoBrought back textures for sculpt mode. These are stored in Brush DNA now, as well...
Nicholas Bishop [Wed, 21 Jan 2009 20:03:41 +0000 (20:03 +0000)]
Brought back textures for sculpt mode. These are stored in Brush DNA now, as well as the three texture modes (drag/tile/3D).

11 years ago2.5 filebrowser
Andrea Weikert [Wed, 21 Jan 2009 19:28:28 +0000 (19:28 +0000)]
2.5 filebrowser
cleaned up selection code
new operators:
- highlight file under cursor
- select all/nothing (AKEY)
- border select (BKEY)
changed selection to be invoked by LEFTMOUSE

11 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Wed, 21 Jan 2009 19:11:20 +0000 (19:11 +0000)]
2.5 MSVC9 projectfiles
updates:
* windowmanager/wm_draw.c

11 years agosequencer operators duplicate, delete, separate images.
Campbell Barton [Wed, 21 Jan 2009 18:47:09 +0000 (18:47 +0000)]
sequencer operators duplicate, delete, separate images.

11 years ago* Fixed a minor CMake error for WITH_YAFRAY option
Nicholas Bishop [Wed, 21 Jan 2009 18:44:36 +0000 (18:44 +0000)]
* Fixed a minor CMake error for WITH_YAFRAY option
* Removed two unused sculpt DNA fields
* Restored brush spacing option to sculpt

11 years agosequencer header buttons, not linked up to anything yet.
Campbell Barton [Wed, 21 Jan 2009 12:39:56 +0000 (12:39 +0000)]
sequencer header buttons, not linked up to anything yet.

11 years agobasic transform for sequencer strips
Campbell Barton [Wed, 21 Jan 2009 07:01:20 +0000 (07:01 +0000)]
basic transform for sequencer strips
can transform the strips or move their handles
Still todo, click-drag transform, metastrips support, snapping, markers overlap checks and constrain to valid channels.

11 years agoAnimato - Quick bugfix
Joshua Leung [Wed, 21 Jan 2009 06:14:37 +0000 (06:14 +0000)]
Animato - Quick bugfix

Added missing 'break;' 's skipped during the sprint towards the "first working prototype" stage. The temporary Insert Keyframe operator should now work correctly for rotation/scaling keys now by not adding extra keys.

11 years ago 2.5
Michael Fox [Wed, 21 Jan 2009 02:24:12 +0000 (02:24 +0000)]
  2.5
*******

just a small commit, addeed a few more error, warning reports

11 years ago2.5: WIP commit for WM compositing.
Brecht Van Lommel [Tue, 20 Jan 2009 21:55:48 +0000 (21:55 +0000)]
2.5: WIP commit for WM compositing.

* Drawing code from wm_event_system.c split into separate wm_draw.c file.

Now there's 3 different draw methods implemented, not sure what survives
or will be added but is useful for debugging.

* Draw All: redraws everything each time, for reference.
* Draw Overlap All: what the code did before this commit, only draw
  regions marked for redraw, and anything that overlaps them.
* Triple Buffer: copies/retores all area regions into a texture, and
  blits that before drawing. Menus, brushes, gestures, etc are redrawn
  always on top of that.

Currently "Draw Overlap All" is set hardcoded to be used still. Triple
Buffer code is not complete, it doesn't handle window resize yet. Cards
that don't support non power of two textures can need quite large
textures as well, this could be split into multiple smaller ones.

11 years ago2.5
Martin Poirier [Tue, 20 Jan 2009 20:44:36 +0000 (20:44 +0000)]
2.5
cleanup image window apsect ratio correction mess (still disabled, this just cleans fonction call locations and name)

11 years ago2.5
Martin Poirier [Tue, 20 Jan 2009 19:58:05 +0000 (19:58 +0000)]
2.5
EditMesh snap still had stubs instead of proper editmesh calls
Misc correction for 2D edit with NDOF (not testable without ndof support)

11 years ago2.5
Martin Poirier [Tue, 20 Jan 2009 19:18:22 +0000 (19:18 +0000)]
2.5

Redraw at the end of transform even if not cancelled, to make sure all special transform draw doesn't stay on screen.

11 years ago2.5
Ton Roosendaal [Tue, 20 Jan 2009 19:03:26 +0000 (19:03 +0000)]
2.5

Two bugfixes:
- area-full (ctrl+up) crashed on area-edge
- view3d view-icon and axes color wrong.