There's a conflict between global undo and editmode undo. The first one
reloads a .blend actually, so pointers change all over. The latter still
uses the object pointers for checks. To resolve that the editmode undo
system cleans its stack based on object names, not pointers.
In previous code I tried something smart to prevent undo stacks being
reused when you delete an object, and add new object with same name.
That didn't go OK in all cases... so I accept this little quirk for now
(rename object still works though, wont clean the undo stack)
When you load sound in sequencer, most buttons for the sound where not
displayed (game engine usage only). But half of these buttons are useful
for renaming file paths or make relative paths. Just brought back the
entire panel, with clear info in tooltip what settings apply engine only
Crash on large mesh while vertex painting. Was combo of using shorts
(signed) and just a too low limit (64k).
Now it uses integer for main lookup table and max is 512k. Still an
artificial limit, but this wont crash when you exceed faces, just give
nice warning :)
When rendering from localview, the lamp layers were not evaluated properly
for "Layer" option in Lamps. This because localview uses layers 24-31. :)
Fix is simple; just not use localview layers for lamp while render.
Just one simple report, 4-5 hours work...
reported was that selecting in action+nla window is slightly off. Quite
annoying. It appeared to be a wrong usage of View2D facilities, causing
part rewrite of a lot of stuff here. Mainly did it as excercise, to get
better understanding of all of this. Would need some testing though!
PLus; fixed crash while using "single user" menu with Ipos in Object.
Changed:
row_pointers = new (png_bytep) [(GetHeight() * sizeof(png_bytep))];
to:
row_pointers = new png_bytep [(GetHeight() * sizeof(png_bytep))];
Thanks emil....
Kent
not affected when using standard (alpha=255) settings.
Only the backdrop for menus and unselected items can be transparent, the
highighted (active) item remains solid colored.
Just fun eyecandy tho :) but the recode of menu enables this easily.
Blender hemilight shadow flag now ignored (reported by varuag).
Texture axes were not exported for procedural textures.
Duplicate armatures were not handled correctly (reported by richie).
Triangle uv-coord splitting (reported by anael, richie & Alvaro).
Additions:
Material 'TexFace' mode now works too, as in Blender it functions as an extra
first texture channel, replacing the base color.
The new noise functions for procedural textures are now supported in yafray,
but is not quite completed yet, still undergoing changes.
(needs yafray from cvs).
The 'power' button has been renamed to 'EmitPwr', since it controls background,
arealight (including lamp with radius) & material emit power.
This button can now be used with the 'SkyDome' method as well to control
background lighting.
To control indirect lighting power, a button called 'GI pwr' has been added,
only use this when really necessary, first try modifying 'EmitPwr' instead.
Removed:
The 'gradient' button. This includes the python code to set
this parameter as well.
- Blender.Window: added function GetPerspMatrix() (Tom Musgrave's patch, thanks);
- added Chris Want's patch to tell argc, argv to the Python interpreter (thanks, Hos);
- Blender.Image: added image.glFree() to free textures bound by the recently added
image.glLoad() (both suggested by Campbell Barton -- thanks, with these Blender can
be used to load textures for scripts);
- Blender.Sound: removed for now at least a few get/set methods of vars that can't be
accessed via interface;
- renamed Get/makeActive to Get/setCurrent in Blender.World (actually added alias for
now), same in Blender.Sound: renamed makeActive to setCurrent. Stephen Swaney
pointed this some weeks ago, we should stick to one naming convention.
- added documentation for Sound and Window.Theme modules and the other added
functions, made other small updates.
- Blender.Object: made 'worldspace' become the default output of .getMatrix and .mat/.matrix:
after reading a discussion on blender.org's Python forum where eeshlo mentioned the
pre 2.34 default was worldspace, I took a better look at Blender's relevant code,
confirmed, talked to Theeth about this and as he suggested am changing the default
back to 'worldspace'.
- Changed shortcut of "Align Active Camera to View" to
Ctrl+Alt+Numpad0 to make it Windows-friendly.
- Old shortcut of Shift-Numpad0 still works (until we find some other
use for it!)
Could use testing on KDE/Gnome, etc - incase we make X do somersaults or something equally daft! :P
- press TAB without object active cleared undo stack
- typo (another!) in variable name, causing undo stack from wrong object
to be used (when have edited more objects)
Plus i found:
- rule for preserving editmode undo stacks, while using global undo, made
stricter now. Before it only checked name, now it checks for existance
of pointers extra.
- Individual faces
Keeps Mesh manifold, so removes old faces always. Also uses a
transform based on different vectors per vertex.
- Only edges
Just extrudes the edges (not really 'individual', the edges still
share the vertices. Uses same transform as normal extrude for that
reason
- Only Vertices
Uses normal transform after extrude
Also changed code a bit, to detect whether to call a normal-based
transform after extrude, or whether to call normal grabber. For example
when you just extrude 1 edge, it uses normal grabber.
Note; extruding an entire sphere goes OK with 'individual faces'. for
other extrudes you should press 's key' when in transform. Just cannot
predict (yet) when one method has preference over another.
Undo; when using global undo, the editmode undo stack remains accessible.
Meaning you can do global undo/redo, and then go back in editmode and
have all undo/redo steps as originally left in editmode.
of Outliner of it is nice hierarchical too.
Please note that storage in outliner for editbones and pose-bones are
separate, so you have to uncollapse the views independently
Constraints on an object with hooks (or other deformer) didnt update
OK while transform(). The fix is easy code to isolate for Martin, so
hopefully he can find integrated solution in transform() refactor :)
selection already is 2 triangles, it should create a new face but
remove the old triangles. It actually calls the 'ALT+J' command then
(join triangles)
While testing found out more cases where new selection flags were not
properly used (join trias, beauty fill, flip edges, rotate edges)
"Clear FGon" didn't call essential EM_fgon_flags(), to rebuild the lookup
table codes for polygons. This causes former fgon faces to become
not selectable
Keyboard sensors can now hook escape key. Ctrl-Break can be used from within blender if you've forgotten an end game actuator.
Fixed a stupid bug preventing some actuators working (like TrackTo).