Another one back: editcurve.c
- removed global editNurb everywhere
(cu->editnurb now has listbase with edit data)
- also added 'active bpoint' and 'active nurb' in
Curve struct
- editmode in/out works, mouse/border select works
This patch modifies the way the setParent actuator and KX_GameObject::setParent() function
works when parenting to a compound object: the collision shape of the object being parented
is dynamically added to the coumpound shape.
Similarly, unparenting an object from a compound object will cause the child collision shape
to be dynamically removed from the parent shape provided that is was previously added with
setParent.
Note: * This also works if the object is parented to a child of a compound object: the
collision shape is added to the compound shape of the top parent.
* The collision shape is added with the transformation (position, scale and orientation)
it had at the time of the parenting.
* The child shape is rigidly attached to the compound shape, the transformation is not
affected by any further change in position/scale/orientation of the child object.
* While the child shape is added to the compound shape, the child object is removed from
the dynamic world to avoid superposition of shapes (one for the object itself and
one for the compound child shape). This means that collision sensors on the child
object are disabled while the child object is parent to a compound object.
* There is no difference when setParent is used on a non-compound object: the child
object is automatically changed to a static ghost object to avoid bad interaction
with the parent shape; collision sensors on the child object continue to be active
while the object is parented.
* The child shape dynamically added to a compound shape modifies the inertia of the
compound object but not the mass. It participates to collision detection as any other
"static" child shape.
* For some reason builds on Windows would crash when tabbing into edit mode with default .b.blend
Problem is that it is not very clear why it happens. The debug trace I managed to get pointed at
SCRIPT_OT_run_pyfile being run when pressing TAB.
Changing the way how this quickhack for running scripts is added made the crash go away, but this
points at a potential problem in the creation of keymaps. The original form is the plenty used:
RNA_string_set(WM_keymap_add_item(keymap, "SCRIPT_OT_run_pyfile", PKEY, KM_PRESS, 0, 0)->ptr, "filename", "test.py");
But changing that to:
km = WM_keymap_add_item(keymap, "SCRIPT_OT_run_pyfile", PKEY, KM_PRESS, 0, 0);
RNA_string_set(km->ptr, "filename", "test.py");
Properly prevents the execution of the script operator. It looks like somewhere
something goes wrong, but no idea what, yet. Probably a good thing to investigate now!
Apparently this doesn't happen on Linux (and probably not on OSX either).
* curve, gpencil, physics and preview don't have sources yet, so scons fails on that. Disabled for now
Ton, when you actually put something in those dirs, remember to uncomment them in the editors/SConscript.
Added last few remaining modules in editors. Then the msvc
maintainer can already start typing! Only uv_paint is not
added, not sure how far Brecht is locally already.
- restored three more C files: editlattice, editkey
and editgroup
- editmode lattice working, (mouse select works)
- accidentally removed yesterday 3d cursor drawing
- removed global editLatt entirely now.
*******
- Ported ObData to center, center new and centur cursor
- its currently 1 operator
- no warning or error popups until its figured out how best to do so
- possibly full of ugly code and things done worng way, had a hard time trying to understand this code
- some more house cleaning and removal of unused functions
12k lines of sequencer back! Only seqaudio.c skipped for now.
Notes:
- it only draws now, nothing refreshes or edits.
- fixed bug in view2d.c with vertical grid step being 0.0f
- render code and fileselect code is #ifdeffed out
- sequence evaluation code moved to blenkernel, so it can
be used for render without bad level calls
General note; sequencer code is very untidy, mixing styles too
much. Tried to clean it some, but it would be nice if formatting
is kept consistant from now on.
also fixed crashes when incorrect args were used
cross = 13; track= 5; frame = 1 # no effect constants
scene.sequence.new((cross, seq1, seq2), frame, track)
* chop the nodes library into smaller parts
- the addition of texture tree pushed the limits for scons/mingw
- This should still have everything compile nicely, but please,
maintainers of other build systems should check. The only interesting
change for them is the difference in headers.
* [Use nodes] added. For future improvements: a panel which enumerates
materials, textures and scenes for selection and editing in the opened
node-editor without having to set it in Buttons (or 'global' scene).
* when reading an old .blend 2.5 crashed on creating input node menu. type->name is for some reason NULL, so add simple check to prevent from happening again.
Testing commit; this puts back support for swap-exchange graphics
cards, which I had hoped to have faded out... but it appears it
still does it for intel and some atis.
This only swap-exchanges properly for areas/regions, not for
menus or the 'action zone triange'. Let's see if it works!
You enable it with starting with commandline option -E
* Finished DNA_lamp_types.h, DNA_world_types.h and DNA_sound_types.h.
* Renamed "parent" struct property to "nested", and also remaining "from"
usage to "base".
* Added a NEVER_NULL subtype for pointers and use it for all properties
that apply.
* Make sure all structs have a description, and fix any other DOC_BROKEN
descriptions, also many other naming consistency improvements.
Transform operator replay support for constraints.
Code isn't nice, will have to split some properties to separate what's part of the "saved data" from operator arguments.
Instead of many commits, here 1!
- Constraint edit code back
- Removed XXX stubs for constraints
(make parent follow path works)
- Removed XXX stubs for armature
(make parent deform, do center, etc works)
- Found a bad uninitialized global Scene * in code, especially
in kernel it wreaked havoc.
- added missing include in blenkernel/brush.c
- fixed Nicholas' fix for editmode subsurf crash
(It needed to check for editmode)
Removed another bad global "editbutvweight", a value from buttons
used to paint weights with, or to set weights. Is now part of
weightpaint struct in scene.
- Weightpaint back (CTRL+TAB or menu)
Also weightpaint is sortof non-modal, allowing to use all existing
hotkeys while in paint mode. Only leftmouse is overridden.
- Made vpaint and wpaint entirely local, stored in scene (and saved!)
- Small bugfix (also in 2.48): on weightpaint mode, all armature objects
in 3d window were drawing as active poses. Now only the armature
deformer is.
Nice point for the UI agenda: are paint modes on ACTION mouse? Only then
you can combine it with SELECT mouse...