Changes:
- acf.name_prop() and acf.has_setting() now return bools instead of shorts
- Renamed a few name_prop() callbacks whose names ended in "_nameprop"
instead of "_name_prop", which made it difficult to safely find all
such instances
This adds functionality to tab-autocomplete folders in the file browser file
field, and the ability to autocomplete .blend files and their sub folders while
linking. If only one match of a blend or a folder is found, it is opened, which
applies to wildcards in the file field now.
Reviewed By: elubie, brecht
Differential Revision: http://developer.blender.org/D20
This is mostly work towards enabling the __KERNEL_SSE__ option to start using
SIMD operations for vector math operations. This 4.1 kernel performes about 8%
faster with that option but overall is still slower than without the option.
WITH_CYCLES_OPTIMIZED_KERNEL_SSE41 is the cmake flag for testing this kernel.
Alignment of int3, int4, float3, float4 to 16 bytes seems to give a slight 1-2%
speedup on tested systems with the current kernel already, so is enabled now.
Skip byte->float conversion if output file format
supports high bit depths but configured to only
output 8 bits per channel.
Gives around 30% speedup when re-exporting movie file
to PNG image sequence here on laptop.
Possible further optimization:
- Skip color space conversion in imbuf_for_write
function if we've got already have buffer in
that space.
This doesn't seem to happen often after tweak
to render result to imbuf.
- Skip black alpha-under if original image is
opaque,
This is a bit tricky to detect.
Note that this is not really needed currently, as the only flag being copied here (UI_BUT_REDALERT) remained in but->flag. However, since we'll have more flags in drawflag now, it's better to explicitly handle this situation...
This func could use some cleanup anyway (a bunch of commented code here)...
Thanks to Campbell for noting this!
commit b8b7180760b7c57f15b9930c29207febcf5fefb3
Author: Bastien Montagne <montagne29@wanadoo.fr>
Date: Thu Nov 21 16:31:16 2013 +0100
Code cleanup: replace "LISTLABEL" button type by an "UI_BUT_LIST_ITEM" button flag.
Summary:
Rationals:
I) I was never that happy to have a full button type just to set custom colors to labels inside listitems!
II) If we use (as planned) TEX buttons instead of labels to allow listitems click-rename, I'd like to be able to use listitems' theme color here as well, much easier witha flag than adding yet another button type!
Note: related to D8
Reviewers: brecht
Differential Revision: http://developer.blender.org/D25
commit 6f97e194e58aab38d351c796bf7bb6abca33f5f9
Author: Bastien Montagne <montagne29@wanadoo.fr>
Date: Wed Nov 20 21:18:20 2013 +0100
Code cleanup: Move some uiBut->flag to uiBut->drawflag, make those flags anonymous enums.
Summary:
Make some room in but->flag (I did not add another flag, we already have drawflag, which was nearly not used up till now).
Note: I’m not sure whether REDALERT (and perhaps even DISABLED?) should not go to but->drawflag as well...
Related to D8
Reviewers: brecht
Differential Revision: http://developer.blender.org/D22
* Remove Stars feature. This was a quite minimalistic feature and there are
better alternatives with more control (particles for example).
Removal discussed during BCon13 developer meeting and already years before, time to do it..
Reviewed By: brecht
Differential Revision: http://developer.blender.org/D17
NLA Track drawing has now been ported over to use the UI widgets
like the rest of the anim channels do in the DopeSheet and Graph
Editors. The main benefit of this for users is that these buttons
will now show tooltips when you hover over them. Hopefully this
will help make the "solo" buttons more discoverable.
I've decided to postpone porting the "Action Line" channels to the
widget system for now, since there are quite a few more issues there
which need quite a bit more time to work through.
* Can optionally warp a segment (sets min/max default so it acts as old warp did).
* Can rotate the warp axis (old warp tool was limited to horizontal).
When beveling two adjacent edges, code used face normal instead
of the face-corner normal (these can be different for nonplanar
faces); the bevel may look uneven in such cases.
Switched to using corner normal, and needed to fix the case
where the edges meet at a reflex angle. Fixed a similar case
when beveling two edges with one non-beveled in between.
Also removed unnecessary argument from offset_meet.
The widget for the SV gradient was disabling display colorspace transform, but this was not happening for the H slider below, leading to varying H values used to calculate the slider position.
Previous wrap implementation was based on inverse
bilinear mapping, which doesn't give perspective.
Now plane track wrap estimates perspective transform
matrix as a homography estimation between frame
coordinates and plane corners.
Uses Libmv's implementation for this, which means
plane track wouldn't work properly with Libmv
disabled. Not a deal for official builds at all,
just folks who keeps things disabled need to be
aware of this.
- A bit more reasonable name for the estimation option
structure and estimation functions.
- Get rid of unclear function and parameter tolerance,
it wasn't clear at all in which units they are.
Now we've got expected_average_symmetric_distance as
an early output check and as soon as average symmetric
error goes below this threshold refining finishes.
This distance is measured in the same units as input
points are.
It is arguable whether we need callback for this or not,
but seems Ceres doesn't have some kind of absolute
threshold for function value and function_tolerance
behaves different from logic behind expected symmetric
error.
- Added option to normalize correspondences before
estimating the homography in order to increase estimation
stability. See
R. Hartley and A. Zisserman. Multiple View Geometry in Computer
Vision. Cambridge University Press, second edition, 2003.
https://www.cs.ubc.ca/grads/resources/thesis/May09/Dubrofsky_Elan.pdf