Age | Commit message (Collapse) | Author |
|
All callers pass in valid number
|
|
|
|
Would have prevented previous error going unnoticed.
|
|
|
|
headers.
|
|
|
|
|
|
Need to return number of enabled elements.
|
|
|
|
Separate the creation of trees from EditMesh from the creation of trees from DerivedMesh.
This was meant to simplify the API, but didn't work out so well.
`bvhtree_from_mesh_*` actually is working as `bvhtree_from_derivedmesh_*`.
This is inconsistent with the trees created from EditMesh. Since for create them does not use the DerivedMesh.
In such cases the dm is being used only to cache the tree in the struct DerivedMesh. What is immediately released once
bvhtree is being used in functions that change(tag) the DM cleaning the cache.
- Use a filter function so users of SnapObjectContext can define how edit-mesh elements are handled.
- Remove em_evil.
- bvhtree of EditMesh is now really cached in the snap functions.
- Code becomes organized and easier to maintain.
This is an important patch for future improvements in snapping functions.
|
|
Using SSE2 intrinsics when available for this kind of conversions.
It's not totally accurate, but accurate enough for the purposes where
we're using direct colorspace conversion by-passing OCIO.
Partially based on code from Cycles, partially based on other online
articles:
https://stackoverflow.com/questions/6475373/optimizations-for-pow-with-const-non-integer-exponent
Makes projection painting on hi-res float textures smoother.
This commit also enables global SSE2 in Blender. It shouldn't
bring any regressions in supported hardware (we require SSE2 since
2.64 now), but should keep an eye on because compilers might have
some bugs with that (unlikely, but possible).
|
|
|
|
RenderLayer.
FSAA sample files in EXR format are no longer always updated (after some
changes between 2.73 and 2.74 releases), and the reported bug was caused
by old samples from a previous frame that were being merged by mistake.
The present revision addresses the documented issue by entirely skipping
the rendering of auto-generated scenes when there are no Freestyle strokes
to render, which suppresses sample merging of the render layers that were
not rendered.
|
|
Multi-threaded partial buffer update, gives about 2x speedup with
big brushes.
Thanks Campbell for testing and benchmarking!
|
|
Avoid memory allocation for task data.
|
|
Just avoid some unneeded initialization functions when the threaded
processor is simple enough to only depend on current chunk start
scanline and number of scanlines.
|
|
First stroke always had the minimum rectangle set to 0,0 which could cause a largre region of pixels to be
unnecessarily updated.
|
|
Avoid unnecessary pixels linearization gives nice speedup.
|
|
|
|
Thanks Julian Eisel (Severin) for the heads up!
|
|
Multi-thread all the color space conversion operations.
Gives speedup from 0.8 to 0.1 seconds on a model with 4k etxture on it.
|
|
The width and height of of the region to update are often zero,
skip calling GPU_paint_update_image in this case.
|
|
|
|
|
|
|
|
|
|
Was re-using loop index, thanks to @bzztploink for spotting!
|
|
Since the color wheel can't handle negative colors usefully, use a basis value for the initial RGB.
|
|
Offset used curve radius, which isn't useful drawing without any bevel radius.
|
|
Previously users needed to wait for view orbit to finished,
so quickly pressing keys would gave different result.
|
|
Caused by wrong alpha value in rB34b30f847429ac (used 0.01, should've been 0.1). Also made sure all editors initialize same default theme values for panels and cleaned up code a bit.
Works fine with old userpref.blend files.
|
|
|
|
shared amrature in another object's bone list.
Basically, issue is that outliner stores editbones for an edited armature, which are only valid during EditMode.
When more than one object use the same armature, selecting ebones from same armature but under non-edited object
would first select that object (and hence switch out of editmode), and then try to select editbone while editdata
no more exist.
Solution for now is to not change active object in this case - it's not totally ideal (not consistent),
but other solutions (like switching edited object without leaving editmode, or rebuilding (part of)
outliner tree in-between) are horribly hackish and most likely prone to epic failure anyway.
|
|
Solves the weak point mentionedi n previous commit.
|
|
Shift-space was reserved for IME support, however IME will only
be enabled on certain languages. We can avoid any IME-related
exceptions form other languages without too much trouble.
There's one weak point around ui_ime_is_lang_supported() tho,
which is it might be doing string comparison a bit too much
often now, this we can avoid by handling those checks from BLT.
|
|
animation
Not very efficient solution -- it'll update mapping node on init ntree exec and will
not work for viewport GLSL shading perhaps, but it's as good as it could be within
current dependency graph.
The issue here is that manual edit of values will cause cached matrix re-evaluation.
but using animation does not use rna update callbacks hence no matrix update was
happening.
|
|
|
|
Painting at negative locations was using int-rounding.
|
|
|
|
Allow Ctrl-Up for eg to be used when in a list view.
|
|
|
|
Also make return args explicit.
|
|
|
|
|
|
removes vertices, re-fitting the surrounding handles.
|
|
|
|
freestyle data.
Freestyle edge/face marks are (afaik) our only actual customdata bitflags... Original work
kinda assumed we had no such things. :P
|
|
Own regression from rB019ce363b01bba0af, not totally sure why removing the heading
zero value in element_sum broke binary search distribution in random branch, but...
New code makes thing sooo much simpler, by simply getting rid of all zero-weight
items in element_sum (at the cost of adding a temporary extra index mapping array),
that way neither random nor 'even ordered' distribution code has to wory anymore
about skipping zero-weighted items!
|
|
Also remove doubles when filling the final array.
|
|
|