11 years agobinreloc wasnt working with cmake.
Campbell Barton [Sun, 19 Jul 2009 19:36:56 +0000 (19:36 +0000)]
binreloc wasnt working with cmake.

11 years agod_type isnt a member of dirent on win32.
Campbell Barton [Sun, 19 Jul 2009 18:51:25 +0000 (18:51 +0000)]
d_type isnt a member of dirent on win32.

11 years ago- Support for importing python packages. (directories of python scripts containing...
Campbell Barton [Sun, 19 Jul 2009 17:45:14 +0000 (17:45 +0000)]
- Support for importing python packages. (directories of python scripts containing an
- BLI_add_slash returns the new string length.
- BLI_where_am_i() would often have /./ in the path (not incorrect but annoying, got into python exceptions)
- release/ui/, py error referencing invalid keyword args.

11 years agoSculpt+Paint/2.5:
Nicholas Bishop [Sun, 19 Jul 2009 17:44:44 +0000 (17:44 +0000)]

* Moved brush NKEY panel from C to Python. Could use some UI review :)
* Added a NULL check in bpy_internal_import.c, was crashing here on Python errors
* Added RNA for vpaint brush and for weight paint
* Added context for vpaint/wpaint similar to edit_object and sculpt_object

11 years agoRemove unneeded manipulator functions.
Martin Poirier [Sun, 19 Jul 2009 17:42:01 +0000 (17:42 +0000)]
Remove unneeded manipulator functions.

Disable manipulator drawing while moving. This still use G.moving, but that's acceptable for now (it's sort of a weird display option, after talk with Ton, we couldn't find a good place to set it).

11 years ago2.5
Ton Roosendaal [Sun, 19 Jul 2009 17:14:26 +0000 (17:14 +0000)]

Bugfix: extrudes failed when called a 2nd time, missing statistics
update. Reported by Sanne in irc, thanks!

11 years ago2.5
Ton Roosendaal [Sun, 19 Jul 2009 16:53:57 +0000 (16:53 +0000)]

Bugfix: the 'active 3d view layer' was never set, causing issues when
adding new objects. Reported by Martin, thanks!

11 years agoissues auto generating rna docs
Campbell Barton [Sun, 19 Jul 2009 14:57:20 +0000 (14:57 +0000)]
issues auto generating rna docs
- add a warning when an operator name is NULL, set it to a dummy name to prevent crash. POSE_OT_constraints_clear had its name commented (not sure why)
- rna_Object_parent_type_itemf wasnt checking for context being NULL, needed for docs else it crashes.
- bpy.ops.add/remove didnt show up in a dir(bpy.ops)

11 years agoPython operators
Campbell Barton [Sun, 19 Jul 2009 13:32:02 +0000 (13:32 +0000)]
Python operators
- simplified C operator API bpy.__ops__ since its wrapped by python now.
- needs the class to have an __idname__ rather then __name__ (like menus, headers)
- convert python names "console.exec" into blender names "CONSOLE_OT_exec" when registering (store the blender name as class.__idname_bl__, users scripters wont notice)
- bpy.props.props ???, removed

11 years ago2.5 - Recode of Add Constraint Operator(s)
Joshua Leung [Sun, 19 Jul 2009 13:06:18 +0000 (13:06 +0000)]
2.5 - Recode of Add Constraint Operator(s)

Add Constraint operators are now based on the old add_constraint() function (to be removed when the new code works well).
- Fixed a few bugs with the code, including depsgraph missing rebuild call, and unique-naming for constraints failing due to wrong order for adding constraint to list
- Added capabilities for setting the target of the constraint to the first selected object/bone for the operator when called from menus + hotkeys (but not for buttons window)

This commit is still buggy. I'll fix the remaining issues tomorrow, as well as adding some more operators for IK add/clear.

11 years ago2.5
Ton Roosendaal [Sun, 19 Jul 2009 12:15:20 +0000 (12:15 +0000)]

Small fix: Triple Buffer mode didn't clip custom paint cursors correctly
for overlapping regions (example, view3d paint circle drawing into toolbar)

11 years agoFirst version of fields panel.
Daniel Genrich [Sun, 19 Jul 2009 11:28:43 +0000 (11:28 +0000)]
First version of fields panel.
Please keep in mind: I am no python expert and may have some ugly layout-tricks in this file. GUI designed by nudelZ.
Commit approved by William ;-)

11 years ago2.5
Ton Roosendaal [Sun, 19 Jul 2009 11:13:15 +0000 (11:13 +0000)]

Requested UI feature: when scaling Blender window, the buttons view keeps
scale (in visible pixels) as previously. Also works for the .B25.blend, which
currently will show the buttons a bit too large for small screens... this
because the .B25.blend was created on a 1920x1200 screen. Might need a config
inbetween... 1440x1080 or so? Or we make a couple of defaults later.

Additional feature could be to also scale the buttons area itself, but that
will change the entire screen layout too much, potentially giving bad issues
with extremer scaling.

11 years agopy rna arrays were assumed sizeof(char)*len, should be sizeof(int)*len, was causing...
Campbell Barton [Sun, 19 Jul 2009 09:33:27 +0000 (09:33 +0000)]
py rna arrays were assumed sizeof(char)*len, should be sizeof(int)*len, was causing end of array corruption errors when running operators that took bool array options - transform.

