Commit Graph

17267 Commits

Author SHA1 Message Date
William Reynish
1847f6198e After discussion with Campbell, split Scene tab in Scene and Render. This makes a clearer distinction between render and scene settings. 2009-10-14 14:07:32 +00:00
Brecht Van Lommel
1ce959b16e Shape Keys: disable the temporary shape display system, where
it would show you the last selected shape key until doing
another operation. This is confusing, and the Pin button allows
you to do the same kind of shape browsing.
2009-10-14 13:21:54 +00:00
Campbell Barton
c7c2e3de1e set scene, currently UI is in the render buttons, should be moved to a scene buttons area.
added a property flag PROP_ID_SELF_CHECK, so properties can be set to point to anything but themselves.
2009-10-14 13:20:20 +00:00
Joshua Leung
cd202a1a24 Drivers UI - Converting to Layout Engine
* Converted Drivers UI to mostly use the Layout Engine
* All the buttons that perform actions are not operators yet (the code for that would be quite icky still)

* I've added some (commented out) calls for the property definitions of Driver properties to perform Depsgraph updates. I've left these commented out until we have the option to turn off auto-updates, since with driver editing, that could be very dangerous.

* Drivers can now (in theory) use any ID-block, using the Any-ID template added earlier. However, be warned that the stupid depsgraph won't be able to cope with most of these cases.


TODO: 
- more fancy widgets for RNA-Path and Index will come later
2009-10-14 11:57:26 +00:00
Brecht Van Lommel
3d57e84088 Bugfix: new bump mapping with UV coordinates wasn't working
correct, my mistake in merging the patch.
2009-10-14 11:17:59 +00:00
Campbell Barton
0b19577930 skin/loft was broken, was passing short[2] as float[2] 2009-10-14 10:33:27 +00:00
Joshua Leung
d389406766 DopeSheet/Action Editors - Summary Channel Tweaks:
* Summary channel now works in DopeSheet AND Action Editors
* By clicking on the expand/collapse widget on the summary channel, you can now show/hide all the other channels in the editor.
2009-10-14 09:54:29 +00:00
Brecht Van Lommel
8884f3fe5c Bugfix: compositing nodes + border render + crop didn't work correct. 2009-10-14 09:40:09 +00:00
Joshua Leung
1ef163f1e0 UI Templates: ('Any ID' Selector)
Added new template for choosing to use any type of ID-block. The first combo box allows you to choose the type of ID-block that gets used, and the second box allows you to choose the ID-block of the type specified by the first one.

This is currently used for setting the ID-block used for Keying Sets, but the main user for this was intended to be the Drivers UI. However, I still need to clear up a few button-event issues there before I can port this over.


Additional Bugfixes:
* Adding new Keying Set path was setting the active path wrong, meaning that you had to click on the list to get some response after adding
* Bone Groups list was being drawn too long by default (when empty)
2009-10-14 09:08:53 +00:00
Brecht Van Lommel
daebfaaa49 Bugfix: uv editor transform operators were not working anymore
after the recent retopo/snap commit.
2009-10-14 09:08:48 +00:00
Joshua Leung
828e3f3059 Left in debug prints 2009-10-14 03:00:35 +00:00
Joshua Leung
e87839b673 Bugfix: Automerge keyframes was broken - the function call to perform the merging was commented out 2009-10-14 02:18:59 +00:00
Joshua Leung
adddfffe23 * Fixed crash with operator cheat-sheet
* Removed obsolete comment
2009-10-14 00:01:34 +00:00
Martin Poirier
a9cf4bbf02 Use new operator to toggle view3d draw type. 2009-10-13 23:15:34 +00:00
Nicholas Bishop
3b805af8af Various warning fixes 2009-10-13 19:02:30 +00:00
Campbell Barton
e3d8c8eba8 added back space switching keys Shift+F2 to F12
- Shift+F2 was Export DXF, made Logic Editor
- Shift+F4 was data browser, made console
- Shift+F11 was fullscreen in 2.5, changed fullscreen to Alt+F11

