Commit Graph

47594 Commits

Author SHA1 Message Date
Joshua Leung
6e1e212162 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).
2009-07-14 12:23:08 +00:00
Joshua Leung
77a5fccb1f 2.5 Outliner - Restoring a few operators
Restored the following operators
* Show Hierarchy (HomeKey)
* Show/Hide One Level (+/- Keys)
* Show Active (Numpad .)
2009-07-14 11:56:24 +00:00
Joshua Leung
047c9e0e4e 2.5 - Scrollbars are now shown when a list of panels can't fit in view
Notes:
- 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)
2009-07-14 10:59:21 +00:00
Joseph Eagar
3bade13503 pre-merge commit. the mirror modifier is currently in pieces, to be picked back up after the merge. there should be some removedoubles fixes, along with some other assorted fixes. 2009-07-14 06:13:43 +00:00
Matt Ebb
0bfc98706e 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
2009-07-14 04:13:04 +00:00
Daniel Genrich
8f98c5e873 Fix cloth UI + tooltips - patch provided by nudelZ 2009-07-13 22:35:04 +00:00
Campbell Barton
2ba8b72157 RNA & PyAPI
* 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.
2009-07-13 19:33:59 +00:00
Brecht Van Lommel
1334ed3038 2.5: fix for last commit, missing ffmpeg #ifdef. 2009-07-13 19:17:52 +00:00
Brecht Van Lommel
e1e489c13b 2.5: and the B.blend.c to go with the last commit. 2009-07-13 19:10:35 +00:00
Brecht Van Lommel
41fb3626f3 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.

Added:
* 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.
2009-07-13 19:09:13 +00:00
Brecht Van Lommel
689abe000d 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.
2009-07-13 18:47:08 +00:00
Campbell Barton
1227d5d6d3 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
2009-07-13 12:17:07 +00:00
Campbell Barton
030e5bd93e 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.
2009-07-13 11:41:24 +00:00
Arystanbek Dyussenov
fb150e12c5 - FBX exporter conversion continued
- added (uncommented actually) PoseChannel.pose_matrix
- added Object.dag_update that calls DAG_object_flush_update. I'm not sure if it's needed, but FBX exporter uses it.
2009-07-13 11:04:18 +00:00
Chingiz Dyussenov
60e2416ac0 Added object hierarchy support to importer. 2009-07-13 08:41:37 +00:00
Campbell Barton
89830ea0c8 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.
2009-07-13 08:33:51 +00:00
Brecht Van Lommel
26ef6da24b 2.5
* 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.
2009-07-13 00:40:20 +00:00
Janne Karhu
6fb0181b50 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.

Fixes:
- 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.
2009-07-12 23:38:47 +00:00
Andre Susano Pinto
a6b328b825 *Moved rtbuild to bf_render_raytrace
*Added vbvh - Just a experimental tree type :)
Variable Way BVH - there is no hardcoded number of childs per each Tree Node
 - idea is to optimize a tree to reduced the expected number of BB tests even after applying SAH (for that an hardcoded n-way is not enough)
 - for now childs are stored on a linked list
2009-07-12 18:04:10 +00:00
Andrea Weikert
5f8f2fc33a 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.
2009-07-12 13:06:52 +00:00
Campbell Barton
78703a9ef8 python console in ~80 lines
Shift+Enter in the text editor executes the TEXT_OT_line_console operator defined in space_text.py

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.
2009-07-12 12:47:34 +00:00
Andrea Weikert
184dca5396 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
2009-07-12 09:03:09 +00:00
Andrea Weikert
2940384d9a 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
2009-07-12 08:12:22 +00:00
Campbell Barton
ba1082444e made text editor margin work with different font sizes.
also made it draw the width needed, was fixed at 4.
2009-07-12 07:37:25 +00:00
Joshua Leung
345be5cbbc 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.
2009-07-12 07:28:25 +00:00
Arystanbek Dyussenov
ffa5636a8b Reusing existing blenkernel function calc_action_range for Action.get_frame_range. 2009-07-12 07:20:49 +00:00
Arystanbek Dyussenov
11a47a02c7 Added Action.get_frame_range returning a (min, max) pair or (0, 0) if there are no keys. 2009-07-12 06:59:57 +00:00
Joshua Leung
fa8bd34d95 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.
2009-07-12 04:29:36 +00:00
Joshua Leung
bb158ad572 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.
2009-07-12 03:42:39 +00:00
Brecht Van Lommel
3116062a82 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.
2009-07-12 02:06:15 +00:00
Martin Poirier
8b9bb47a3f Cleaning up manipulator code a bit
Made transform confirm or cancel on mouse up. More inline with button clicking and better for tablets.

Add operator params to make sure Rip and Extrude turn off PET and Mirror correctly.

Note: sorry for all the whitespace changes, I need to reconfigure this editor not to do autocleanup.
2009-07-12 02:01:13 +00:00
Andre Susano Pinto
e264087fad I had applied a patch twice.. code was duplicated 2009-07-11 22:29:53 +00:00
Guillermo S. Romero
42469ba1e5 SVN maintenance. 2009-07-11 22:22:53 +00:00
Andre Susano Pinto
d6aefa6abd Added module bf_render_raytrace (source/blender/render/intern/raytrace)
to be able to use C++ at raytrace code
	C++ used in here is basicly C with templates and function overloads,
	to make it easier to reuse code between structures.