11 years ago2.5 - Clear Constraints Operators
Joshua Leung [Sun, 19 Jul 2009 07:20:21 +0000 (07:20 +0000)]
2.5 - Clear Constraints Operators

Added some operators to clear all constraints on the active object or the selected bones.

11 years ago2.5 - Warning Fixes + Hotkey for Reversed Playback
Joshua Leung [Sun, 19 Jul 2009 05:20:30 +0000 (05:20 +0000)]
2.5 - Warning Fixes + Hotkey for Reversed Playback

Reversed playback can now be activated using the Alt-Shift-A hotkey. It works the same way that the Alt-A playback operator works.

11 years ago- was freeing reports on freed listbases
Campbell Barton [Sun, 19 Jul 2009 04:50:10 +0000 (04:50 +0000)]
- was freeing reports on freed listbases
- free reports in a single loop.
- extrude was using a NULL scene, crashed when used as a macro

11 years agoSVN maintenance.
Guillermo S. Romero [Sun, 19 Jul 2009 02:28:59 +0000 (02:28 +0000)]
SVN maintenance.

11 years agoStore sketch in armature instead of ugly global.
Martin Poirier [Sun, 19 Jul 2009 02:26:01 +0000 (02:26 +0000)]
Store sketch in armature instead of ugly global.

Like edit data, this isn't saved, just a temp pointer used during work session.

Also bring back sketching panel for 3d view.

11 years agoSculpt/2.5:
Nicholas Bishop [Sun, 19 Jul 2009 01:55:21 +0000 (01:55 +0000)]

* Added pointer RNA for the sculpt brush
* Converted sculpt settings panel (in the NKEY area) from C to Python
* For Python UI, needed context for whether sculpt is enabled or not; discussed this with Brecht and added sculpt_object to scene context

11 years agooperator macro playback (run operator reports in the console)
Campbell Barton [Sun, 19 Jul 2009 00:49:44 +0000 (00:49 +0000)]
operator macro playback (run operator reports in the console)
- reports can be selected with RMB, Border (bkey) and (de)select all.
- delete reports (X key)
- run operators in the console (R key)
- copy reports (Ctrl+C), can be pasted in the text editor an run with alt+p

- Added "selected_editable_objects" and "selected_editable_bases" to screen_context.c, use the scene layers, this was needed for duplicate to run outside the 3D view.
- RNA_property_as_string converted an array of 1 into "(num)" need a comma so python sees it as a tuple - "(num,)"
- add flag to reports, use for seletion atm.

opens a new world of context bugs :)

11 years agoSVN maintenance.
Guillermo S. Romero [Sat, 18 Jul 2009 23:12:42 +0000 (23:12 +0000)]
SVN maintenance.

11 years agomissed this file in last commit.
Campbell Barton [Sat, 18 Jul 2009 19:42:13 +0000 (19:42 +0000)]
missed this file in last commit.

11 years agoinitialize keymaps after python so python keymaps, solves the problem of keymaps...
Campbell Barton [Sat, 18 Jul 2009 19:40:26 +0000 (19:40 +0000)]
initialize keymaps after python so python keymaps, solves the problem of keymaps complaining about python operators not existing, but at the expense of some annoying init flags/functions. :/
Brecht/Ton you may want to check that C->data.py_init is a good place to store this.

11 years agofixes for errors on startup and compiler errors and draw speedup.
Campbell Barton [Sat, 18 Jul 2009 16:27:25 +0000 (16:27 +0000)]
fixes for errors on startup and compiler errors and draw speedup.

* Drawing the console text now skips all lines outside the view bounds.

* Added dummy C operators for console.exec and console.autocomplete so blender wont complain at startup, its not really a problem but people testing reported it a few times. Eventually we should have some way python operators are initialized before the spaces operators are checked.

* reordered the imports so the "ui" dir is imported before "io", for now this means bpy.ops is defined before exporters and importers need to use it, was causing a python error on startup.

* fixed all compiler warnings for the console (gcc4.4)

* stopped operators were printing out the return flag.

* removed references to ACT_OT_test, TEXT_OT_console_exec and TEXT_OT_console_autocomplete

11 years ago2.5 / RNA Fix for render layers' rendering options
Elia Sarti [Sat, 18 Jul 2009 15:14:59 +0000 (15:14 +0000)]
2.5 / RNA Fix for render layers' rendering options
Was using same flag for all options

11 years agoSecond round of transform mouse buttons experiment.
Martin Poirier [Sat, 18 Jul 2009 15:02:12 +0000 (15:02 +0000)]
Second round of transform mouse buttons experiment.

Confirm on LMB up but cancel on RMB down.

This works well with hotkeys, manipulator, RMB+drag and gesture (when they are added back).

The question is do we stick with one scheme for all or have separate keymaps for different "calling mode".

11 years agoUse verb for operator names
Martin Poirier [Sat, 18 Jul 2009 14:55:03 +0000 (14:55 +0000)]
Use verb for operator names

Translation -> Translate
Rotation -> Rotate

11 years ago2.5/Sculpt:
Nicholas Bishop [Sat, 18 Jul 2009 13:29:47 +0000 (13:29 +0000)]

