Age | Commit message (Collapse) | Author |
|
This is required for outliner, so we can move an object from a collection into another
|
|
This way we can ensure the overlay to indicate where the item would be
placed if it was dropped now is always at the correct place and doesn't
mislead the user.
|
|
Reported by Julian Eisel (Severin)
|
|
Somehow undid rBc70eb873057 in rB8e303aae255.
|
|
That way users can see better at which hierarchy level the element will
be inserted into.
|
|
|
|
Two issues are remaining, they'll be fixed separately:
* Graphical feedback when dragging within the master collection is wrong
* There's some bug where collections swap places instead, Dalai will investigate
|
|
|
|
|
|
- drawDispListwire_ex()
- removed primitive check in Batch_init()
|
|
removed draw_box
|
|
-Softbody matrix
-EditCurve/NURBS
|
|
Remove drawcircball
Convert texturespace, editfont, metaball (except for displist usage)
|
|
Manually merged viewport xray changes
|
|
|
|
Bug introduced in rB4b365064cfbd
|
|
Selection loop would draw the selection ignoring xray.
Now draw in a separate pass after clearing the depth buffer,
as with regular drawing.
Also disable depth sorting,
caller can sort the hit-list by depth if needed.
|
|
|
|
Tackle the remaining parts of the code, mainly the commented out
function `draw_documentation`.
|
|
Note 1: renamed draw_cursor to draw_text_decoration, since it was drawing
cursor, margin, selection and line highlight
Note 2: commented out code update coming next
Part of T49043
|
|
|
|
This was no longer supported.
|
|
|
|
Avoids including GPU_select and makes it more clear that the cache is
needed for view3d_opengl_select calls.
Also use typed enum for select mode.
|
|
|
|
|
|
|
|
This also fixes a little bug, which caused `draw_fcurve_samples` to
never be called, and thus sampled curve range boundaries were not drawn.
Part of T49043
|
|
|
|
|
|
|
|
All engines are now called by the draw manager. Engines are separate entities that cannot interfer with each others.
Also separated draw_mode_pass.c into the mode engines.
|
|
This is to be used from the Outliner, when dragging and dropping
collections from the Active Render Layer
It also includes a cleanup on the outliner so it calls the new
functions. Note: the outliner still needs fix to allow all the
functionality here exposed.
But this will be tackled by Julian Eisel later.
|
|
This is to be used from the Outliner, when dragging and dropping.
It does not include moving LayerCollection (from Active Render Layer)
|
|
|
|
|
|
Intended to replace legacy GL_SELECT, without the limitations of
sample queries which can't access depth information.
This commit adds VIEW3D_SELECT_PICK_NEAREST and VIEW3D_SELECT_PICK_ALL
which access the depth buffers to detect whats under the pointer,
so initial selection is always the closest item.
The performance of this method depends a lot on the OpenGL
implementations glReadPixels.
Since reading depth can be slow, buffers are cached for object picking
so selecting re-uses depth data, performing 1 draw instead of 3
(for 24, 18, 10 px regions, picking with many items under the pointer).
Occlusion queries draw twice when picking nearest,
so worst case 6x draw calls per selection.
Even with these improvements occlusion queries is faster on AMD hardware.
Depth selection is disabled by default, toggle option under select method.
May enable by default if this works well on different hardware.
Reviewed as D2543
|
|
The issue was caused by sometimes negative color returned by the filter node.
Seems to be caused by precision issues. Don't see any reason why we would want
negative colors in output. Those only causing issues later on.
|
|
|
|
|
|
|
|
|
|
|
|
Was a mistake in one of the previous TLS commits.
See comment in the pool_create to see some details why it was crashing.
|
|
Part of T49043, T49042
Reviewers: fclem, merwin
Tags: #bf_blender_2.8
Differential Revision: https://developer.blender.org/D2548
|
|
|
|
Suspended pools allows to push huge amount of initial tasks
without any threading synchronization and hence overhead.
This gives ~50% speedup of cached rigid body with file from
T50027 and seems to have no negative affect in other scenes
here.
|
|
This is something what should be done in the task scheduler instead
with local thread queues so we handle this in a single place.
|
|
The idea is to allow some amount of tasks to be pushed from working
thread to it's local queue, so we can acquire some work without doing
whole mutex lock.
This should allow us to remove some hacks from depsgraph which was
added there to keep threads alive.
|
|
This allows us to avoid TLS stored in pool which gives us advantage of
using pre-allocated tasks pool for the pools created from non-main thread.
Even on systems with slow pthread TLS it should not be a problem because
we access it once at a pool construction time. If we want to use this more
often (for example, to get rid of push_from_thread) we'll have to do much
more accurate benchmark.
|