For now BVH was converted in C++ and moved to this module
2009-07-11 22:13:01 +00:00
Arystanbek Dyussenov
870a9d6104 RNA functions can now return dynamic arrays (float, int/boolean). RNA handles freeing memory.
Example code: http://pastebin.mozilla.org/662154.
2009-07-11 16:11:26 +00:00
Brecht Van Lommel
79134a54b9 2.5: X11
* Cursor grabbing is now done only if the OPTYPE_BLOCKING flag
  is set for the operator, since for e.g. render it should not
  block.
2009-07-11 14:51:13 +00:00
Brecht Van Lommel
f3fdf9257b 2.5: use primitive icons in the Add Object menu. 2009-07-11 14:50:12 +00:00
Campbell Barton
b1d01dae36 PyApi
* refcount error if StringIO or io modules could not be imported
* importing python modules like math didnt work because the script registration overwrote the script path. now just prepend the path.
2009-07-11 13:57:56 +00:00
Brecht Van Lommel
b775f1bb32 2.5:
* Code to start moving 3D view header and panels to python, at
  the moment the View menu and one empty panel is in python. The
  C header code is wrapped in one template, so parts of that can
  be moved over while still keeping things working.
* Fix for mistake in RNA enum commit yesterday, and some warning
  fixes.
2009-07-11 13:32:20 +00:00
Joshua Leung
0096a3dee2 2.5 - Made more operators for constraint buttons
* Move Up/Down and Delete are now operators 
* Made TrackTo constraint use expanded enum toggles for up axis too. 
--> BUG ALERT: specifying name and expand in the arguments to itemR doesn't work (name gets skipped)
2009-07-11 12:54:17 +00:00
Arystanbek Dyussenov
f221d9128d Added Scene.set_frame RNA function to get immediate scene update.
Changing Scene.current_frame doesn't work in this case because it adds 
a notifier.

Also added RNA_property_update call in pyrna_struct_setattro so that 
notifiers are added when a property changes.
2009-07-11 11:58:50 +00:00
Joshua Leung
10d14e7259 2.5 - Restored Set/Clear Inverse Buttons for ChildOf Constraint
I've tagged these operators with CONSTRAINT_OT_* not OBJECT_OT_constraint_* since constraints can operate on Bones too (and do so more often)
2009-07-11 11:52:20 +00:00
Campbell Barton
8a1caaed32 Object mode select grouped operator (Shift+G and Select manu)
Group option currently doesnt handle multiple groups.

Set makefiles python version to 2.6 for linux since its common now.
2009-07-11 11:31:49 +00:00
Joshua Leung
5022bf7ccd 2.5 - Fixing some typos for name of Graph Editor operator
An error that slipped in during the merge process?
2009-07-11 10:23:07 +00:00
Joshua Leung
a7837efb16 2.5 - Added descriptions to all Animation Editor operators
DopeSheet and Graph Editor operators were missing these, since many of these operators were written before that field was added.
NLA Editor's operators already have them.
2009-07-11 10:20:48 +00:00
Arystanbek Dyussenov
3ad64726ee Merge from 2.5 -r 21285:21515. Thanks Joshua! 2009-07-11 09:14:12 +00:00
Campbell Barton
a7287165db remove duplicate function. 2009-07-11 07:46:11 +00:00
Joshua Leung
4a0df3ad7b 2.5 - NLA SoC Branch Merged to 2.5!
(19863 to 21513)

Highlights of the new NLA System (and related Animation System changes):
* NLA Data is stored in AnimData alongside Action and Drivers. The NLA stack is evaluated before the Action, with the Action always overriding the results of the stack.
* NLA Data is arranged in 'Tracks', which act like PhotoShop layers. These can be muted, protected, and/or made to be played back by themselves
* Within each track, there can be multiple 'Strips'. There are 3 types of strip -> Action Clip (references some action), Transition (blends between the endpoints of two strips), and Meta (container for several strips that occur sequentially)
* FModifiers can be applied to strips, and strips can have animated influence/time controls. Playback for strips can also be backwards now!
* Playback can now go in forward and backwards directions.
* Animation Editors have been polished (unfinished features added, existing features cleaned up and made more consistent)

Notes for BuildSystem Maintainers:
* Only scons has been actively tested. Makefiles should work fine.
* MSVC ProjectFiles are broken due to the very way they work.
* CMake status unknown...

Other notes:
* Hopefully I haven't made any mistakes while doing the merge. More files than expected were showing some weird conflicts, so you may have some broken code...
* Not all old files (with NLA) data load exactly the same anymore. However, the bulk of the files out there should be ok (I hope)
2009-07-11 05:41:21 +00:00
Joshua Leung
576a642ff9 NLA SoC: Merge from 2.5
21470 to 21512

Next up, NLA-branch to 2.5 :)
2009-07-11 03:23:45 +00:00
Joshua Leung
1105ee701e NLA SoC: Quick commit of skeleton of auto-blending setting code to be completed later... 2009-07-11 03:09:44 +00:00