Blender Git Loki

Blender Git commits from all branches.

Page: 529 / 2888

February 17, 2021, 16:39 (GMT)
Sculpt Expand: Expose normals expand in the keymap
February 17, 2021, 16:24 (GMT)
USD Importer: dependency graph update crash.

Fixed occasional random crash due to simultaneous update
to the dependency graph from multiple threads. A typical
collision might happen when the USD import job thread
is creating a material while the window manager in the
main thread is processing event notifiers. The current
fix is to remove the ND_FRAME flag from the call to
WM_jobs_timer(), which prevents ED_update_for_newframe()
from being called from wm_event_do_notifiers().
February 17, 2021, 15:50 (GMT)
Sculpt Expand: Fix normals falloff
February 17, 2021, 15:45 (GMT)
Cycles: Refactor kernel globals localization used for CPU

Move all resource management to a dedicated class. Reduces code
duplication between rendering and shading, as well as makes resource
management more localized and robust.

Additionally, removed the kgbuffer, which seemed to be some sort of
part of a finished project.

Should become handy when adding actual execution logic to the device
queue (which would need to have KernelGlobals in order to invoke
kernels).

Currently no functional changes. Tested by switching Session::render()
back to its operable state.
February 17, 2021, 15:35 (GMT)
Merge branch 'master' into sculpt-dev
February 17, 2021, 15:35 (GMT)
Merge branch 'master' into sculpt-dev
February 17, 2021, 15:34 (GMT)
Cycles: Boiler plate code for kernel queues

The goal of this change is lay down an initial version of API which
will allow path tracer to queue kernels for execution.

This is done by introducing new `DeviceQueue` class which is a higher
level abstraction over concepts like OpenCL queue or CUDA stream. Its
purpose is to take overhead of kernels invocation. The queue is created
by a device, and after that it becomes self-sufficient.

The queue is implemented as a "stub" for CPU device.

This change also contains changes which is basically an initial pass
over render graph implementation.

In order to have all bits tested had to rake over `Session::render()`
function so now render result is always empty. The old code is ifdefed
so that it is more visible which parts of code are to be brought back
in a proper design.

Next steps will include implementation of some resource management so
that integrator kernels can be actually invoked.
February 17, 2021, 15:16 (GMT)
Merge branch 'master' into temp-gpencil-io
February 17, 2021, 15:16 (GMT)
Merge branch 'master' into greasepencil-object
February 17, 2021, 15:16 (GMT)
Merge branch 'master' into temp-gpencil-interpolate
February 17, 2021, 12:10 (GMT)
Cleanup: Cycles, remove unneeded forward declaration
February 17, 2021, 12:00 (GMT)
Cleanup: Cycles, use const reference in RenderBuffers::reset()

No functional changes. Allows to pass parameters as a const-reference
in the upcoming code.
February 17, 2021, 11:00 (GMT)
Cycles: Pull make_unique into the ccl namespace

Allows to allocate object instances which are guarded by unique_ptr
in a more modern fashion.

This is a C++14 feature, which is higher than typically used C++11
in the Cycles code. Since Blender is C++17 it makes sense to move
to a newer standard in Cycles as well. All this is applicable if
there are no other places in Cycles which are relying on a more
modern C++ already.
February 17, 2021, 10:48 (GMT)
Cycles: Fix compilation error with strict compiler flags

Added a note to re-evaluate in the future whether implementing proper
assign semantic worth a trouble. For now, just be careful and not use
the macro for something which is not a struct with only (possibly
vectorized) scalars.
February 17, 2021, 06:20 (GMT)
- rebase and minor cleanup
February 17, 2021, 06:12 (GMT)
NLA: Extract nlasnapshot_blend_get_inverted_upper_snapshot()

Extracts //nlasnapshot_blend_get_inverted_upper_snapshot()// from //BKE_animsys_nla_remap_keyframe_values()//

- This introduces a new struct member: `NlaEvalChannelSnapshot->invertible` which marks values which have successfully been inverted and can be further used for solving.
- //nlasnapshot_mark_all_invertible()// is unused in this patch but seemed generally useful when using snapshots for remapping. {D8867} would be able to make use of it.
- //nlasnapshot_blend_get_inverted_upper_snapshot()// has a variant //nlasnapshot_blend()// from {D10220}, but this patch doesn't depend on it at all. A third variant will later be added //nlasnapshot_blend_get_inverted_lower_snapshot()//. Altogether, these three functions allow solving for any of (lower_snapshot, upper_snapshot, blended_snapshot) given the other two.

No user functional changes

Differential Revision: https://developer.blender.org/D10222
February 17, 2021, 06:12 (GMT)
minor cleanup
February 17, 2021, 04:42 (GMT)
Graph Editor: FCurve Extrapolation Visibility T76472

Adds toggle to graph editor (View->Show Extrapolation). When disabled, then fcurves only draw over the keyframe range. For baked fcurves, the range is all sampled points. For ghost fcurves, extraplation is always drawn since the sampled points may include extrapolated points of the original fcurve.

Show Extrapolation is the default.
___

**Technical Notes**:
- `draw_fcurve_curve()`: There are now explicit checks for floating point poor accuracy cases. Without them, then there would be visual flickering when no extrapolation is drawn and there is a discontinuity at the end (due to cyclic modifier). This removes the need for the `+samplefreq` in `etime = v2d->curxmax + samplefreq`. It also removes the need to do so on `fcu_start/fcu_end`.
- `draw_fcurve_curve()`: Besides the previous note, the only other meaningful change is the `if(!draw_extrapolation)` branch which just changes `stime/etime` to match the keyframe bounds instead.

Differential Revision: https://developer.blender.org/D10442
February 16, 2021, 23:17 (GMT)
Sculpt Expand: More comments
February 16, 2021, 22:37 (GMT)
USD import: uniform interpolation normals.

Added logic to import USD normals with uniform interpolation
(i.e., per-face normals) as Blender loop normals.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021