* Fixed the NKEY panel not updating when switching to sculpt mode
* Removed some old XXX'd code for testing textures, can replace that now with proper brush-texture UI

11 years ago2.5 - Removing quick test operator that I added by mistake
Joshua Leung [Sat, 18 Jul 2009 11:39:50 +0000 (11:39 +0000)]
2.5 - Removing quick test operator that I added by mistake

It was used to quickly test that the red-black tree was being built correctly, but was really an incomplete operator...

11 years ago2.5
Ton Roosendaal [Sat, 18 Jul 2009 11:32:52 +0000 (11:32 +0000)]

Fix for Makefile to use GLEW in console editor

11 years ago2.5 - Optimisations for Keyframe Drawing in DopeSheet
Joshua Leung [Sat, 18 Jul 2009 07:11:37 +0000 (07:11 +0000)]
2.5 - Optimisations for Keyframe Drawing in DopeSheet

Keyframes are now prepared for drawing by being added to a binary-tree structure instead of using insertion-sort on a Double-Linked List. This gives rather significant improvements on a few bad cases (*).

I've implemented a basic Red-Black Tree whose nodes/data-structures can also be used as a simple Double-Linked List (ListBase) for this purpose. The implementation of this tree currently does not have support for removing individual nodes, since such capabilities aren't needed yet.

Stats (using keyframes from an imported .bvh animation file):
* When only the keyframes are drawn (i.e. long keyframes are not identified), the time needed to draw the DopeSheet region 10 times went down from 4000ms to about 300ms.
* When long keyframes are considered as well, the same test has gone from 6000ms to 3000ms. There is still a bottleneck there that I haven't been able to remove yet (an attempt at this made the runtimes go through the roof - 32000 ms for the test done here).

Assorted Notes:
* Added missing headers for some files
* Fixed profiling flags for mingw. There was an extra space which prevented the sound-code from compiling.

11 years agoworked for me but broke building for eman, this fixes (both on linux which is confusing).
Campbell Barton [Sat, 18 Jul 2009 07:01:16 +0000 (07:01 +0000)]
worked for me but broke building for eman, this fixes (both on linux which is confusing).

