Age | Commit message (Collapse) | Author |
|
* correctly finds zero length vectors now
|
|
Simple fix... but I am in a three meeting session in Stockholm now, can
not do full tests, hope it works. :)
|
|
in the 3d view header and toolbox.
|
|
|
|
hope it's somehow usable :-)
Colourpicker update:
-------------------
1) Converted numbuts to sliders and made the colourpicker wider. Sliders
are more useful for something like RGB and HSV because they're fixed
range values
2) Added a hex button for entering HTML-like color (#RRGGBB, can be
entered both with and without the hash sign).
This should completely replace the former strange NKEY functionality
in buttonswindows, and even add hex support for buttons which didn't
have it before.
Please test thoroughly, I never coded something in a hurry like this.
There are small rounding errors still... Maybe someone finds the
reason? :)
|
|
|
|
( http://mke3.net/blender/interface/controls/error_ok_icons.png )
A bit nicer and quick to visually recognise at a glance
|
|
might allow this once, but it's a lot of new complexities then.
It also means you cannot drive one Bone with another Bone in same Pose.
|
|
|
|
editmode" feature. This specific fix only patches the case with armature
deformed meshes & vertex groups.
Note that while in editmode, new created vertices have no weights or
groups assigned, so the result will be unpredictable. This feature should
actually only be allowed for moving vertices around I guess...
|
|
Enter Vpaint or Wpaint did not redraw headers of all 3d windows, so the
mode menu indicator didn't update.
|
|
accidentally could unselect the object itself.
It can be that older saved files still show this issue, then just select
another object, and select the armature again. :)
|
|
of 3d object.
|
|
driver). Now drivers are only corrected on duplicating when the whole Ipo
got copied a well.
|
|
Changed Object.link() to allow link objects with both BPython-type meshes
Changed Object.getData() to allow retrieving both types of BPython-type meshes
Added new mesh types to Types module
|
|
Just fill in the name of a Vertex group in the Shape Panel, and this
Shape will then become blended with the reference Shape.
It is useful for example for a symmetrical modeled head, make a
copy of that Shape, and use two Vertex Groups to make it asymetric.
Of course the Shapes update nicely while Weight Painting.
Also new; since the Vertex group names reside on Object level, you might
want to copy these names to the other Objects that have the same Mesh.
That's a new button "Copy to Linked" in the first Edit Panel.
|
|
of "library append", which keeps the current .blend file name.
|
|
Now, more than ever!
|
|
- Fix incorrect usage of PySequence_Fast_GET_ITEM()
- make EXPP_setFloatRange() convert its argument to float instead of short
|
|
In UV Faceselect, the button "Set vertex color" needed Mesh update flush.
|
|
Ending localview didn't correctly restore selection, so oops or outline
were not updated.
|
|
Calling ipo.delCurve() with a curve that's not been displayed in the
Ipo curve editor caused a segfault.
|
|
CTRL+click adding bones now respects X-axis mirror edit too.
|
|
*warnings fixes
*projectfile update
|
|
remove extra ; and move a variable declaration to top of function.
Kent
|
|
Since clicking on outliner items activates/selects, and not all outliner
elements allow selection (like scene, mesh, material, etc) there's another
selection method needed.
It works by leftclicking (click-drag works too) outside of the outliner
icons or texts. This allows rapid selecting, without any change in the
other windows.
Then press Wkey or RightMouse for an operations menu. Based on the
selection you get a menu with options. Currently available;
- Objects: Select/Deselect/Delete
- Materials: Unlink
- Textures: Unlink
- Bones: Select/Deselect/Hide/Unhide
Notes:
- mixed selections give an error.
- selection doesn't flush down into closed outliner items.
- selection state is persistant (saved in files), and unique per
Outliner window, so can be used as sortof temporal grouping.
Hotkey SHIFT+A: select/deselect all open outliner items
The system can be easily expanded with a lot of interesting options, of
course.
|
|
memory error on end render.
|
|
|
|
on buttons in popup menus (like postproduction settings etc)
Error was that the menu returned immediate now.
|
|
- #2781, reported by Ed Blake: crash on undo when there were active space handlers. Space Handler script links belong to screen areas, which do not get saved on undo. Thanks Ton for pointing out the function that restores ui pointers gone bad.
- Applied patch #2822 by Ken Hughes for bug #2647 ("Setting a Face UV"), reported by Campbell Barton.
- #3022, reported by Timothy Wakeham: "Blender.BGL.glDrawPixels crashes when drawing more pixels then buffer size". Made glDrawPixels check buffer dimensions.
- #2882, reported by Campbell: crash in nmesh.getMaterials(arg == 0 or 1) when nmesh came from GetRawFromMesh(). Raw nmeshes are not linked to Blender meshes, so the method doesn't support these options (getting mat info from the actual mesh) for it.
- #2817, reported by Tod Koeckeritz: Dir_Depth var was not being decremented in BPY_Menus.c, causing dir depth limits to be reached prematurely.
- #2954, reported by Daniel Holtz: "Python scripts crash hard with valid windows paths". Blender.Load() was not meant for background mode, now it's been update to support it, using BKE_read_file instead of BIF_read_file in this case. Also found another issue with command line scripts using Blender.Load() that could crash Blender: trying to free the Text when it wasn't available anymore (loading a new .blend already removed it). There are still issues with one case, though, causing a crash on start or "Memoryblock winopen: double free" at end, when running a script that is already a Blender Text (only if the script calls Blender.Load, of course). Will investigate.
- #2897: reported by Timothy Wakeham: object.setMaterials was asking the length of a Python list w/o confirming first if the passed obj was really a list.
Thanks all for the help and for being patient (long delay, again).
|
|
|
|
should return a non existing event instead. :)
Thanks elubie for reporting!
|
|
Insert a NLA strip makes it size 100 frames if the actual action is smaller
than 2 frames, otherwise you cannot even select it :)
|
|
|
|
The main change is that an Action now always updates Poses on transform,
unless you are editing the Pose itself. Please test!
|
|
with his lipsync script (where names of phonemes are as names of shapes/keyblocks).
|
|
Fix: when unlinking an Action from Armature, the ipo window still allowed
adding drivers, causing crashes.
|
|
When no Ipo existed yet for an Action Channel (Bone), you could not add
curves with CTRL+click or Drivers. This was due to antique action code
state... it's still messy, no time for big cleanup here yet. At least
this works now. :)
(Also: removed test prints of previous commit)
|
|
- Rendering an image with Border didn't check for sizes smaller than 1
pixel yet.
Related to this code I found 2 other fixes:
- Themecolor set for drawing in Render Window was not restored correctly,
sometimes causing into wrong Panel (transparency) drawing.
- When rendering an image with Gauss, it now renders by default 1 pixel
extra, which gets stripped. This eliminates the "ugly" darker border
in images.
(Yes, let's make Mr. PixelCounter Goralczyk happy! :)
|
|
Editbuttons "Centre" options didn't correctly use depgraph for linked data.
|
|
When using 3d window "unlocked" (own layer and own camera possible), the
dependency updates didn't work, these were only using Scene layers.
Changed the dependency graph call DAG_scene_flush_update()
to accept an argument for all visible layers in a Screen.
|
|
header is redrawn at the end of loopcut to fix part 2 of the bug , my previous commit fixed the first half of it :)
|
|
(yes, studio orange is testing :)
|
|
|
|
|
|
First note that this is new functionality, unfinished, and only for
testing and feedback purposes. I'll list below what works, and what will
need work still.
This text is also in cms: http://www.blender.org/cms/Ipo_Drivers.680.0.html
An IpoDriver is like an IpoCurve, but instead of a Bezier curve, it allows
to connect a property of other Objects as input for the "channel". For
example, IpoDrivers can be used to have a Shape Key being "driven" by
the rotation of a Bone. Or the RGB colors of a Material get driven by the
XYZ location of an Object.
Editing of Drivers happens in the IpoWindow. Here you can notice that the
channels (right hand window) now have an "active" channel indicator.
To add a Driver, you have to use the "Transform Properties" Panel (Nkey).
Here you can add or remove a Driver to the active channel, and use the
buttons to fill in what kind of relationship you want to establish.
Driver Objects
Note that any Ipo Channel can become driven now, but that only Object
transformation or Pose Bone transformation can be used to become a
Driver now.
At this moment, only the local transformation is taken into account.
For Objects that means the location/rotation/scale value without Parent
transform (as shown in "Transform Properties" Panel for Objects).
For Pose Bones it means that only the Pose transform (changes of rest
position) is Driver information (also as shown in Transform Property
Panel in Pose Mode).
Mapping of Drivers
When an Ipo Channel is "driven", the mapping is by default one-to-one.
It is only restricted by already built-in limits for Channels, like
for Material the "R" value can only range from 0.0 to 1.0.
Also note that when mapping rotations, the actual rotation values
in Ipos are scaled down with a factor 10.0. (180 degrees actually has
in the Ipo system a value of 18.0). This is an ancient year zero
convention in Blender... it is a bit hidden, because the ruler
(vertical as well as horizontal) displays the virtual values correctly.
Only the Properties panel shows the actual value.
When you draw an IpoCurve in a Driven channel, this curve will define
the mapping between the Driver output (horizontal) and Driven input
(vertical, as usual).
A nice new option to use is "Insert one-to-one curve" (press I-key,
or in pulldown menu). This will also zoom the display in exactly to
fill the window, allowing easy edit. If you use this option with
degrees, it will map 180 degree rotation to a range of 1.0 unit.
Live updates
Since the Drivers are integrated in the Ipo system, they will always
be updated whenever an Ipo is evaluated. This happens at least on
frame changes.
For interactive feedback, updates while transforming objects were
added in these cases:
- Driven Object Ipos, by other Objects or Pose Bones
- Driven Shape Key Ipos, by other Objects or Pose Bones
You can also insert Drivers on Action Ipos, but these are only evaluated
on frame change now.
Todo
- Drivers can also get a text button, allowing a 1 line Python script
to be executed.
- Make UI for it a bit less hidden... maybe with visualization in 3D?
- Allowing global transform coordinates as Driver too.
Issues
- renaming Bones won't rename drivers
- (file) appending the Ipo won't append the linked driver Objects
|
|
MMB uses global axis, Ctrl-MMB uses user defined. (Alt-MMB cause conflict with the window manager on linux)
(for hotkeys, first press is global, second press is user defined)
|
|
http://projects.blender.org/tracker/?func=detail&atid=125&aid=3030&group_id=9
It didn't do initgrabz correctly.
|
|
|
|
Note that envmaps still render without raytracing.
|