added Area.type so RNA can switch the type.
2009-10-13 17:50:14 +00:00
Thomas Dinges
ee29802378 [#19634] Missing - "All Edges" Button in edit mode Preferences 2009-10-13 17:49:05 +00:00
Brecht Van Lommel
12b3d458f2 Bugfixes for particle mode:
* Fix crash removing all particles.
* Brush added particles did not get correct coordinates.
2009-10-13 17:15:12 +00:00
Martin Poirier
52f1ed4db8 Rename all enums called "prop_mode_items" into something more sensible. 2009-10-13 16:08:34 +00:00
Martin Poirier
db763fc445 - Identify and use retopo icon from icons image.
- Reuse proportional edit enums between rna scene and transform operator
2009-10-13 16:08:02 +00:00
Martin Poirier
4636438394 Enable snapping for curve edit mode.
It's still not possible to snap TO a curve, but at least curves control points can be snapped (or projected) to mesh geometry.
2009-10-13 16:05:57 +00:00
Campbell Barton
edfe78aec9 Context operators for adjusting context values directly to avoid adding operators for adjusting single values which also need duplicate notifiers.
wm.context_set(path="scene.tool_settings.someattr", somevalue)
wm.context_toggle(path="scene.tool_settings.somebool")
wm.context_toggle_values(path="scene.tool_settings.some_enum", value_1="somevalue", value_2="othervalue") # switch between 2 values
wm.context_cycle_enum(path="scene.tool_settings.some_enum", reverse=False)

the path value is taken from the context so the full path is 
context.scene.tool_settings...

This means in keymaps you can cycle draw modes, change PET- anything with rna access.
If its not so nice to map keys to operators like wm.context_set we could use macro's to wrap it and have its own name

Use this for PET and setting pivot options

- Made userpref key shortcut Ctrl+Alt+U since its not used in 2.4x
- added pivot_point_align (Alt+Comma)
- added PET wasnt rna wrapped correctly.
2009-10-13 15:30:19 +00:00
Joshua Leung
bdbae46519 Armature Ghosting Bugfix:
I noticed that armature drawing seemed to be using the wrong colours for ghosting in some situations (in particular, Cessen's biped rig for 2.5). Commented out what appears to be the offending code for now. 

Not totally sure why this broke yet, but as possible bonus of this, we sometimes get coloured ghosted controls (if bone groups were in use).
2009-10-13 12:09:11 +00:00
Joshua Leung
d3ebd62139 Animation Editors: Filtering buttons Cleanup
The filtering buttons for datatypes will now only be shown if there is data of that type present in the current file. They will still be shown in the same order, but by hiding the ones that won't be of any relevance, the presentation of the views should be cleaner (I hope ;)
2009-10-13 11:32:03 +00:00
Joshua Leung
de818dace5 DopeSheet: DopeSheet Summary Channel
Added a summary channel that appears as the first channel in the DopeSheet. For now, this is disabled by default, but can be enabled using the 'Summary' toggle in the header between the mode selector and the standard filtering options. This has been done, since there is a possibility that it will make the DopeSheet run a bit slower.

In this channel you can do everything that you can normally do with DopeSheet channels (i.e. select, transform, edit, etc). It might be worth noting though that care probably needs to be taken when trying to use Copy/Paste, since that is still a bit fidgety...

In the process, I've fixed a few bugs, mostly with selection:
- Selecting keyframes in scene summaries wouldn't work
- Border select only worked in F-Curve and Group channels
2009-10-13 11:21:02 +00:00
Andre Susano Pinto
f4d2926986 Fix [#19602] Rayshadow that goes through transparent plane disappears
(some bugs may show on other places if some of the code isnt prepared to handle non-normalized is->vec)
2009-10-13 10:52:18 +00:00
Campbell Barton
8f25c0a799 moving textures up and down didnt move the material flag, made editmesh skin Ctrl+Alt+F 2009-10-13 08:55:11 +00:00
Campbell Barton
4063c230af fix for warnings, wkey menu wasnt registered 2009-10-13 07:39:08 +00:00
Joshua Leung
4b593ce328 * Fixing crash on mingw when entering world buttons
* Changing hotkey in text editor for 'jumping' to a particular line to Ctrl-G, since this appears to be more standard (and is easier to hit).
2009-10-13 06:15:41 +00:00
Joshua Leung
f8ab477f45 2.5 Bugfixes:
* Reverting some changes I made to try and get Action Groups with no viewable F-Curves, but were collapsed to get hidden. These were causing buggy behaviour

* Move bones to armature layers, and change armature layer operators now use the new automatic properties drawing invoke callback. This allows changing the buttons there immediately affect the bones in the viewport

* #19581: Text Editor: "Jump To" (go to line) not working
Made this use the automatic operator props invoke callback, and fixed an RNA properties bug for this (the default value and range values were swapped).

* PoseLib rename pose operator now works again. Once again, this uses the auto-props popup. Also, improved the code here while I was at it.

* Disabled non-functional/old entry in Select Linked operator ("IPO's")
2009-10-13 05:50:26 +00:00
Joshua Leung
7171c5928e Changing the animation editor filters should now result in the editors updating in realtime afterwards again. 2009-10-13 02:21:18 +00:00
Martin Poirier
3a1216a2f2 Project option for snap to faces.
This is similar to the old retopo all option but uses the snapping code and not the openGL depth buffer (it's thus more precise).

Not sure if making it available as a snap option is sensible, this is up for discussion.

NOTE: it will get slow fast on large meshes, we need to plug in an acceleration structure into snapping.

This will need an icon too.
2009-10-12 22:33:32 +00:00
Campbell Barton
d2e1e0d2a9 remove C specials menus, reuse python ones from the header menu instead. 2009-10-12 21:06:03 +00:00
Brecht Van Lommel
10198e99ff Deep Shadow Buffer
Since the deep shadow buffer summer of code project is not actively under
development anymore, I decided to build my own DSM implementation from
scratch, based on reusing as much existing shadow buffer code as possible.
It's not very advanced, but implements the basic algorithm. Just enough so
we can do shading tests with it, optimizations and other improvements can
be done later.

Supported:
* Classical shadow buffer options: filter, soft, bias, ..
* Multiple sample buffers, merged into one.
* Halfway trick to support lower bias.
* Compression with user defined threshold.
* Non-textured alpha transparency, using Casting Alpha value.
* Strand render.

Not Supported:
* Tiling disk cache, so can use a lot of memory.
* Per part rendering for lower memory usage during creation.
* Colored shadow.
* Textured color/alpha shadow.
* Mipmaps for faster filtering.
* Volume shadows.

Usage Hints:
* Use sample buffers + smaller size rather than large size.
* For example 512 size x 9 sample buffers instead of 2048 x 1.
* Compression threshold 0.05 works, but is on the conservative side.
2009-10-12 19:41:40 +00:00
Campbell Barton
b5f820cd87 added rna api MVert,MFace & MEdge index properties
eg.
 for v in me.verts: print(v.index)

added calc_edges as an option eg.
  mesh.update(calc_edges=True)

This is needed when adding faces to an existing mesh which create new edges.
2009-10-12 19:34:58 +00:00
Brecht Van Lommel
0696cf23e5 Fix #19631: soft size setting for lamps was not RNA wrapped correct. 2009-10-12 19:19:29 +00:00
Brecht Van Lommel
d2551d1bb1 Bugfix: crash in assigning automatic vertex weights from armature. 2009-10-12 17:16:44 +00:00
William Reynish
6b03b4285c *Moved the texture reordering buttons to the side
*Use same icons for reordering in constraints, modifiers.
2009-10-12 17:00:38 +00:00
Campbell Barton
fbde77ce80 texture slots up/down back 2009-10-12 16:00:39 +00:00
Martin Poirier
0eab183a66 Following up on revision 23783
Transform saves back tool settings only when they weren't set as operator argument (and only when running modal).
2009-10-12 13:37:07 +00:00
Brecht Van Lommel
f1a0df22df Bugfix: texture nodes header was still showing wrong texture
when using node materials.
2009-10-12 13:12:45 +00:00
Campbell Barton
e36003e8e7 macro's can set options for the operators they execute
changed extrude, rip and duplicate to disable proportional editing however this gives a different problem now.
Commented in transform.c
 // XXX If modal, save settings back in scene

this changes disables the option whenever the macro used used.
2009-10-12 12:54:08 +00:00
Damien Plisson
600fcd98f3 Fix some mem leaks 2009-10-12 11:41:20 +00:00
Joshua Leung
237cd688aa Animation Editors: 'Only Selected' filtering option now works on Pose Channels too
* Only F-Curves and Drivers that affect selected bones will be visible when this happens. 
* Moved the function to grab text within a pair of "" following some prefix to blenlib.
2009-10-12 11:27:34 +00:00
Joshua Leung
829bbda7f5 Bugfix #19616: vertex group select as IK target cause crash in Blender2.5
Thanks to Masahito Takahashi (mato)  for the report and patch to fix this!
2009-10-12 09:39:57 +00:00
Campbell Barton
eaadc0685b fix for own typo r23771, reported as [19621] Weight Paint crashes in rev. 23775 2009-10-12 06:45:55 +00:00
Matt Ebb
0c0aa79cb9 * crash fix in volume render, less reliance on global R 2009-10-11 23:04:01 +00:00
Campbell Barton
6b652ca543 realized some parts of the code might use screen/vert projection on instance objects which dont use the object matrix normally.
moved functions outside *_foreachScreen' funcs into their callers (mainly selection tools)
2009-10-11 20:32:25 +00:00
Campbell Barton
84172b31b5 remove OB_RADIO, added function by mistake 2009-10-11 20:03:55 +00:00
Campbell Barton
dff1738765 bugfix for exitmode verts being unselectable. caused by view3d_project_short_clip/noclip being used by selecton code outside of object drawing (which isnt supposed to happen according to view3d_project_short_* comments).
Deal with this by adding ED_view3d_init_mats_rv3d(ob, r3d) which initialized the region mat's and is used in mesh_foreachScreenVert, mesh_foreachScreenEdge etc.
2009-10-11 19:57:56 +00:00
Campbell Barton
efed73598f Use OB_MODE_EDIT as a flag everywhere, also fixed a typo which made drawing the set-scene not work right. 2009-10-11 19:06:38 +00:00
Lukas Steiblys
7ac1c7c899 fixed the code that updates normals of quads when sculpting 2009-10-11 12:09:14 +00:00
Campbell Barton
4081f33687 EditMesh was using VBO's even when off in the user preferences causing glMapBufferARB to return an invalid array, however setDrawOptions was (incorrectly) disabling VBO's in almost all cases so it didnt crash except for entering editmode on an object used as a custom bone shape.
Changed to allow setDrawOptions (since it works fine), but only to use VBO's when its enabled in the userprefs.
2009-10-11 11:21:51 +00:00
Joshua Leung
77bfc417ff Bugfix #19612: Incorrect ranges for frame range properties broke playback. I'm still not exactly sure which commit did this evil deed, but at least it's fixed now... 2009-10-11 07:29:53 +00:00
Campbell Barton
ac441cecd0 bugfix - [#19563] Select camera+ctrl alt 0 crash 2009-10-10 23:50:15 +00:00
Campbell Barton
fc44a97b73 adding a cone didnt work 2009-10-10 23:15:52 +00:00
Campbell Barton
a3f6b0ed00 - add torus back from 2.4x as an operator
bpy.ops.mesh.primitive_torus_add(major_radius=1, minor_radius=0.25, major_segments=48, minor_segments=16)

- experemental dynamic menus, used for INFO_MT_file, INFO_MT_file_import, INFO_MT_file_export and INFO_MT_mesh_add. these can have items added from python.
eg.

- removed OBJECT_OT_mesh_add, use the python add menu instead.

- made mesh primitive ops -  MESH_OT_primitive_plane_add, ...cube_add, etc. work in object mode.

- RNA scene.active_object wrapped

- bugfix [#19466] 2.5: Tweak menu only available for mesh objects added within Edit Mode
  ED_object_exit_editmode was always doing an undo push, made this optional using the existing flag - EM_DO_UNDO, called everywhere except when adding primitives.
2009-10-10 21:23:20 +00:00
Andre Susano Pinto
deb30e8f9e Fix #19571 (reported by Markus Ilmola):
Added missing callbacks. Was leading to crashs when the raytree was empty.
2009-10-10 18:42:20 +00:00
Martin Poirier
622ffe263a Bringing back the transform orientations panel.
Orientations enum in view3d. Full list of custom orientation (RNAified) in scene.
2009-10-10 17:40:56 +00:00
Martin Poirier
811a767827 Add operator and operator type flag for GRAB_POINTER, don't coopt the OPTYPE_BLOCKING flag for that.
It will check if either the operator or operator type flags are set on top of the user preference before grabbing the pointer.

I've set that flag for 3d view navigation operators, others should be set too (no transform, I'll deal with that one).
2009-10-10 17:19:49 +00:00
Campbell Barton
f716f22d1f changed limits for some rna values, added object.scale_linked_x/y/z 2009-10-10 16:17:33 +00:00
Campbell Barton
85ebea5838 When in localview, MKey moves objects out of localview, added redraw notifiers 2009-10-10 12:29:11 +00:00
Campbell Barton
5621848629 - added redraw notifier.
- removed custom invoke function, use generic names (was misleading since conversion is done on selection, not just active).
- made convert mesh to curve use the 'keep_original' option.
2009-10-10 10:49:17 +00:00
Thomas Dinges
331a58d44c * Added the new Render Icons to the menu as well.
* Added Tooltips for Help Scripts.
* Minor tweak to Continuous Grab Tooltip, as it now works on Mac too.
2009-10-10 09:34:22 +00:00
Matt Ebb
d30be46ad8 * icon set updates, thanks jendryzch 2009-10-10 08:40:44 +00:00
Martin Poirier
1cc79c1a95 Fixing mixed code and declaration.
PEOPLE, PLEASE CHECK YOUR WARNINGS BEFORE COMMIT
2009-10-10 03:29:03 +00:00
Joshua Leung
f9bb4e3195 * Added Grease Pencil Operator buttons to the Toolshelf
* Cancelling loopcuts with EscKey or RMB now works again.
2009-10-09 23:34:52 +00:00
Campbell Barton
fb561fb4c8 added mesh to curve conversion (edge loops only)
like the script in 2.4x
2009-10-09 22:09:48 +00:00
Matt Ebb
0b23e65e86 * more small raytrace fixes 2009-10-09 22:06:23 +00:00
Brecht Van Lommel
578bb93ada Add reload button for image textures. 2009-10-09 22:00:33 +00:00
Brecht Van Lommel
ca77d6dabb Animation playback can now also be cancelled with ESC key. 2009-10-09 21:50:33 +00:00
Brecht Van Lommel
e5d61c7f41 Bugfix: separate mesh did not preserve UV/Color layers. 2009-10-09 21:45:14 +00:00
Brecht Van Lommel
a5b30906ad Bugfix: texture nodes render without OSA was using uninitialized
variables, giving incorrect results.
2009-10-09 20:59:44 +00:00
Martin Poirier
7d07342c09 -f argument uses MINFRAME instead of 1 (makes it possible to render negative frames on command line). Not that useful, but it's good to use the same limit everywhere. 2009-10-09 20:44:50 +00:00
Brecht Van Lommel
638ed7d0a8 Fix background image sometimes drawing into depth buffer, causing
wireframes to be occluded.
2009-10-09 15:47:35 +00:00
Brecht Van Lommel
dfbe2f9974 Fix for crash when saving a render result image, then rendering
again. The saved image would still point to the render buffer,
which was freed again on render. This is not a real solution but
avoids the crash for now.
2009-10-09 15:09:21 +00:00
Campbell Barton
8c96e2f4d2 - added ramp diffuse & spec factor rna props
- made 3dspace camera editable
- convert in object menu
2009-10-09 14:35:54 +00:00
Daniel Genrich
105a53a29d Bugfix for crash when clicking on "View->Properties". Was accessing unused memory here (uiBlock *block is uninitialized).
If there is the need of uiBlockEndAlign() please get the valid uiBlock pointer from somewhere!
2009-10-09 13:34:24 +00:00
Brecht Van Lommel
3b8925c655 Particle Edit Mode:
* Fix crash trying to enter particle mode when the particle modifier
  is disabled in the stack.
* Fix redraw being very slow due to the draw function causing the
  object to be recalculated on each redraw (through PE_draw_object).

* Removed the system where PE_get_current would automatically create
  the particle edit, this would run from poll() functions, which gave
  all kinds of issues, now it only creates the data on enter/exit
  and switching active particle system.
2009-10-09 13:25:54 +00:00
Thomas Dinges
ae6c08ac5e Wrong Tooltip for Continuous Grab. 2009-10-09 12:47:25 +00:00
Campbell Barton
3d771d88d8 wm menu freeing was using freed memory, bone-parent names were being set to "" on menu draw WHY??? - r23247, you know who you are ;) 2009-10-09 12:34:37 +00:00
Joshua Leung
2cf7d4867d (Untested) String Replacement Function in blenlib
Currently this hasn't been tested yet, but committing this first before I potentially use it for fixing RNA-paths...
2009-10-09 12:18:32 +00:00
Joshua Leung
9f7038c5a7 * Warning fixes for previous commit for Modifier renaming.
* Removed some old code (depsgraph) that was already commented out
2009-10-09 12:16:58 +00:00
Joshua Leung
488c06d182 Cessen Request:
In Animation Editors, F-Curves for Pose Channel Constraints now include the Pose Channel and Constraint names in the 'owner' part of the name displayed, making it easier to identify which Pose Channel some constraint F-Curve belonged to.

e.g. The influence setting for an IK Constraint on bone "Boney"
Old Version:  Influence (IK)
New Version:  Influence (Boney : IK)

We can experiment with different representations of this later (maybe '>' instead of ':' ?)
2009-10-09 12:15:46 +00:00
Brecht Van Lommel
be3da5dfff 3D View panels now show object and bone name again, not sure it
belongs here still, but this came up often, it avoids having to
switch tabs a lot when creating things.

Also renamed uiLayoutFreeBlock to uiLayoutAbsoluteBlock.
2009-10-09 10:45:11 +00:00
Brecht Van Lommel
2226a5139a Fix some issues with showing the current textures when using
material nodes and texture nodes. Made it all use the same
give_current_*_texture functions now.
2009-10-09 09:50:49 +00:00
Joshua Leung
9ebcd9c5e4 A few bugfixes:
* #19583: Keying Sets list issues
Deleting a Keying Set (or a Keying Set Path) set the active index to 0, but that would mean that the first item would be selected but not visible.

* #19590: Keyframing properties of a modifier with more than one of it's type the property will highlight in all
- Modifiers now always have a unique name, so renaming a modifier should check that the name is unique. Most of the files changed in this commit were just to make sure that modifiers got unique names when they were created
- Modifiers path getter was wrapped a bit wrong (missing the "s around the name)

* Constraints Bugs
- Constraints renaming now also makes sure the names stay unique
- Fixed (or attempted to fix) compiler warnings about some enum declaration for distance constraint
2009-10-09 09:48:04 +00:00
Martin Poirier
1b6a09847a Partial revert of rev 23723
BRECHT, CHECK THIS

The change made it return RNA python properties with null data pointer instead of None.

That would make the particles and physics properties crash like this:

1. A valid property instead of None makes is seem like smoke (or other) modifier data is in context when it is Null.
2. UI code would try to access RNA properties of the (Null) modifier, which would crash
2009-10-09 01:34:46 +00:00
Campbell Barton
5c867406aa menus are now global (like operators), so for eg, the info add menu and the 3D add menu can be shared. 2009-10-08 19:06:32 +00:00
Brecht Van Lommel
3ebd58673f Key Configuration
Keymaps are now saveable and configurable from the user preferences, note
that editing one item in a keymap means the whole keymap is now defined by
the user and will not be updated by Blender, an option for syncing might be
added later. The outliner interface is still there, but I will probably
remove it.

There's actually 3 levels now:

* Default builtin key configuration.
* Key configuration loaded from .py file, for configs like Blender 2.4x
  or other 3D applications.
* Keymaps edited by the user and saved in .B.blend. These can be saved
  to .py files as well to make creating distributable configurations
  easier.

Also, user preferences sections were reorganized a bit, now there is:
Interface, Editing, Input, Files and System.


Implementation notes:
* wmKeyConfig was added which represents a key configuration containing
  keymaps.
* wmKeymapItem was renamed to wmKeyMapItem for consistency with wmKeyMap.
* Modal maps are not wrapped yet.
* User preferences DNA file reading did not support newdataadr() yet,
  added this now for reading keymaps.
* Key configuration related settings are now RNA wrapped.
* is_property_set and is_property_hidden python methods were added.
2009-10-08 18:40:03 +00:00
Campbell Barton
ff07676b40 bring back automerge - [#19538] automerge editing doesn't work 2009-10-08 15:50:42 +00:00
Campbell Barton
66634e2be4 toggle buttons for texture channels (hardcoded like UV layer buttons) 2009-10-08 15:29:43 +00:00
Daniel Genrich
e936c80985 Smoke:
* Bugfix for non initialized arrays (reported by nudelZ)
2009-10-08 15:19:57 +00:00
Campbell Barton
b8354a2da8 unselected group color was too hard to see in the 3D view, made darker 2009-10-08 14:11:06 +00:00
Campbell Barton
8056d27bac Alt+A in the sequencer now redraws other sequencer views, not ideal but ok for now. 2009-10-08 12:33:51 +00:00
Joshua Leung
5ce33cf2bd A few fixes:
* Loading old files didn't initialise the new rotation variables properly
* Fixed some errors with the newly added operator for copying RNA-paths for properties
* Auto-keyframing now correctly refreshes animation editors after adding keyframes. Made the keyingsets code send notifiers again, but now using the newly added WM_main_event_add()  (thanks Brecht)
* A few UI tweaks again for animation stuff (timeline, keyingsets UI)
2009-10-08 11:29:27 +00:00
Andre Susano Pinto
208d57323e Fixed #19571
(was crashing when building a raytree from a scene withouth any geometry)
2009-10-08 11:24:06 +00:00
Daniel Genrich
14f62c1321 Smoke:
* Enable external forces like e.g. wind
2009-10-08 10:18:14 +00:00
Campbell Barton
8f154364f2 separate material lost all materials for the new mesh 2009-10-08 09:22:39 +00:00
Campbell Barton
df6c18e963 - object.selected is now editable (uses update function to flag the scene base)
- editing properties from python wasnt running their update function.
- missing commas made dir(context) give joined strings.
- added __undo__ as an operator class attribute so python ops can be set as undoable. (like existing __register__)
2009-10-08 07:54:20 +00:00
Joshua Leung
da698657ce Keying Sets - Bugfixes + Auto-Keyframing
* Added a new option for Auto-Keyframing which makes it only insert keyframes for the items included in the active Keying Set. 
This only works for Transform Auto-Keyframing so far (other tools will get it added later). The option is disabled by default.

* Fixed bug where adding an 'entire' array to some KeyingSet would only start from the index of the button that the mouse was over at the time

* Made some UI tweaks for Keying Sets buttons (still heaps of missing options there).
2009-10-08 06:39:45 +00:00
Joshua Leung
6e43a69a8d Bugfix #19576: Auto keyframing does not record rotations on object level animation
The hardcoded paths for rotation keyframes on objects got broken by my commits to rename the rotation properties. I've taken this opportunity to recode the auto-keyframing code here to use the builtin keyingsets instead of going through and manually calling insert_keyframe(), thus preventing this problem in future.
2009-10-08 05:53:26 +00:00
Joshua Leung
b4b031eae7 Fixed remaining bugs with animating rotation modes:
* Removed the hack-functions to set euler rotations from the values set in the other rotation representations, even when euler rotations weren't being used. I pressume that this was added for being able to represent quats in terms of eulers for the UI, but really it would break animation evaluation (i.e. euler curves after quaternion curves would always block the quaternion curves).

* Object rotation values in the transform properties panel now take into account rotation modes, so the appropriate rotations will get converted to quaternions before being drawn.

* Fixed a few bugs with some of the conversion code (minor stuff left out).
2009-10-08 05:02:04 +00:00
Joshua Leung
475ab5ceb4 Rotation Modes Bugfix:
Animating rotations using different rotation modes should now work more often than before. 

Previously, quaternion and axis-angle values were stored in the same variable in DNA, but that was causing problems with other animation curves overwriting the values and causing the rotations to not work as expected. 

There are still some issues, but I'll track those down later tonight
2009-10-08 00:57:00 +00:00
Brecht Van Lommel
fd511eb984 Node Bugfixes:
* Compo node backdrop works again.
* Compo node previews and backdrop now get correct color management
  float to byte conversion.
* Compo nodes got unecessarily recalculated while moving nodes.
* Fix compo node viewer nodes not getting activated correctly.
* Main compo node preview render computations are now outside of
  mutex lock, so better for multithreading.
* Tex node outputs did not work in some files loaded from 2.4.
* Change RNA updates to take into account groups that may be shared
  between multiple node trees.
2009-10-07 22:05:30 +00:00
Brecht Van Lommel
1b7e5b9abe WM: test with context-less add notifier. Notifiers are one
of the main reasons for passing along context, while actually
they don't need much context at all. Might be removed again,
but would like to have this especially for RNA API functions.
2009-10-07 21:39:24 +00:00
Campbell Barton
0c857a4f14 - made ungrab a second function - WM_cursor_ungrab
- ungrab can restore the position of the mouse clamped to the window bounds (much nicer for transform)
2009-10-07 21:19:35 +00:00
Martin Poirier
a4e36f24c7 [#19354] Second press of axis key didn't do local orientation when global was selected as user orientation (frankly, I don't like it much to have an exception for that, but backward compatibility is ok, unless someone else has a strong argument against). 2009-10-07 20:55:14 +00:00
Diego Borghetti
ef13a40fed Makefile: Add missing raytrace directory. 2009-10-07 19:29:39 +00:00
Campbell Barton
763358fe91 copy icon in the material buttons list view so you can copy the current set of materials to other selected objects, (like Ctrl+L, Materials in 2.4x) 2009-10-07 16:32:55 +00:00
Brecht Van Lommel
df63ccd904 Transform Mirror:
* Make Ctrl+M key work for mirror in 3D view.
* Fix mirror along global axis, was mirroring around all axes when
  the object was rotated, due to wrong matrix order, was also not
  working in 2.4.
* Pressing e.g. X twice still doesn't go to local mode, would fix
  but don't know how the code is intended to work.
2009-10-07 16:10:06 +00:00
Campbell Barton
93b5375ca1 Making new faces (fkey, scanfill etc) didnt create faces with the active material.
Keep the editmesh material and active material in sync
2009-10-07 15:16:08 +00:00
Brecht Van Lommel
cf4f00b2fa Preview Render:
* Fixes for texture and material nodes.
* Texture node previews now work more like materials.
2009-10-07 14:48:29 +00:00
Campbell Barton
17c083a38f 'Add Group' back in the add object menu 2009-10-07 14:40:27 +00:00
Campbell Barton
568be17326 Option to copy the data path of an RNA button 2009-10-07 13:22:56 +00:00
Campbell Barton
9cf78144f1 Updated descriptions from Ron Walker 2009-10-07 12:19:47 +00:00
Matt Ebb
f5a9f420fb * More fixes post-raytrace commit 2009-10-07 12:17:29 +00:00
Campbell Barton
a899e9dd18 Check if the object is in editmode with (ob->mode==OB_MODE_EDIT) rather then (ob==scene->obedit)
Was trying to fix a hard to redo crash with custom bone shapes in editmode but cant redo. still, will help with future multi-editmode.
2009-10-07 11:36:29 +00:00
Brecht Van Lommel
efe3858000 Bugfix: move to layer was not assigned to M key yet. 2009-10-07 10:54:43 +00:00
Campbell Barton
395e61e77c own mistake in last commit 2009-10-07 09:55:18 +00:00
Daniel Genrich
60e75845fb Fix compile warning, function does not return anything (void function). 2009-10-07 09:49:37 +00:00
Campbell Barton
dfe7cde9f1 - rna path lookup crashed if the string was null (reported by Cessen with an empty driver)
- added TexMesh access ([#19505] Missing option : TexMesh)
- Ctrl+Tab works again, not-so-nice workaround, disallow switching to paint modes from editmode, but would be nicer to manage this with keymaps.
2009-10-07 09:23:29 +00:00
Campbell Barton
77476b294f Experimental option to allow moving the mouse outside the view, "Continuous Grab" in the user-prefs.
- Useful for dragging buttons to the far right when theyd otherwise hit the screen edge.
- Useful for transform though probably NOT what you want when using the transform manipulator (should make an option).
- When enabled, number buttons use this as well as a different conversion of mouse movement
  float numbuts: mouse 1px == 1-clickstep
  int numbuts: 2px == 1 (tried 1:1 but its too jitter prone)

details...
- access as an option to GHOST_SetCursorGrab(grab, warp)
- Currently all operators that grab use this, could be made an operator flag
- only Ghost/X11 supported currently
2009-10-07 07:11:10 +00:00
Campbell Barton
828395744a own warnings added last commit 2009-10-07 05:26:13 +00:00
Matt Ebb
e22b5fb271 * Add numpad enter as an alternative key to confirm/execute file browser 2009-10-07 05:13:31 +00:00
Matt Ebb
a8b82a49ad * notifier fix to redraw upon changing lamp shadow type 2009-10-06 23:37:11 +00:00
Matt Ebb
f413091dfa * Fix for previous 'set object as camera' operator - now properly sets the scene active camera too, plus better notifier. 2009-10-06 23:13:07 +00:00
Matt Ebb
91400d9da8 * Fix for crash with new raytree 2009-10-06 23:05:53 +00:00
Brecht Van Lommel
88ab193a21 Bugfix: IK constraint pole angle range was not correct. 2009-10-06 17:15:10 +00:00
Guillermo S. Romero
9e38ec2506 Add raytrace subdir to Makefiles.
The makefile is a copy of the source one, not tuned, just to unbreak build.
This raises some questions: why separate dirs? why each build system takes
a different approach (different libs vs all source files into one)?
2009-10-06 17:01:00 +00:00
Damien Plisson
07aba4f933 Cocoa port : First pure Cocoa version !
(Mostly for very early testers)

Cocoa uses coordinates with y=0 at bottom : updated wm_window.c and wm_event_system.c for COCOA build to avoid double conversions in response to mouse move events and GHOST_getCursorPosition

Known limitations:
No fullscreen support
Font issue in preference panel
libSDL uses some Carbon functions
2009-10-06 16:56:22 +00:00
Campbell Barton
8d54982f37 Material buttons now view the active node material shading settings.
Selecting a material in the node tree sets this as the active material and the buttons view redraws.

Added rna prop material.active_node_material

Currently its not clear what settings are used by the node material and the base material (needs some tedious research) so I made most panels use the node material with the exceptions of volumetrics, physics and halo settings.

We'll probably need to split the panels up to do this properly.
2009-10-06 15:31:25 +00:00
Nathan Letwory
76019d5fb9 * Remember, C-style declarations at the *beginning* of a scope, not C++ style wherever one pleases (before first usage). 2009-10-06 14:09:40 +00:00
Campbell Barton
dd8e2897ba new operator - bpy.ops.wm.call_menu(name="SOME_MT_menu")
This calls a registered menu as a popup so we can reuse header menus , currently used for Node editor and Sequencer add menu (Shift+A), can be used for toolbox too.
2009-10-06 13:04:31 +00:00
Andre Susano Pinto
2011ba50c8 Last fix still failed to link under mingw.
This time it works! (gcc and mingw can handle compile and link)
2009-10-06 12:23:25 +00:00
Joshua Leung
22605ec759 Bone Selections: Ability to set bones as unselectable
In the Outliner, it is now possible to toggle per bone the selectability of the bone in the viewport, as for Objects using the restriction columns. This can also be set using the RNA-api.

I've tested all commonly used tools IMO, but there may still be a few which I've missed. Please report those cases.

PS. For some reason, the define was already there, but not connected up to anything. Can't remember why anymore, but here it is...
2009-10-06 11:33:58 +00:00
Campbell Barton
c12cb02c56 sculpt was checking if multires was the last modifier,
instead check if its the last displayed modifier
2009-10-06 11:21:57 +00:00
Andre Susano Pinto
ba3ec58d01 *Added memset's to make sure counters start on zero
*Disabled ray counter (can be enabled on render/extern/include/RE_raytrace.h by commenting out the define)
*marked bvh_node_merge() as static inline (hopping it now compiles on gcc and mingw)
2009-10-06 10:52:14 +00:00
Joshua Leung
08deeee455 One last try - this should fix the remaining issues:
* Made bvh_node_merge() in svbvh.h static (fix suggested by jaguarandi). This makes mingw link again.

* Also, patched my previous fix for  ... = {}; since mingw didn't like the other fix (which was for msvc).
2009-10-06 10:32:07 +00:00
Joshua Leung
c93127d06f Some more compile fixes for jaguarandi's commit, this time for msvc+scons
* Replaced ... = {}; with ... = {0}; 

* Solved problem with logf(), where msvc couldn't figure out which version of log() to call (solved by casting the int argument to a float, but could also have been to double)...

* The cflags and cxxflags for scons when compiling the rendering module were only valid for gcc compiles. These will still need to get added for msvc sometime, but for now, there are no more warnings about unknown options...
2009-10-06 10:23:25 +00:00
Matt Ebb
58557ea737 * Cmake fix for raytrace accel, still not 100% but getting there... 2009-10-06 04:37:25 +00:00
Joshua Leung
1c940d7677 Attempts at some compile fixes for jaguarandi's code:
* mingw almost compiles again cleanly, except for a linking error when linking blender http://www.pasteall.org/8297
* win64 should compile again too to a similar degree?
* silenced warnings about no newlines...
2009-10-06 03:40:50 +00:00
Joshua Leung
3fe274b072 Several fixes:
* Code for generating 'Object' summary of Keyframes for DopeSheet (which is also used by the TimeLine for getting keyframes to draw) now considers materials, object data, and particles too.

* Rearranged the way that keyframing-related settings were presented in the User Preferences. The way the settings were grouped was plain confusing, and based on biased views from the old system. For the record, 'needed'+'visual' are always considered when inserting keyframes, 'always' is for autokeyframing, and default interpolation is only used for newly created F-Curves.

* Fixed bug #19472 - Scroll wheel scrolls in the wrong direction for enum-menus that were flipped (i.e. window type menu and 3d-view mode selector).
2009-10-06 03:05:20 +00:00
Andre Susano Pinto
04b60b4324 Merged Soc 2009 - raytrace optimization [0]
from branch [1] at rev 23647

[0] - http://wiki.blender.org/index.php/User:Jaguarandi/SummerOfCode2009/
[1] - https://svn.blender.org/svnroot/bf-blender/branches/soc-2009-jaguarandi
2009-10-06 02:56:11 +00:00
Matt Ebb
d28d3194f4 * Added 'set object as camera' operator
3D View: View -> Cameras -> Set Object as Camera  (Ctrl Numpad 0)
2009-10-06 02:45:42 +00:00
Andre Susano Pinto
63a88075b5 svn merge -r 23528:23646 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2009-10-06 01:58:22 +00:00
Andre Susano Pinto
11bdf6ea10 Added #ifdef __SSE__ so it can still build when SSE is disabled at compile time 2009-10-06 00:28:07 +00:00
Andre Susano Pinto
a62e37bfbe blibvh safe for 64bits 2009-10-05 23:30:00 +00:00
Janne Karhu
69a2432574 Small fix for some old files crashing in particle drawing. 2009-10-05 23:04:40 +00:00
Martin Poirier
1f0ee67579 [#19535]
Save back proportional editing size to toolsettings after transform.
2009-10-05 20:31:41 +00:00
Martin Poirier
4e60007102 [#19542]
Correct spacing with snapping buttons in 3d view header.
2009-10-05 20:30:47 +00:00
Campbell Barton
a0d8d7afe0 edge loop delete, should be a c macro but they cant do settings atm 2009-10-05 19:42:48 +00:00
Brecht Van Lommel
2072e7c6c7 VBO:
* Disable use of EditMeshDerivedMesh for VBO drawing in editmode.
  This is crashed when using e.g. subsurf in editmode, as the DM
  is not an EditMeshDerivedMesh.
2009-10-05 17:29:56 +00:00
Brecht Van Lommel
e61e1c5ca8 VBO:
* Fix slowdown/freeze entering editmode on a high poly mesh,
  dm->getNumFaces can be slow, don't call it in a loop.
* Fix 64bit pointer casting warnings.
2009-10-05 16:48:52 +00:00
Brecht Van Lommel
5f1b4334e2 VBO: disable VBO's by default. Not sure why this was not done, we
agreed on this as a condition for the project to be merged.
2009-10-05 16:40:13 +00:00
Brecht Van Lommel
4211e1a58a Raytrace Acceleration: small tweak to RNA and UI, hiding buttons
when they are not applicable.
2009-10-05 16:18:08 +00:00
Thomas Dinges
4df1e40006 Fixed [#19539] Texture > RGB Factor property doesn't appear in the UI 2009-10-05 15:59:12 +00:00
Janne Karhu
3816554cbc General particle bug fixes + few small goodies
The goodies:
* Curves can be used as normal dynamic effectors too with 
  the new "curve" field shape.
* Group visualization has optional duplication counts for
  each object in the specified group.
* Object & group visualizations, which are done without
  taking the dupliobject's global position into account
  (unless the whole group is used). This is much nicer than
  the previous behavior, but I added a "Use Global Location"
  option for those who want to use it the old way.
* The active particle system's particles are now drawn a 
  with theme coloured outline instead of pure white.
* Added object aligned velocity factors (buttons categorized
  and re-organized too).

Bug fixes:
* Absorption didn't work as the ui toggle button was forgotten.
* Some other force field ui tweaks.
* Crash after adding children and changing trails count.
* Display types "cross" and "axis" crashed.
* Particles weren't drawn with correct coloring.
* Billboards didn't update properly in viewport to camera
  location changes.
* Particle rotation wasn't recreated correctly from point cache.
* Changing particles amount crashed sometimes.
* Some files with child hair crashed on loading.
* Compiler warning fixes.
* Adding boids crashed on frame 1;
2009-10-05 13:25:56 +00:00
Damien Plisson
a344977147 Cocoa port :
- Window creation at preferred size
  Implement in Ghost the use of Cocoa functions to get the maximum visible rect (size and position) for the window contents (all screen excluding dock, top menu, and window title bar)
  Thus Apple specific code in window creation (wm_window.c & wm_apple.c) is no more needed => removed in case of Cocoa build

- Alert on exiting despite unsaved changes
  Add to GHOST method to maintain an all platforms (not apple specific anymore) status on unsaved changes
  Update GHOST_SystemCocoa to use this for asking or not user to confirm exit without saving changes
2009-10-05 12:55:16 +00:00
Lukas Steiblys
3ec79d79e9 normals were updated incorrectly in buffers when sculpting. Still not perfect. 2009-10-05 09:03:35 +00:00
Campbell Barton
0f07bea06b remove unused defines, cant check every case but from grepping the souece it should go ok. 2009-10-05 07:08:59 +00:00
Matt Ebb
af522abf33 * changes/additions to volume lighting
Volumes can now receive shadows from external objects, either raytraced shadows or shadow maps.

To use external shadows, enable 'external shadows' in volume material 'lighting' panel. This an extra toggle since it causes a performance hit, but this can probably be revisited/optimised when the new raytrace accelerator is integrated. For shadow maps at least, it's still very quick.

Renamed 'scattering mode' to 'lighting mode' (a bit simpler to understand), and the options inside. Now there's:

- Shadeless
  takes light contribution, but without shadowing or self-shading (fast)
  good for fog-like volumes, such as mist, or underwater effects
  
- Shadowed (new)
  takes light contribution with shadows, but no self-shading. (medium)
  good for mist etc. with directional light sources
  eg. http://vimeo.com/6901636
  
- Shaded
  takes light contribution with internal/external shadows, and self shading (slower)
  good for thicker/textured volumes like smoke
  
- Multiple scattering etc (still doesn't work properly, on the todo).
2009-10-05 02:59:47 +00:00
Nathan Letwory
729a63bbb6 * update default physics settings for jahka 2009-10-04 19:53:06 +00:00
Andre Susano Pinto
55541d8a81 Added some test_break during the build process.
(Maybe later this should be done with some thread_cancel function instead of doing variable/callbacks tests)
2009-10-04 16:56:00 +00:00
Lukas Steiblys
f82847687e VBOs weren't fully turned off in edit mode. Fixed that 2009-10-03 22:14:19 +00:00
Dalai Felinto
78d9891dfe mathutils: bugfix for matrix * vector
- terrible typo was making the multiplication to run in an infinite loop.
- Any matrix * vector multiplication would crash Blender.
eg
####
import Mathutils
from Mathutils import *

vec_ray = Vector(0.0, 0.0, 1.0)
tilt_mat = RotationMatrix(0.0, 3, "y")
vec_ray = tilt_mat * vec_ray
####
2009-10-03 21:48:15 +00:00
Guillermo S. Romero
74e1093007 SVN maintenance. 2009-10-03 16:21:47 +00:00
Lukas Steiblys
853f8212ca sculpt mode crash fix when VBOs disabled 2009-10-03 16:21:35 +00:00
Lukas Steiblys
e80d2cc426 imbusy GSoC'09 branch merge (Vertex Buffer Object support) 2009-10-03 15:35:01 +00:00
Joshua Leung
8204dffe8a UI: Bugfixes
* #19529: Saving in edit mode causes problems in mode buttons when reopening
* Fixed compiler warning in writefile for mingw
* AnimData for Lamp data was not recognised by RNA
2009-10-03 11:23:31 +00:00
William Reynish
2cbf21b582 UI tweaks
*Fixed some spacing issues in 3D View and Outliner headers
*Made the Bone properties layout consistent with Object properties
*Put Rotation Mode menus below transformation channels, being less important.
*Tiny layout tweak for area lamps
2009-10-03 11:19:14 +00:00
Joshua Leung
f4c697cf7f Keying Sets UI:
Added a way to view and edit Keying Sets via the Scene Buttons. These are still some tweaks needed to make this really workable, but should still work well enough for simply viewing and tweaking existing Keying Sets created using other means.

Additional bugfixes:
* Adjusted the size of labels on properties that had a 'label' for their name. Now it uses 1/3 of the total width instead, which looks much better for most cases.
* Added missing entries for adding Force Fields from the Info-header 'Add' menu. At some point we should unify this menu with the popup operator's one, since this is exactly the kind of situation we had hoped in avoid with new UI architectures.
* Moved all the operator defines for keyframing stuff to the 'intern' anim header instead
2009-10-03 04:21:38 +00:00
Joshua Leung
97d8839ad5 F-Modifiers: Fix for Function Generator's "type" field not working
The field in RNA got renamed, but the UI code didn't get corrected, so the field for this wasn't working
2009-10-02 23:36:02 +00:00
Joshua Leung
72554c5dbb Quick Animation Editors Bugfix:
The settings for expanding the set of materials and/or particles on Objects were inverted, resulting in the wrong icon being shown.
2009-10-02 23:28:58 +00:00
Thomas Dinges
44b74fa0ac Fixed [#19506] Missing buttons : Curve Guide.
Jahka: please check on the Kink type and axis RNA Wrapping. 
Todo: Make Curve Guide Field only available for Curve Objects.
2009-10-02 20:15:25 +00:00
Nathan Letwory
ca54ea078e * due to the setup of headers in mingw 4.4.0, includes could mess up. Making sure that windows.h isn't included where it shouln't (outside of __cplusplus) 2009-10-02 15:51:25 +00:00
Thomas Dinges
9ac8a1368f Fix for [#19524] Lamp icons are not updated in outliner. 2009-10-02 15:27:26 +00:00
Daniel Genrich
625da05e3a Smoke:
* Fix loading issue of blend files with smoke collision objects (was disabled on purpose since it will be subject of change, but can be solved using do_versions() later)
2009-10-02 14:40:51 +00:00
Joshua Leung
0a374e6679 Anim Bugfixes:
* Add F-Modifiers (for Graph Editor) was using a buggy poll() method. Silly typo.
* Bone groups now get duplicated when duplicating an armature object
2009-10-02 11:15:24 +00:00
Daniel Genrich
fbb47e8604 Smoke:
* Dissolve is back
* Obstacles coming back (some bugs left i think)
2009-10-02 11:09:05 +00:00
Benoit Bolsee
14619ec98d Move Inverse Kinematics panel to Constraint context. Make iTaSC parameter panel more readable. 2009-10-02 07:20:07 +00:00
Campbell Barton
ba2f052a37 projection painting changes from 2.4x r23600 2009-10-02 07:03:58 +00:00
Brecht Van Lommel
b26ef33b8e Fix #19311: adding/opening datablocks did not always make the right
one active. Now there's a function to get the pointer + property from
the UI, just like for the animation operators.

Also two fixes for fileselect events, regions are now preserved so that
context is restored to the old region, and the cancel callback is called
when the operator is cancelled.
2009-10-01 23:32:57 +00:00
Andre Susano Pinto
8da55763b5 *Updated UI options and added UI options to:
control whether instances are used or not
	control whether vertexs are stored localy or not

*Removed unsused code
2009-10-01 18:30:59 +00:00
Martin Poirier
57cf7d2d4a Bug fix
Snapping: transform snap in editmode couldn't snap to data in the same mesh.
2009-10-01 18:00:00 +00:00
Brecht Van Lommel
606e609f5d Fix cmake compilation on Windows, adding pthread includes,
patch by Guillaume, thanks!
2009-10-01 17:24:24 +00:00
Brecht Van Lommel
022a343223 Texture stack influences are now all separate values, and negative
mapped values now have their influence negated instead. Also a few
RNA changes for TextureSlot.

Bumped subversion for the version patch.
2009-10-01 17:15:23 +00:00
Roland Hess
1525ed42c9 Brought back mousewheel multicut to Ctrl-R loopcut tool that was recently added. Tweak still doesn't work for the loopcut op, but it didn't before, so at least we're advancing. 2009-10-01 16:37:08 +00:00
Martin Poirier
15d81b21f6 Fixing scons compile on windows.
Since bli_threads.h now includes pthreads directly, we need to had instructions in SConscripts everywhere for proper include path.

Frankly, I feel like this should be done in a global manner and not in a per lib fashion, but that is for another day.

This commit also fixes more missing properties
2009-10-01 16:32:33 +00:00
Brecht Van Lommel
37a729cb1d Fix crashes with .blend files saved in particle mode, derivedmesh
can't be assumed to be made yet then.
2009-10-01 16:30:05 +00:00
Thomas Dinges
1c3faa97ff Fixed a part of [#19494]. Transform Lock Options didn't updated 3D View's Transform manipulator.
* Minor Code tweak in material RNA.
2009-10-01 14:41:45 +00:00
Brecht Van Lommel
988e9132b8 Fix #19513: scroll wheel did not work when over disabled buttons. 2009-10-01 12:33:35 +00:00
Campbell Barton
492c545e05 only link against python when its enabled
remove duplicate linking flags (looks like a copy/paste error)
2009-10-01 11:21:40 +00:00
Matt Ebb
0901eafa8f * Added proper update/conversions for changing between degrees and "mm" in camera 2009-10-01 04:14:43 +00:00
Campbell Barton
bf3374426a Use curve twist for the CurveDeform modifier and bones (anything that uses curve_deform_verts() and curve_deform_vector()).
So means minimum twist and twist smoothing are now used.

the Z up quaternion from the path is rotated to match the up axis given.

There was no logical rule for the up vector, some cases flipped the normals when used with the CurveDeform modifier.
Use the default X-Up behavior and match other settings with this. (comments explain this in detail).



- Interpolating quaternions didn't work in some cases, disabled for now.
- 'no_rot_axis' is different from in 2.4x since it now removes rotation from the tilt whereas before it edited the axis before calculating the tilt.
2009-09-30 23:31:10 +00:00
Janne Karhu
bff893a420 Unified effector functionality for particles, cloth and softbody
* Unified scene wide gravity (currently in scene buttons) 
  instead of each simulation having it's own gravity.
* Weight parameters for all effectors and an effector group 
  setting.
* Every effector can use noise.
* Most effectors have "shapes" point, plane, surface, every point.
	- "Point" is most like the old effectors and uses the 
	  effector location as the effector point.
	- "Plane" uses the closest point on effectors local xy-plane 
	  as the effector point.
	- "Surface" uses the closest point on an effector object's 
	  surface as the effector point.
	- "Every Point" uses every point in a mesh effector object 
	  as an effector point.
	- The falloff is calculated from this point, so for example 
	  with "surface" shape and "use only negative z axis" it's 
	  possible to apply force only "inside" the effector object.
* Spherical effector is now renamed as "force" as it's no longer 
  just spherical.
* New effector parameter "flow", which makes the effector act as 
  surrounding air velocity, so the resulting force is 
  proportional to the velocity difference of the point and "air 
  velocity". For example a wind field with flow=1.0 results in 
  proper non-accelerating wind.
* New effector fields "turbulence", which creates nice random 
  flow paths, and "drag", which slows the points down.
* Much improved vortex field.
* Effectors can now effect particle rotation as well as location.
* Use full, or only positive/negative z-axis to apply force 
  (note. the z-axis is the surface normal in the case of 
  effector shape "surface")
* New "force field" submenu in add menu, which adds an empty 
  with the chosen effector (curve object for corve guides).
* Other dynamics should be quite easy to add to the effector 
  system too if wanted.
* "Unified" doesn't mean that force fields give the exact same results for 
  particles, softbody & cloth, since their final effect depends on many external 
  factors, like for example the surface area of the effected faces.

Code changes
* Subversion bump for correct handling of global gravity.
* Separate ui py file for common dynamics stuff.
* Particle settings updating is flushed with it's id through 
  DAG_id_flush_update(..).
  
Known issues
* Curve guides don't yet have all ui buttons in place, but they 
  should work none the less.
* Hair dynamics don't yet respect force fields.

Other changes
* Particle emission defaults now to frames 1-200 with life of 50 
  frames to fill the whole default timeline.
* Many particles drawing related crashes fixed.
* Sometimes particles didn't update on first frame properly.
* Hair with object/group visualization didn't work properly.
* Memory leaks with PointCacheID lists (Genscher, remember to 
  free pidlists after use :).
2009-09-30 22:10:14 +00:00
Campbell Barton
7d9bfdc31a building without bullet didnt work 2009-09-30 21:31:08 +00:00
Brecht Van Lommel
b466286c3e Render & Compositing Thread Fixes
* Rendering twice or more could crash layer/pass buttons.
* Compositing would crash while drawing the image.
* Rendering animations could also crash drawing the image.
* Compositing could crash 
* Starting to rendering while preview render / compo was
  still running could crash.
* Exiting while rendering an animation would not abort the
  renderer properly, making Blender seemingly freeze.
* Fixes theoretically possible issue with setting malloc
  lock with nested threads.
* Drawing previews inside nodes could crash when those nodes
  were being rendered at the same time.

There's more crashes, manipulating the scene data or undo can
still crash, this commit only focuses on making sure the image
buffer and render result access is thread safe.


Implementation:
* Rather than assuming the render result does not get freed
  during render, which seems to be quite difficult to do given
  that e.g. the compositor is allowed to change the size of
  the buffer or output different passes, the render result is
  now protected with a read/write mutex.
* The read/write mutex allows multiple readers (and pixel
  writers) at the same time, but only allows one writer to
  manipulate the data structure.
* Added BKE_image_acquire_ibuf/BKE_image_release_ibuf to access
  images being rendered, cases where this is not needed (most
  code) can still use BKE_image_get_ibuf.
* The job manager now allows only one rendering job at the same
  time, rather than the G.rendering check which was not reliable.
2009-09-30 18:18:32 +00:00
Campbell Barton
c3ff4b09be svn merge https://svn.blender.org/svnroot/bf-blender/branches/blender2.4 -r23566:23567 2009-09-30 13:58:21 +00:00
Joshua Leung
2a21c1acbe Animato: Bugfixes
* #19501: Only the first user of multi-user IPO's were getting converted to AnimData. 
Now, this AnimData gets converted multiple times - once for each user. This will mean that multi-user actions will no longer be multi-user after conversion though, although this could be fixed manually if there really is such a need.

* #19503: Nasty memory leaks when duplicating objects with AnimData
Fixed a few little oversights made when coding the copying code for NLA-data (which resulted in exponential copying-loops of doom), and sanitised the AnimData copying code for ID-blocks to be simpler to manage.
2009-09-30 04:59:14 +00:00
Campbell Barton
8b6f5c171d - rather then passing the python namespace dictionary to the controller function get the namespace from the converter.
- renamed SetPythonDictionary() to SetPyNamespace()
- remove IsLight(), GetGameObjectType() existed before this but wasnt used for lights.
2009-09-29 22:49:33 +00:00
Matt Ebb
71b3088596 Rework of volume shading
After code review and experimentation, this commit makes some changes to the way that volumes are shaded. Previously, there were problems with the 'scattering' component, in that it wasn't physically correct - it didn't conserve energy and was just acting as a brightness multiplier. This has been changed to be more correct, so that as the light is scattered out of the volume, there is less remaining to penetrate through.

Since this behaviour is very similar to absorption but more useful, absorption has been removed and has been replaced by a 'transmission colour' - controlling the colour of light penetrating through the volume after it has been scattered/absorbed. As well as this, there's now 'reflection', a non-physically correct RGB multiplier for out-scattered light. This is handy for tweaking the overall colour of the volume, without having to worry about wavelength dependent absorption, and its effects on transmitted light. Now at least, even though there is the ability to tweak things non-physically, volume shading is physically based by default, and has a better combination of correctness and ease of use.

There's more detailed information and example images here:
http://wiki.blender.org/index.php/User:Broken/VolumeRendering

Also did some tweaks/optimisation:
* Removed shading step size (was a bit annoying, if it comes back, it will be in a different form)
* Removed phase function options, now just one asymmetry slider controls the range between back-scattering, isotropic scattering, and forward scattering. (note, more extreme values gives artifacts with light cache, will fix...)
* Disabled the extra 'bounce lights' from the preview render for volumes, speeds updates significantly
* Enabled voxeldata texture in preview render
* Fixed volume shadows (they were too dark, fixed by avoiding using the shadfac/AddAlphaLight stuff)

More revisions to come later...
2009-09-29 22:01:32 +00:00
Campbell Barton
98ee2a781d option to build the BGE without python, uses existing python check (cmake and scons)
when python is disabled videotextures are not built.
2009-09-29 21:42:40 +00:00
Diego Borghetti
53f0c3b018 Fix link problem: Rename libed_preview -> libed_render 2009-09-29 20:26:06 +00:00
Brecht Van Lommel
15d07720e5 Sorry, three commits in one, became difficult to untangle..
Editors Modules

* render/ module added in editors, moved the preview render code there and
  also shading related operators.
* physics/ module made more consistent with other modules. renaming files,
  making a single physics_ops.c for operators and keymaps. Also move all
  particle related operators here now.
* space_buttons/ now should have only operators relevant to the buttons
  specificially.

Updates & Notifiers

* Material/Texture/World/Lamp can now be passed to DAG_id_flush_update,
  which will go back to a callback in editors. Eventually these should
  be in the depsgraph itself, but for now this gives a unified call for
  doing updates.
* GLSL materials are now refreshed on changes. There's still various
  cases missing, 
* Preview icons now hook into this system, solving various update cases
  that were missed before.
* Also fixes issue in my last commit, where some preview would not render,
  problem is avoided in the new system.

Icon Rendering

* On systems with support for non-power of two textures, an OpenGL texture
  is now used instead of glDrawPixels. This avoids problems with icons get
  clipped on region borders. On my Linux desktop, this gives an 1.1x speedup,
  and on my Mac laptop a 2.3x speedup overall in redrawing the full window,
  with the default setup. The glDrawPixels implementation on Mac seems to
  have a lot of overhread.
* Preview icons are now drawn using proper premul alpha, and never faded so
  you can see them clearly.
* Also tried to fix issue with texture node preview rendering, globals can't
  be used with threads reliably.
2009-09-29 19:12:12 +00:00
Arystanbek Dyussenov
5443844cf6 Fixed import scripts: OBJ, 3DS. 2 bugs still perist though: imported meshes appear upside-down (foreach_set?) and materials don't import. 2009-09-29 12:34:05 +00:00
Brecht Van Lommel
704a677498 Fix for CMake/OS X, would fail to copy files to bundle sometimes,
doing make twice would avoid this, but that's not very convenient.
2009-09-29 09:48:30 +00:00
Campbell Barton
c8b7384c4b remove ray sensors own logic manager (now stored in parent class) + other minor changes. 2009-09-29 07:51:54 +00:00
Dalai Felinto
64a093ea77 bge player - stubs update
*note in order to build blenderplayer with cmake+msvc one needs to comment all smoke references in stubs.c
- scons + msvc is building fine (raising some warnings for the smole references though)
- cmake in linux should be building as well (the smoke references were inserted in stubs to please this building environment IIRC)
2009-09-29 05:22:44 +00:00
Joshua Leung
3198ff876b Bugfix #19490: Adding UV texture, adds Vertex color instead
Seems to have been a copy+paste error (code for Vertex Color adding was pasted in place of texture paint). Restored the code from an earlier revision (from another file).
2009-09-29 02:19:27 +00:00
Joshua Leung
52b28fddec Removed the termporary defines added to make the Game Engine compile. Hopefully this fixes all of the cases which broke. 2009-09-29 01:52:54 +00:00
Martin Poirier
be3000773b Adding back more functionalities for transform orientations.
Create new orientation is now Ctrl-Alt-Space (Alt-Space is select orientation and the old ctrl-shift-c is taken by add constraints).

New orientation panel in 3d view sidebar (nkey) has operator buttons for select, create and delete. Eventually, this should become a list.

Note that orientation operators are missing notifiers to properly redraw the 3d view and its header properly.
2009-09-28 19:49:36 +00:00
Brecht Van Lommel
31b77420ea Preview icon rendering for menus now runs in a separate thread, to avoid
blocking the user when opening a menu. Material and texture buttons now
display these icons in the list. Also fixes #19387, icon and full preview
render at the same time would crash.

I'm not really convinced this is thread-safe, but on the other hand also
not sure regular preview render is really thread-safe yet.
2009-09-28 18:33:45 +00:00
Brecht Van Lommel
e6078c7417 Fix potential crash for file operators that don't define
a "path" property, now it will just give a warning.
2009-09-28 16:11:06 +00:00
Brecht Van Lommel
fde83cb75b Fix compile problem on OS X Snow Leopard. The Mac code for dynamic
library loading was using some non-public OS X functions, which give
linking issues for me. Since OS X 10.3 standard unix dlopen() is
supported, so I just removed this code, we don't support earlier
versions anyway.
2009-09-28 16:05:34 +00:00
Brecht Van Lommel
ba7fb3f969 Fix drawing of MENU buttons with only an icon, was not aligned right
and showing unneeded triangles (+ buttons in Boids Brain).
2009-09-28 15:59:09 +00:00
Nathan Letwory
edfb47ffb4 * Copy() -> Clone() (even though these hopefully will be obliterated from extern/ soon)
* remove reference to docs SConscript
* python dbg commit - somehow this one was left uncommitted when I was working on r23465 and r23464
2009-09-28 15:49:26 +00:00
Brecht Van Lommel
801d8b600f File paths: use release/ for scripts if possible again, this got
changed with the file path changes, the reason to check this first
is that it allows to edit py scripts without having to run the
build system for each change.
2009-09-28 15:47:05 +00:00
Brecht Van Lommel
ea41a343c0 Fix #19479: ctrl+N could temporarily freeze the window when user
preferences were saved from a separate window. Missing transfor of
active window state to the new window.
2009-09-28 15:34:15 +00:00
Brecht Van Lommel
45aedba8e4 Fix #19477: transform manipulator did not work correct with
quad view, got wrong context.
2009-09-28 15:14:52 +00:00
Brecht Van Lommel
d143627b62 Fix #19468: particle mode crash in transform, when there are
no editable particles.
2009-09-28 14:51:42 +00:00
Brecht Van Lommel
56e6338d81 Fix #19453: rendering with mesh in edit mode would put the object
partially back in object mode, disabling e.g. X delete.
2009-09-28 14:40:37 +00:00
Brecht Van Lommel
c1b32e850f Fix #19351: items in outliner disappear prematurely. Note icons
still disappear too soon, but this is an issue in the icon system,
same happens on all buttons, will have a fix for this later.
2009-09-28 14:33:38 +00:00
Brecht Van Lommel
8563115e8c RNA
* Move mesh API functions to mesh_data.c, would like to keep
  RNA layer fairly thin, any non-trivial functions shoud be
  in their modules.
* Replace mesh.create_copy by generic id.copy.
* Fix #19250: Mesh.add_geometry() in editmode fails silently,
  now gives an error.
2009-09-28 14:28:45 +00:00
Andre Susano Pinto
04fdec2017 svn merge -r 23207:23528 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2009-09-28 13:05:03 +00:00
Campbell Barton
18e54b1ee8 missing Del key in the keymaps where Xkey was used 2009-09-28 12:33:52 +00:00
Campbell Barton
8f07d27de7 add temp defines to keep the game engine building, should be fixed properly.
fix implicit declaration too.
2009-09-28 12:20:56 +00:00
Brecht Van Lommel
0356b92d46 File Browser fixes:
* The code to draw only visible items was not working, giving slow
  performance with many files (bug #19469).
* Fix detailed list display on non-windows, would give overlapping text.
* Fix folders with many files not displaying all items, changed short to
  int in various places, was overflowing.
* Recreate layout on area resizes, file view gets out of sync otherwise.
* Workaround for v2d height not being correct with image display due to
  scrollers.
* Fix view2d code to compute minimum scroller size, this would make the
  scroller go outside of its bounds.
2009-09-28 12:10:23 +00:00
Campbell Barton
996c767071 jpeg2000 presets were broken. 2009-09-28 12:10:13 +00:00
Joshua Leung
ff780c36e1 Compile fix for GameEngine 2009-09-28 11:29:07 +00:00
Andre Susano Pinto
82198721d6 Raycounters fix 2009-09-28 10:25:12 +00:00
Joshua Leung
7d2fd5449e Durian Feature Request: Rotation Modes for Objects
This (biggish) commit generalises the rotation modes functionality added for Bones, allowing Objects to use the various Euler Rotation orders, Axis-Angle, and Quaternion rotation representations.

I've also cleaned up the nomenclature of the rotation-related settings so that the naming styles are more consistent with each other. Unfortunately, this will break all files involving object or bone rotation animation made in 2.5 versions (2.4x will still get correctly converted).

General Notes:
* By default, Objects still default to using Eulers, while Bones will use Quaternions by default still.
* I've fixed all areas that I'm currently aware of to work with these changes. However, there are probably a few places where I've missed a few changes (i.e. auto-keyframing will need attention later).
* Removed the old "IPO-Keys" stuff from Transform code. I'm unlikely to restore this in the near future, and trying to fix that to include support for this commit would have been too much work.
2009-09-28 10:19:20 +00:00
Brecht Van Lommel
981afef08e Fix #19470: displaying depth pass could crash, conversion from
float to byte was not working correct.
2009-09-28 09:06:28 +00:00
Brecht Van Lommel
ea187e54a8 Fix #19482: setting cursor position in uv editor was not correct
zoomed in, needed to make view2d offset for pixel rounding dependent
on zoom level.
2009-09-28 08:52:02 +00:00
Campbell Barton
92ee7ca946 remove warnings, print errors if bpy_ops.py or bpy_sys.py fail to import 2009-09-28 05:02:09 +00:00
Campbell Barton
dab61acd45 Added "scripts/modules" as permanent module search path.
- added bpy.sys as a python module - with bpy.sys.expandpath()
- moved bpy.ops into scripts/modules
- moved autocomplete into its own module from space_console.py
2009-09-28 04:29:01 +00:00
Joseph Eagar
8ea2904693 added missing notifyer/depsgraph call to loopcut, fixed tweaking the edge slide operator in the last operator panel, and uncommented a line in the remove doubles op that was making it not work (and tweaked the rna limits a bit there, too). 2009-09-28 03:28:28 +00:00
Campbell Barton
2d797f35d8 - removed 2.4x release/scripts
- moved release/io and release/ui into release/scripts/io, ui
- updated scons, cmake, make

When porting 2.4x scripts back, use a command like this so as not to loose the commit history...
 
 svn cp https://svn.blender.org/svnroot/bf-blender/branches/blender2.4/release/scripts/raw_import.py release/scripts/io/import_raw.py
2009-09-28 03:19:52 +00:00
Thomas Dinges
2fef3dbaa3 2.5 Layout Files:
* Some Code and Whitespace Cleanup.
2009-09-27 11:00:35 +00:00
Joshua Leung
6e0c1cd4e5 RNA + Animation:
* Added missing RNA wrapping for Scene -> AnimData
* Fixed bug (with temp-fix) where sequence strips with no names couldn't be animated properly. Currently, this will just use the index of the strip, although that is likely to be mutable (adding/removing strips will change it).

* Removed some old unused code from action.c
2009-09-27 09:38:13 +00:00
Arystanbek Dyussenov
4363132788 Added Image.get_abs_filename() and updated scripts to use it. This removes the necessity of bpy.sys.expandpath().
Added missing Object.dupli_list.
2009-09-27 09:19:29 +00:00
Joshua Leung
bd7dc77884 Bugfix: Shapekey NLA Tracks were shown mixed with the ones for Objects 2009-09-27 06:27:45 +00:00
Joshua Leung
8a6d6a33f8 Animation Editors - Moved the code for drawing the filtering toggles into a single function. 2009-09-27 06:14:42 +00:00
Joshua Leung
fbfa8d2f81 2.5 - Assorted Animation UI/Editing Tweaks
Main Feature:
* It is now possible to choose which AnimData block is the 'active' one for editing, and/or select them too. AnimData blocks are generally the dark blue and lighter-blue expanders (i.e. Scene, Object, Camera, Lamp, Curve, Armature, etc.)

* Objects are no longer selected/deselected when AKEY is used to toggle selection of channels. This was getting a bit annoying. 

* Following on from selection of AnimData blocks, it is now possible to select/make active an AnimData block in the animation editors, and change the active action for that block via the 'Animation Data' panel in NLA Editor's properties region.
--> Be aware that user-counts are not totally handled correctly there yet, so some funky behaviour might be seen...
--> It is possible to assign a new action, or to assign an existing one, allowing to switch between actions as in the past with Actions/IPO Editors...

Other tweaks:
* Some code tweaks towards making the 'Euler Filter' feature for Graph Editor working sometime soon
* Added some backend code for snapping the values of keyframes to a single value. Still need to work out some UI for it though.
* Shuffled the code for ACT_OT_new() around, and removed the poll() callback so that it worked in NLA too.
* Fixed some more notifier bugs with deleting bones and a few other editmode operations for Armatures.
2009-09-27 04:22:04 +00:00
Joerg Mueller
69995bb1b3 Sound:
* Threading buxfix letting MSVC Debug builds crash because of corrupted std::lists
* Adopted two property ranges
* Changed the mixdown volume to set the device volume instead of the volume of every sound.

I also removed the private redefinition of m_logicmgr in SCA_BasicEventManager, which was already defined protected in the parent class SCA_EventManager and thus caused a bug letting GE crash here because of an uninitialized pointer.
2009-09-26 20:03:01 +00:00
William Reynish
128dba3329 Assorted tiny UI tweaks 2009-09-26 16:43:20 +00:00
Guillermo S. Romero
da5ff2ca98 Add directives to support multi dir lib. 2009-09-25 22:38:15 +00:00
Kent Mein
72c4c9da7a Fixing up Makefiles, its not fully working but its closer...
Kent
2009-09-25 18:47:43 +00:00
Campbell Barton
aa989c1e83 almost all event managers stored a pointer back to the logic manager, easier if this pointer is in the base class - SCA_EventManager 2009-09-25 16:30:15 +00:00
Campbell Barton
9f6566c0a5 removed double library entries without realizing I had the BGE disabled, these are needed. 2009-09-25 16:27:12 +00:00