11 years agoremoved BeOS dirs (BeOS isn't supported anymore)
Campbell Barton [Sat, 18 Jul 2009 05:26:47 +0000 (05:26 +0000)]
removed BeOS dirs (BeOS isn't supported anymore)
removed unneeded includes for the console.

11 years ago2.5 - Quick fix for NLA drawing
Joshua Leung [Sat, 18 Jul 2009 04:16:51 +0000 (04:16 +0000)]
2.5 - Quick fix for NLA drawing

When some object had materials that may have been driven/animated, a crash could sometimes occur if some material-slot had no material.

11 years agopatch from oxben (Benjamin)
Campbell Barton [Sat, 18 Jul 2009 04:09:23 +0000 (04:09 +0000)]
patch from oxben (Benjamin)
* fixes two typos in the material buttons: "Recieve" -> "Receive"
* adds a missing preference in the User Preferences view: "Rotate Around Selected"

11 years agoSource code with executable property, manual fix. *sigh*
Guillermo S. Romero [Fri, 17 Jul 2009 18:35:49 +0000 (18:35 +0000)]
Source code with executable property, manual fix. *sigh*

11 years agopatch from William, adds some rna user prefs and adjusts prefs UI.
Campbell Barton [Fri, 17 Jul 2009 12:35:57 +0000 (12:35 +0000)]
patch from William, adds some rna user prefs and adjusts prefs UI.

11 years agopython access to operators now hides the _OT_ syntax, eg. SOME_OT_operator -> some...
Campbell Barton [Fri, 17 Jul 2009 12:26:40 +0000 (12:26 +0000)]
python access to operators now hides the _OT_ syntax, eg. SOME_OT_operator -> some.operator
this works for the calling operators from python and using the RNA api.

bpy.ops.CONSOLE_exec() is now bpy.ops.console.exec()

split.itemO("PARTICLE_OT_editable_set", text="Free Edit") becomes... split.itemO("particle.editable_set", text="Free Edit")

For now any operator thats called checks if its missing _OT_ and assumes its python syntax and converts it before doing the lookup.

bpy.ops is a python class in release/ui/ which does the fake submodules and conversion, the C operator api is at bpy.__ops__

personally Id still rather rename C id-names not to contain the _OT_ text which would avoid the conversion, its called a lot since the UI has to convert the operators.

11 years agoColour Management
Matt Ebb [Fri, 17 Jul 2009 02:43:15 +0000 (02:43 +0000)]
Colour Management

- 1st stage: Linear Workflow

This implements automatic linear workflow in Blender's renderer. With the
new Colour Management option on in the Render buttons, all inputs to the
renderer and compositor are converted to linear colour space before
rendering, and gamma corrected afterwards. In essence, this makes all
manual gamma correction with nodes, etc unnecessary, since it's done
automatically through the pipeline.

It's all explained much better in the notes/doc here, so please have a look:

And an example of the sort of difference it makes:

This also enables Colour Management in the default B.blend, and changes the
default lamp falloff to inverse square, which is more correct, and much
easier to use now it's all gamma corrected properly.

Next step is to look into profiles/soft proofing for the compositor.

Thanks to brecht for reviewing and fixing some oversights!

11 years agobpy rna
Campbell Barton [Fri, 17 Jul 2009 02:31:28 +0000 (02:31 +0000)]
bpy rna

Calling rna functions with invalid keywords, too many keywords and too many args would fail silently
- now raise an error with invalid keywords and a list of valid ones, raise an error when too many args are given.
- calling rna functions would alloc a ParameterList each time, changed to use a stack variable (2 pointers and an int).
- store the number of parameters ParameterList
- python exception types were wrong in many cases, (using attribute error rather then type error)
- fixes to small errors in python UI scripts.

11 years ago2.5 - 2 Tweaks
Joshua Leung [Fri, 17 Jul 2009 00:17:37 +0000 (00:17 +0000)]
2.5 - 2 Tweaks

* Comment re-formatting for keyframe drawing code
* Removed redundant frame number button from buttons view header.

11 years agogrr, py 2.5 2.6 and 3.x need different StringIO's
Campbell Barton [Thu, 16 Jul 2009 23:04:29 +0000 (23:04 +0000)]
grr, py 2.5 2.6 and 3.x need different StringIO's

11 years ago- Scrollbars for the console (use View2D functions)
Campbell Barton [Thu, 16 Jul 2009 22:47:27 +0000 (22:47 +0000)]
- Scrollbars for the console (use View2D functions)
- Set View2D operators not to register, got in the way a lot with the console.
- Made autocomplete Ctrl+Enter so Tab can be used.
- Should work with python 2.5 now. (patch from Vilda)
- Moved report struct definitions into DNA_windowmanager_types.h, could also have DNA_report_types.h however the reports are not saved, its just needed so the report list can be used in the wmWindowManager struct. Fixes a crash reported by ZanQdo.
- Store the report message length in the report so calculating the total height including word wrap is not so slow.

11 years agoSVN maintenance.
Guillermo S. Romero [Thu, 16 Jul 2009 22:06:04 +0000 (22:06 +0000)]
SVN maintenance.

11 years ago2.5 UI: Renaming cloth UI file to fit naming scheme
Daniel Genrich [Thu, 16 Jul 2009 21:22:52 +0000 (21:22 +0000)]
2.5 UI: Renaming cloth UI file to fit naming scheme

11 years ago* revert reversion by Genscher. This '/MT' business is now handled in
Nathan Letwory [Thu, 16 Jul 2009 20:00:15 +0000 (20:00 +0000)]
* revert reversion by Genscher. This '/MT' business is now handled in

11 years agoWin64: revert to use static msvc libs again
Daniel Genrich [Thu, 16 Jul 2009 19:56:47 +0000 (19:56 +0000)]
Win64: revert to use static msvc libs again

11 years agoSCons
Nathan Letwory [Thu, 16 Jul 2009 19:41:28 +0000 (19:41 +0000)]

* ensure all SConscripts are ready for win64-vc (where necessary).
* ensure we have proper _DEBUG flag for Python when we're doing a debug build.
* some cleaning up of linking etc.
* ensure /EHsc is there for game engine modules.

11 years agoAnother fluid + (little) cloth gui and settings update
Daniel Genrich [Thu, 16 Jul 2009 14:31:32 +0000 (14:31 +0000)]
Another fluid + (little) cloth gui and settings update

11 years ago2.5 - View2D fixes for User Prefs
Joshua Leung [Thu, 16 Jul 2009 11:05:16 +0000 (11:05 +0000)]
2.5 - View2D fixes for User Prefs

Added NULL check for View2D code for invalid style pointer (this underlying problem should get addressed at some point), and reinstated the reinitialisation hack for panel regions.

11 years ago2.5 - User Preferences Layout patch from William
Joshua Leung [Thu, 16 Jul 2009 10:32:21 +0000 (10:32 +0000)]
2.5 - User Preferences Layout patch from William

Screenshot here:

11 years ago- use outliner colors (with subtle stripes) for report so you can see divisions betwe...
Campbell Barton [Thu, 16 Jul 2009 07:11:46 +0000 (07:11 +0000)]
- use outliner colors (with subtle stripes) for report so you can see divisions between operators with wrapping.
- added class option for PyOperators __register__ so you can set if py operators are logged in the console.
- PyOperators was refcounting in a more readable but incorrect way. in some cases would be possible to crash so better not drop the reference before using the value.
- console zoom operator was registering which meant zooming in to see some text would push it away :)

11 years ago2.5 - Silencing various compiler warnings (mingw)
Joshua Leung [Thu, 16 Jul 2009 04:45:52 +0000 (04:45 +0000)]
2.5 - Silencing various compiler warnings (mingw)

11 years agoExtrude along normals.
Martin Poirier [Thu, 16 Jul 2009 03:16:03 +0000 (03:16 +0000)]
Extrude along normals.

Note that this is on in all cases now, it needs to be restricted to face extrude only.

Some slight transform operator cleanup too.

11 years agoAdd Makefile build support for Console Space Type (added in r21611).
Guillermo S. Romero [Thu, 16 Jul 2009 03:11:21 +0000 (03:11 +0000)]
Add Makefile build support for Console Space Type (added in r21611).

11 years ago* Temporarily commented out a couple of lines from Brecht's User Prefs commit
Matt Ebb [Thu, 16 Jul 2009 02:29:49 +0000 (02:29 +0000)]
* Temporarily commented out a couple of lines from Brecht's User Prefs commit

Brecht: This makes Blender crash on startup for a few of us, so I'm just
disabling it for now until you have have a look at it

11 years agoSVN maintenance.
Guillermo S. Romero [Thu, 16 Jul 2009 02:04:31 +0000 (02:04 +0000)]
SVN maintenance.

11 years agoConsole Space Type
Campbell Barton [Thu, 16 Jul 2009 00:50:27 +0000 (00:50 +0000)]
Console Space Type
* interactive console python console.
* display reports and filter types. defaults to operator display so you can see the python commands for tools as you use them,
  eventually it should be possible to select commands and make macto/tools from them.

Example use of autocomp.  b<tab>, bpy.<tab>, bpy.<tab>,<tab> etc.

basic instructions are printed when opening the console.

* Console exec and autocomp are done with operators written in python.
* added CTX_wm_reports() to get the global report list.
* The window manager had a report ListBase but reports have their own struct, switched to allocate and assign when initializing the WM since the type is not available in DNA.
* changed report types flags for easier display filtering.
* added report type RPT_OPERATOR
* logging operators also adds a python-syntax report into CTX_wm_reports() so they can be displayed in the console as well as calling a notifier for console to redraw.
* RnaAPI context.area.tag_redraw() to redraw the current area from a python operator.

* better interactions with the console, scrolling, copy/paste.
* the text displayed doesnt load back.
* colors need to be themed.
* scroll limit needs to be a user pref.
* only tested with cmake and scons.

11 years agomake py3.1 default for mingw/scons too.
Nathan Letwory [Wed, 15 Jul 2009 23:26:24 +0000 (23:26 +0000)]
make py3.1 default for mingw/scons too.

11 years ago2.5: fix for uninitialized var in 3d view header template.
Brecht Van Lommel [Wed, 15 Jul 2009 23:24:51 +0000 (23:24 +0000)]
2.5: fix for uninitialized var in 3d view header template.

11 years ago2.5: fix for closed panels not resizing properly.
Brecht Van Lommel [Wed, 15 Jul 2009 22:58:34 +0000 (22:58 +0000)]
2.5: fix for closed panels not resizing properly.

11 years ago2.5: Defaults
Brecht Van Lommel [Wed, 15 Jul 2009 22:58:12 +0000 (22:58 +0000)]
2.5: Defaults

* Wave modifier speed 0.5 -> 0.25.

* Particles even and random distribution on.
* Particles normal velocity 0.0 -> 1.0.
* Particles size 1.0 -> 0.05.
* Particles draw emitter and material color on.

* Field strength 0.0 -> 1.0

* Object drawing without material was not consistent
  with default material.

* Panel title 13 -> 12 points.

11 years ago2.5 - Tweak to Action Constraint 'Transform Channel' order of options
Joshua Leung [Wed, 15 Jul 2009 22:51:47 +0000 (22:51 +0000)]
2.5 - Tweak to Action Constraint 'Transform Channel' order of options

11 years ago2.5
Brecht Van Lommel [Wed, 15 Jul 2009 19:20:59 +0000 (19:20 +0000)]

* Some changes to make lamp and world textures editing work.
  You may have to click on another texture slot once before
  being able to add a texture, and the layout is messy. Added
  this so lightenv project isn't blocked by this being missing.
* Adding a new material slot now doesn't create a new material
  anymore, to avoid creating unused materials.
* Tiny changes to scene/object buttons.

11 years ago2.5: User Preferences
Brecht Van Lommel [Wed, 15 Jul 2009 19:19:43 +0000 (19:19 +0000)]
2.5: User Preferences

* Added basic infrastructure to layout user preferences. The
  intention is that you open a user preferences space in place
  of the buttons space, and have panels there.
* The existing sections don't have to be followed, it's easy
  to create different ones, just change the user_pref_sections
  enum in RNA.
* This will get separated from the info header later.

11 years agotiny fix: stamp alpha color was lacking range parameter
Dalai Felinto [Wed, 15 Jul 2009 03:47:05 +0000 (03:47 +0000)]
tiny fix: stamp alpha color was lacking range parameter

I was going to commit it later with other changes, but I'm changing other stuff at rna_scene.c for the gamedata, and didn't want to mix it up.

11 years ago* set py 3.1 as default for windows
Nathan Letwory [Tue, 14 Jul 2009 23:26:26 +0000 (23:26 +0000)]
* set py 3.1 as default for windows
* add some ignores for some warnings (which seem to be ignored on nixes already).
* add zips for py 3.0 and py 3.1. Note: py 3.1 zip contains entire Lib

11 years ago2.5: added panel with IK settings for bone.
Brecht Van Lommel [Tue, 14 Jul 2009 22:11:25 +0000 (22:11 +0000)]
2.5: added panel with IK settings for bone.

11 years ago2.5: small tweaks for scene and object layouts.
Brecht Van Lommel [Tue, 14 Jul 2009 20:38:21 +0000 (20:38 +0000)]
2.5: small tweaks for scene and object layouts.

11 years ago2.5: Objects
Brecht Van Lommel [Tue, 14 Jul 2009 20:27:28 +0000 (20:27 +0000)]
2.5: Objects

* Added Relations panel with layers, pass_index, parent.
* Groups panel now can do add to group/remove from group.
* Parent, parent type, track are now editable.
* Separate constraint add operator for object and bones.

11 years ago2.5: Armature
Brecht Van Lommel [Tue, 14 Jul 2009 17:59:26 +0000 (17:59 +0000)]
2.5: Armature

* Bone Transform panel now works, using appropriate EditBone or
  PoseChannel properties.
* Bone name and parent are now editable.
* Some other tweaks to the UI layouts for Armature and Bone.
* Notifiers for armature/editbone properties.

11 years agoRNA
Brecht Van Lommel [Tue, 14 Jul 2009 17:35:07 +0000 (17:35 +0000)]

* RNA_enum_items_add_value and RNA_enum_item_add_separator utility
  functions, to add an item from an existing array with a certain
  value, and to add a separator.

11 years ago2.5 Scene Buttons:
Thomas Dinges [Tue, 14 Jul 2009 13:20:46 +0000 (13:20 +0000)]
2.5 Scene Buttons:

* Replaced Render Layer Dot Icons with X ones. Patch by William Reynish.

11 years ago2.5 Buttons:
Thomas Dinges [Tue, 14 Jul 2009 12:32:19 +0000 (12:32 +0000)]
2.5 Buttons:

* Some Updates for n-key Areas in View3D and Image Editor and some tweaks in bone panels. Patch by William Reynish. Thanks!

11 years ago2.5 Outliner - Restored all the 'toggle' operators
Joshua Leung [Tue, 14 Jul 2009 12:23:08 +0000 (12:23 +0000)]
2.5 Outliner - Restored all the 'toggle' operators

* AKEY - Toggle Outliner Selection (*1)
* Shift-AKEY - Expand/Collapse All
* RKEY - Toggle Renderability
* SKEY - Toggle Selectability
* VKEY - Toggle Visiblity

(*1) - The keymap-order of these has been swapped from the ones used in 2.4x. The old keys used here were inconsistent with the rest of Blender (at least I found myself always getting annoyed that I'd accidentally collapsed/expanded all items by hitting AKEY many times).

11 years ago2.5 Outliner - Restoring a few operators
Joshua Leung [Tue, 14 Jul 2009 11:56:24 +0000 (11:56 +0000)]
2.5 Outliner - Restoring a few operators

Restored the following operators
* Show Hierarchy (HomeKey)
* Show/Hide One Level (+/- Keys)
* Show Active (Numpad .)

11 years ago2.5 - Scrollbars are now shown when a list of panels can't fit in view
Joshua Leung [Tue, 14 Jul 2009 10:59:21 +0000 (10:59 +0000)]
2.5 - Scrollbars are now shown when a list of panels can't fit in view

- These may be taking up a bit too much room in some situations. Perhaps an option to turn these on/off is needed?
- I've added a quick hack in area.c -> ED_region_panels_init() to set the flags to make scrollbars show up in regions whose View2D data has already been initialised. This is primarily aimed at the Buttons Window in the 2.5 defaults file, which seems to have been saved in 2.5 or so
- The expand icons on either end of the scrollers don't really seem to be necessary? (or not working yet)

11 years agoRNA/button tweaks:
Matt Ebb [Tue, 14 Jul 2009 04:13:04 +0000 (04:13 +0000)]
RNA/button tweaks:
* Texture -> renamed 'no rgb' to 'rgb to intensity' (btw it's not just for
 image textures )

* Render -> stamp closed by default - not taking effect, because saved in
.B.blend. How do we fix this?

* Material -> removed 'Buffer Bias' dependency - it's for receiving shadows,
not casting them

* Material -> Ray Shadow bias renamed 'Auto Ray bias' - switches between an
 automatically calculated value vs the specified value

11 years agoFix cloth UI + tooltips - patch provided by nudelZ
Daniel Genrich [Mon, 13 Jul 2009 22:35:04 +0000 (22:35 +0000)]
Fix cloth UI + tooltips - patch provided by nudelZ

11 years agoRNA & PyAPI
Campbell Barton [Mon, 13 Jul 2009 19:33:59 +0000 (19:33 +0000)]
* support for dynamic enums to be inspected enumProp.items() from python.
* fix, enums check for a separator was flipped, meant no enums were in docs.
* dynamic enum functions now check for a NULL context and return all possible options for the "items" attribute used for docs.
* added an arg for rna arrays to free the array there looping over (needed to free dynamically allocated enum items)
* python api checks for NULL items since this can happen in some cases.
* python api, When getting an enum ID from an int in an array - If it failed it would get the first enum identifier and return that. Brecht? dont understand, making it return an empty string in these cases.

11 years ago2.5: fix for last commit, missing ffmpeg #ifdef.
Brecht Van Lommel [Mon, 13 Jul 2009 19:17:52 +0000 (19:17 +0000)]
2.5: fix for last commit, missing ffmpeg #ifdef.

11 years ago2.5: and the B.blend.c to go with the last commit.
Brecht Van Lommel [Mon, 13 Jul 2009 19:10:35 +0000 (19:10 +0000)]
2.5: and the B.blend.c to go with the last commit.

11 years ago2.5: Render
Brecht Van Lommel [Mon, 13 Jul 2009 19:09:13 +0000 (19:09 +0000)]
2.5: Render

* UI layout for scene buttons has quite some changes, I tried to
  better organize things according to the pipeline, and also showing
  important properties by default, and collapsing less important ones.

Some changes compared to 2.4x:
* Panorama is now a Camera property.
* Sequence and Compositing are now enabled by default, but will only
  do something when there is a node tree using nodes, or a strip in the
  sequence editor.
* Enabling Full Sample now automatically enables Save Buffers too.
* Stamp option to include info in file is removed, it now simply always
  does this if one of the stamp infos is enabled.
* Xvid, H.264 and Ogg Theora are now directly in the file format menu,
  but still using FFMPEG. Unfortunately Ogg is broken at the moment
  (also in 2.4x), so that's disabled. And Xvid crashes on 64bit linux,
  maybe solvable by upgrading extern/xvidcore/, using ubuntu libs makes
  it work.
* Organized file format menu by image/movie types.

* Render layers RNA wrapped, operatorized, layouted.
* FFMPEG format/codec options are now working.

Defaults changed:
* Compositing & Sequencer enabled.
* Tiles set to 8x8.
* Time/Date/Frame/Scene/Camera/Filename enabled for stamp.

11 years ago2.5: bugfix for BLI_is_writable, made render with Save Buffers
Brecht Van Lommel [Mon, 13 Jul 2009 18:47:08 +0000 (18:47 +0000)]
2.5: bugfix for BLI_is_writable, made render with Save Buffers
not work anymore. Now it first tries to open the file without
truncating, and only then tries to create a new file.

11 years agomathutils types didnt work properly in python2x. vec*matrix failed for eg.
Campbell Barton [Mon, 13 Jul 2009 12:17:07 +0000 (12:17 +0000)]
mathutils types didnt work properly in python2x. vec*matrix failed for eg.

Now with KX_Python.h line 35 commented YoFrankie 1.1 should run unmodified in blender2.5

11 years agoDrawing a string longer then 255 chars wasnt working.
Campbell Barton [Mon, 13 Jul 2009 11:41:24 +0000 (11:41 +0000)]
Drawing a string longer then 255 chars wasnt working.

changes to flatten_string_append(...), probably only brecht is interested.
- It was copying from the old malloc'd buffer but never the fixed buffer - the reason >255 length strings didnt render.
- on first malloc for the FlatString allocate 512 rather then 256 chars since the fixed string is 256 chars.
- if the char was '\0' fs->pos was set to 0, not sure why since char cant be '\0' because of the loop that calls flatten_string_append, removed.

11 years agoConsole Autocomplete (Alt+Enter in the text editor), should be moved out of the text...
Campbell Barton [Mon, 13 Jul 2009 09:31:35 +0000 (09:31 +0000)]
Console Autocomplete (Alt+Enter in the text editor), should be moved out of the text editor soon.

The autocomplete function is generic and could be made into its own module.
 b -> bpy ->

 bpy.ops.OB -> bpy.ops.OBJECT_OT_[0].a -> (options)
active_material, active_material_index, active_particle_system, active_particle_system_index, active_shape_key, active_shape_key_index, active_vertex_group, active_vertex_group_index, animation_data

11 years agocalling operators from python was raising an error without returning an error value.
Campbell Barton [Mon, 13 Jul 2009 08:33:51 +0000 (08:33 +0000)]
calling operators from python was raising an error without returning an error value.

brecht, switched the order back to fix this, added an argument for WM_operatortype_find() to fail without printing an error.

11 years ago2.5
Brecht Van Lommel [Mon, 13 Jul 2009 00:40:20 +0000 (00:40 +0000)]

* Objects now support up to 32767 material slots. It's easy to
  increase this further, but I prefer not to increase the memory
  usage of mesh faces, it seems unlikely that someone would
  create 32767 distinct materials?
* Forward compatibility: the only thing you can potentially lose
  reading a 2.5 file in 2.4 is object linking (instead of default
  data), though usually that will go fine too. Reading files with
  > 32 material slots in 2.4 can start giving issues.

* The ob->colbits variable is deprecated by the array ob->matbits
  but I didn't remove the ob->colbits updates in very few places
  it is set.
* I hope I changed all the relevant things, various places just
  hardcoded the number 16 instead of using the MAXMAT define.

* Join Objects operator back. This is using the version from the
  animsys2 branch coded by Joshua, which means it now supports
  joining of shape keys.

* Fix for crash reading file saved during render.

11 years agoKeyed physics refresh:
Janne Karhu [Sun, 12 Jul 2009 23:38:47 +0000 (23:38 +0000)]
Keyed physics refresh:
- Keyed targets in one list instead of "chaining", this opens up many more possibilities than before and is much less obscure.
- Better keyed timing possibilities (time & duration in frames).
- Looping over keyed targets list.

Other changes:
- New child setting "length" with threshold (great for guard & underfur with a single particle system)
- Modularization of path interpolation code.
- Cleared "animateable" flags from many particle settings that shouldn't be animateable.

- Keyed particles weren't copied properly (ancient bug).
- Hair rotations depended on global z-axis for root rotation so downward facing strands could flip rotation randomly. Now initial hair rotation is derived from face dependent hair matrix. (This caused for example ugly flipping of child strands on some cases).
- Children from faces weren't calculated straight after activating them.
- Multiple disk cache fixes:
* Disk cache didn't work correctly with frame steps.
* Conversion from memory cache to disk cache didn't work with cloth.
* Disk cache crashed on some frames trying to close an already closed cache file.
* Trails didn't work with disk cached particles.
- Child rough effects were effected by emitter object loc/rot making them next to useless with animation, why didn't anybody tell me this!!
- Lots of random code cleanup.

11 years ago2.5 filebrowser
Andrea Weikert [Sun, 12 Jul 2009 13:06:52 +0000 (13:06 +0000)]
2.5 filebrowser
* bugfix: parent on linux didn't account for first slash
* added some BLI_cleanup_dir to prevent weird directory names
* revert to old directory if user types bogus text.

11 years agopython console in ~80 lines
Campbell Barton [Sun, 12 Jul 2009 12:47:34 +0000 (12:47 +0000)]
python console in ~80 lines
Shift+Enter in the text editor executes the TEXT_OT_line_console operator defined in

The operator's class stores a namespace for each text block.

Eventually this should have its own input rather then using the text editor.

Tested with py3.1 and 2.6

TEXT_OT_insert was only using the first char from a string, added support for inserting strings.

11 years ago2.5 file browser
Andrea Weikert [Sun, 12 Jul 2009 09:03:09 +0000 (09:03 +0000)]
2.5 file browser
* tweak for autocomplete, only update live if live_update and TAB key is hit. (Brecht, please check if it's ok, otherwise will revert and we'll find another way)
* adding slash at the end of directory to allow for faster autocomplete
* bugfix: directory name buton had wrong length

11 years ago2.5 file browser
Andrea Weikert [Sun, 12 Jul 2009 08:12:22 +0000 (08:12 +0000)]
2.5 file browser
* bugfix: adding back adding the region on read of old files
* tweak: buttons for increment/decrement file number now have icons and size adjusted to UI_UNIT_X/UI_UNIT_Y

11 years agomade text editor margin work with different font sizes.
Campbell Barton [Sun, 12 Jul 2009 07:37:25 +0000 (07:37 +0000)]
made text editor margin work with different font sizes.
also made it draw the width needed, was fixed at 4.

11 years ago2.5 - Tweaks for Split Strips in NLA and Graph Editor view ranges
Joshua Leung [Sun, 12 Jul 2009 07:28:25 +0000 (07:28 +0000)]
2.5 - Tweaks for Split Strips in NLA and Graph Editor view ranges

* Split strips now uses the current frame as the splitting-point for selected strips if the current frame falls within in the bounds of the strip. Otherwise, the code defaults to splitting by the midpoints of the strips.

* Time-range for Graph Editor is saner now when there is only a single keyframe or none at all.

11 years agoNLA Bugfixes:
Joshua Leung [Sun, 12 Jul 2009 04:29:36 +0000 (04:29 +0000)]
NLA Bugfixes:

* Fixed crash when anim-playback is running and a strip beside a transition gets transformed.
Transition strips no-longer assume that their neighbours are action-clips, using the standard NLA-strip evaluation function instead to evaluate their neighbours. However, a check for ping-pong recursion needed to be added there, so that a transition beside a meta-strip, with the meta having a transition nested at the start of one of its levels, wouldn't fail with stack overflow.

* Moved 'Tweak Mode' menu entry to Edit menu, since it's not really that modal.

11 years ago2.5 - Editing Animation data (keyframes/nla-strips) using transform tools now refresh...
Joshua Leung [Sun, 12 Jul 2009 03:42:39 +0000 (03:42 +0000)]
2.5 - Editing Animation data (keyframes/nla-strips) using transform tools now refreshes the 3d-view in realtime.

For now, this directly sets the update flags, though this really should be calling the Depsgraph API instead.

11 years ago2.5: Couple of small fun features
Brecht Van Lommel [Sun, 12 Jul 2009 02:06:15 +0000 (02:06 +0000)]
2.5: Couple of small fun features

* Text window font size now supports full range 8-32, instead of
  just 12 and 15. I added BLF_fixed_width to get the character
  width of a fixed size font.

* Buttons do undo push on change again.

* Animated/Keyframe/Driver colors are now themable, with blend
  value to blend with original color. Set this to 0.5 now to
  give colors less constrast.
* Fix tooltip popping up with RMB menu open, and missing redraw.

* Autokeyframe now works for buttons.

* Driver expressions can be edited in place in a button now.
  (still some refresh issues).
* Also made python driver default for the Add Driver function
  in the RMB button. This way you don't have to open a Graph
  editor if you just want to type an expression. Also, the
  default expression then is the current value.

* Tooltips now show some extra info, not sure what is good to
  have, but currently I added:
  * Shortcut key for operator buttons.
  * Python struct & property name for RNA buttons.
  * Expression for driven values.
  * Value for text/search/pointer buttons.