still drawing all (zero sized) particles with "disp" option set to <100.
Fast graphics card show the issue less evident, but especially with a
giant amount of particles (100k) very much noticable. Thanks!
Too strict checking in depsgraph code missed a dependency case; this
specifically when objects have own motion (ipo) and are being deformed
by a parent.
This worked, unless the parent also had own motion (ipo or constraint)...
Also: the DAG_add_relation() added multiple relationships for object pairs,
now they "Or" the relationship description flag. Makes it a tad faster
again :)
Object duplicators didn't draw when not selected. Was one 'else' to many in
the code!
Also noticed that duplicators couldn't be transformed when they have Ipos,
was an improper call to do_ipo in duplicator code... also made sure the
transformation info in the object is stored/restored before duplicating.
Using Proportional edit on a Lattice with option "Outside" crashed.
Was caused by not checking for the hide flag while counting amount
of transformed elements in Lattice.
When using 'protection flags' for XYZ rotations, inserting keys in
Poses resulted in wrong interpolations (doing -270 degrees instead of
+90 for example). This caused by converting quaternion to euler and
back...
Solved it by correcting the quaternion in the end for the rotation
sign of the original quaternion.
NOTE: Pose animators should be aware that inserting rotations keys of
180 degrees or larger will still make the key rotate along the shortest
path.
Extrude faces assigned arbitrary colors to the new faces when an edge
shared 2 faces with different colors. Now only assigns colors for the
selected faces.
a good revision :)
This now cycles through all number/text buttons in a Panel. At the moment
it skips buttons with tab completion (object names, bones, constraints)
Press SHIFT+TAB to cycle backwards (any modifier will do btw).
This adds Radiance HDR image file support. So now at least we can save
the 'fbuf' (4x32 bits float colors) in Blender.
It doesn't change anything for internal support in imbuf for floa colors,
so when reading .hdr files it still converts it to 32 bits RGBA.
As an extra I've added that saving images with F3 now also adds the
optional extension, when the F10 "Extensions" option is set.
One important note; I don't know the proper license for the code, it was
provided without... will await feedback from Alfredo about it. For now
I've added the standard Blender GPL header.
-> Scene set was not drawn in greyish wire anymore
Also made sure all colors as used for scene set and dupli's now use a
proper call to the ThemeColors, so it blends between choosen wire color
and background color.
Oops drawing speedup:
* Doesent draw splines that are totaly out of the view (big speedup)
* Changes the spline resolution based on its size on the screen (smaller
speedup)
* Draws highlighted lines ontop of unhighlighted lines, makes it easy to see
where selected data links to.
* Text changes size with zoom.
* Text draws better at small sizes.
This fixes an error in the striding system, which was by default correcting
path position backwards in time, which could give errors when a stride bone
moves in the beginning of a path faster than the path moves. (Can you
follow that? cool!)
The patch checks for this case, it corrects by default forwards in time,
unless we're at the end of a path. As bonus this fix will also ensure the
character stays on the path closer.
Textbuttons now allow a selection too (like any textbutton in other UIs).
By default, on activating a textbutton, the entire button text is selected
when you enter the button. A single arrowkey or LMB click reveils the
cursor then. Here's more user notes:
LMB click: If inside the button, places the text cursor at the clicked
position. If outside the button, confirms/finishes editing
LMB drag: Selects the text between the start and end point of the drag.
Backspace: Deletes selected text, or backspaces a character
Shift Backspace: Deletes all, as before.
Delete: Deletes selected text or forward deletes a character
Shift LeftArrow: Extends the selection left
Shift RightArrow: Extends the selection right
LeftArrow: If there's a selection, move the cursor to the left edge of the
selection, otherwise move the cursor left a character.
RightArrow: If there's a selection, move the cursor to the right edge of
the selection, otherwise move the cursor right a character.
UpArrow/Home: Move the cursor to the beginning of the line
DownArrow/End: Move the cursor to the end of the line
Ctrl Left arrow and Ctrl Right arrow to jump between directory separators
had a shadow in memory there was an issue ..
yes, spring calculation should care for scaling in object matrix
so here it is
note: for meshes the bp array is abused for caching -->
only 1 matrix multiplication compared to 2 per spring
(Non deformed) lenghts. Code for lattice (by Jens Ole) was already there
btw, was replaced accidentally by Daniel during his modifier craze :)
ALso added comments in code to clarify the softbody initialize flow, which
happens in 2 stages now. Goal weights and springs are read from the
original data, the vertex coordinates from the modifier data.
represents whether shadows are on for that lamp or not. Now, it properly
takes into consideration what type of lamp it is, and whether it can have
whatever type of shadow.
Things like this, and the inner spot circle representing the Spot Blur should
really be documented somewhere, I'll make a note.
* Decreased the size of the hemi lamp arcs.
Patch prvovided by Guillermo, code was - afaik - from Rob Haarsma.
This changes the toolbox (space menu) to have the first level aligned
vertically. Works much easier that way, and since the items open either
left or right, it doesn't flip order of the contents for it either.
To allow people to test (and to compare) it's a user menu setting (in
View & Controls, "Plain menus"). I've turned this on by default though,
since I propose to not have it a user setting. User setting can be
removed later.
Fixed two bugs in patch:
- if saved in user settings, first time usage of this toolbox opened in
wrong location
- Button for "plain menus" was writing a short in an int
(causing this new menu not to work for big endian systems)
As a bonus I've added the long wanted hotkey support for opening and
closing sublevels of pulldowns with arrow keys!
I didn't add the commenting out of correcting pulldown menu order, which
is based on location of the originating button in the UI. This uncommenting
didn't solve anything, since button definitions itself can be flipped too.
(Example: the data brose menus in top bar need to be corrected).
I can imagine the order flipping is sometimes annoying, but it still has
reasons to be there;
- the most important / most used items are always closest to the mouse.
(like opening properties panel, or "Add new" for material.
- it follows muscle memory and 'locus of attention' (mouse position).
- menus are configured to open to the top for bottom headers, and to the
bottom for top headers. We can expect the UI is configured consistantly
for headers, so in general the menus will appear consistant as well.
Where menu flipping fails is especially for alphabetic listings, like in
the menu button of fileselect. However, that one should be configured to
open by default to the bottom, so ordering is consistant as well.
If people like to check this themselves; uncomment the lines in the top
of the function uiBlockFlipOrder() in src/interface.c
This commit is based on the patch & cool design work of Matt. It includes
the new Lamp drawing style, and replaces the Object center dots with a
similar styled OpenGL drawn dot.
Important side-note is that removing the old glDrawPixels() for centers or
lamps will not only make Blender faster, but also prevents crashing on a
couple of cheaper 3d cards (as reported for S3 and Intel on-board cards)
Notes:
- The new default only draws Object centers when selected or active. If
you like to see them always, use the View Properties Panel. You can also
save that in the .B.blend
- The size for centers (and lamps) is in the User settings "View & Controls"
- Unselected Lamps, and their offset lines from zero Z, are drawn in a new
Theme color
Changes and additions in Matt's patch:
- Lamps and centers are drawn fixed size, in pixels. Also the 'sun' lamp
draws screen aligned now.
- Center dots now also draw in blue to denote Library linkage or to show
that an Object has been linked to other scenes.
- When objects are empty (no vertices) they will always draw a center dot.
Otherwise these objects would never be selectable anymore!
- Added theme setting for center size, and initialization
- Removed the old redundant code for drawing centers
- Cleanup of drawing routines, made center dots faster
- Started removing calls to glBlendFunc(). Regular alpha drawing should
become standard, and the (very) occasional exception should return this
to default after usage.
causing Blender to crash. (reported by Levon, thanks!)
Bugfix: InfoWindow, pulldown menu said "Dump 3D window", whilst this can be
any window type... renamed it to "Dump Subwindow" next to "Dump Screen".