Age | Commit message (Collapse) | Author |
|
Also optimize deferred engine by only outputing material data if needed.
This make the bare flat shading mode (no effects) only a depth prepass.
|
|
This seems to be a driver bug. Only windows + Radeon HD 7500M seems
to be affected. Fix can be extended to more config if necessary.
|
|
|
|
Matches behavior for other modes.
|
|
|
|
|
|
|
|
|
|
No functional changes, but it makes all the coordinates more consistent
(going from small to larger values). It helps debugging in the future
to be able to rule out vertex order as a culprit.
|
|
The top-left and bottom-right corners were creating the new area in the
wrong place.
Blender 2.7x only had action zone corners in the top-right, and
bottom-left corners. So it had some hardcoded assumptions based on that.
This commit feels a bit like a hack, but I think it may be fine.
Bug reported via IRC, how to reproduce:
* Change shading to Rendered.
* Split viewport from the top-left corner.
|
|
|
|
|
|
|
|
|
|
Since it seems that CD_ORIGINDEX is not available for loops,
the only choice is to simply use the loop normals already
computed by depsgraph after evaluating modifiers.
This revealed a bug where the Auto Smooth settings would be lost
from the mesh after complex modifiers, or after edit mesh to mesh
conversion, so restoring them is needed to get correct results.
|
|
I tried to make it progressive using the wireframe slide but it did not
work well.
So taking the most straight forward way.
|
|
This only happens after a certain wireframe threshold.
We sort triangles into 2 bins (start and end of the buffer) based on a
threshold and just draw the first bin if the wireframe slider is low enough.
This optimization is disabled for deformed meshes when playback is active.
This optimization is only implemented for meshes object for now.
This should help resolve (to some extent) T58188.
|
|
This only happens after a certain threshold.
We sort triangles into 2 bins (start and end of the buffer) based on a
threshold and just draw the start bin if the wireframe slider is low enough.
This optimization is disabled for deformed meshes.
This should help resolve (to some extent) T58188.
|
|
|
|
We need to copy those back from evaluated modifierdata to orig one (as
part of `BKE_object_synchronize_to_original()`).
|
|
|
|
Simply kill prefetch jobs when reloading. Not sure what else
we can do here..
|
|
The issue was caused by transflag set in geometry evaluation
never copied back top original object.
Now we have a dedicated operation which does all sort copy
back to original object, so we don't have to worry about
atomic assignments or what gets set where.
Still need to move boundbox to the same function, but it
needs some careful doublechecking first.
|
|
This seems to be a bug in OpenSubdiv. For now simply use Catmark
subdivision scheme with infinitely sharp edges.
Later on it's either gets fixed in OpenSubdiv or we do bilinear
subdivision on our side.
|
|
All localized datablocks are not supposed to have animation
data associated with them.
There was an easy way to reproduce assert failure: toggle
animation decorator for Viewport Display -> Color.
|
|
More operators need to become aware of action possibly being gone.
|
|
COW nodes in the graph are mostly connected via a relation type
that doesn't propagate the update flags. Unfortunately, due to
the scheduling implementation that means the relations don't
actually guarantee execution order for indirect dependencies.
Relations also don't guarantee order in case of cycles.
As mentioned in IRC, the simplest way to fix possible problems
is to execute all COW nodes as a separate execution stage. This
seems to fix crashes with Data Transfer modifier in a cycle.
Staging works by simply delaying actual scheduling of tasks for
non-COW nodes until the second run of schedule_graph.
Reviewers: sergey
Differential Revision: https://developer.blender.org/D4027
|
|
To make the pool more usable for running multiple stages of tasks,
fix local queue handling in BLI_task_pool_work_and_wait.
Specifically, after the wait loop the local queue should be empty,
or the wait part of the function contract isn't fulfilled. Instead,
check and run any tasks in queue before the wait loop.
Also, add a new function that resets the suspended state of the pool.
|
|
Reported by @zeffii, thanks!
|
|
|
|
|
|
|
|
Add special handling for both edge cases (:p):
* 180° is same as no splitting by angle;
* 0° is same as split on all edges unconditionnaly.
In both cases we can also avoid computing poly normals.
|
|
|
|
|
|
|
|
Split out ensure-tool check into its own function.
|
|
Support space modes not having tools.
|
|
|
|
|
|
|
|
This adds an elliptical arc primitive.
Press CKEY for toggling closed/open arc.
Press FKEY key for flipping arc.
Additional changes to gpencil primitives.
Increases default edges of circle to 64.
Keymap changes to allow primitives to be drawn with Shift or Alt key.
Allow Plus/Minus key to adjust number of edges.
Missing: Toolbar icon
Differential Revision: https://developer.blender.org/D4024
|
|
A little too much code got removed in fb24813.
|
|
After update of the mesh some of that data is so broken that using
it would crash. To reduce the risk of crashes in case of dependency
cycles, clean it up immediately.
|
|
The hang was due to the nodes being "evaluated" for every incomming link.
Solution: only evaluate once per nodetree.
Also merge the tagging of SSS and SSR into one traversal only.
|
|
Use --debug-gpu for debugging non found uniforms
|
|
This reduces the bandwidth + vram usage of workbench even further.
|
|
We separate the background and foreground shading passes to be able to make
the object id pass optionnal if we don't need it.
This saves a bit more memory. Also not clearing all rendertargets saves
some GPU time too.
|
|
This is to be able to only draw the background pixels by using a depth
test EQUAL.
|
|
It is not used anymore
|