Age | Commit message (Collapse) | Author |
|
Previously two laplacian smooth or deform modifiers executing
simultaneously could crash.
|
|
|
|
Performance is roughly the same because it's using the same COLAMD ordering
and supernodal LU factorization algorithms. Solve results also appear to be
identical.
|
|
|
|
messagebox.
|
|
Unfortunately there's no easy way to show a messagebox here, so just
print a warning on fstderr and exit. If we don't call exit() here we get
crashes on other blender systems (python, opensubdiv) and it can get
tricky to track the initialization state here, so just using exit()
should do the trick for now.
|
|
This gives few percent extra memory saving for the CUDA kernel when
using regular path tracing.
Still more like an experiment, but will be handy in the future.
|
|
Summary: By calculating the Camera-to-Screen-Matrix first, one inversion can be saved in the Camera sync.
It won't really improve speed and/or precision, it's mainly a small cleanup.
Reviewers: sergey, dingto
Subscribers:
|
|
This way we'll be able to disable SSS for the scene-adaptive kernel.
|
|
Gives few percent of memory improvement for regular feature set kernel
and could give significant memory improvement for Experimental kernel.
It could also give some degree of performance improvement, but this I
didn't really measure reliably yet.
Code is ifdef-ed for now, since it's only working on Linux and requires
CUDA toolkit to be installed (other platform only use precompiled
kernels).
This is just an experiment for now and a base for the proper feature
support in the future (with runtime compilation using CUDA 7?).
|
|
|
|
This just replaces internal argument `experimental` with `requested_features`
making it possible to access particular requested settings when building
kernels.
|
|
This way it's easier to re-use requested features logic across multiple
device implementations.
|
|
This should solve some compilation errors with compilation on OSX.
|
|
Basically we can not use sharp closure as a substitude when filter glossy is
used. This is because we can not blur sharp reflection/refraction.
This is quite quick and not really clean implementation. Not really happy
with manual handling of original settings, but this is as good as we can do
in the quick patch. It's a good acknowledgment and we now can re-consider
some aspects of graph simplification to make such cases more natively
supported.
P.S. This failure would have been shown by our regression tests, so please,
bother a bit to run Cycles's test sweep before doing such optimizations.
|
|
|
|
|
|
This commit adds the Blackman-Harris windows function as a pixel filter to Cycles. On some cases, such as wireframes or high-frequency textures,
Blackman-Harris can give subtle but noticable improvements over the Gaussian window.
Also, the gaussian window was truncated too early, which degraded quality a bit, therefore the evaluation region is now three times as wide.
To avoid artifacts caused by the wider curve, the filter table size is increased to 1024.
Reviewers: #cycles
Differential Revision: https://developer.blender.org/D1453
|
|
We fallback to Sharp closures for Glossy, Glass and Refraction nodes now, in case the Roughness input is disconnected and 0 (< 1e-4f to be exact).
This way we gain a few percentages of performance, in case the user did not manually set the closure type to "Sharp" in the UI.
Sharp will probably be removed from the UI as a followup, not needed anymore with this internal optimization.
Original idea by Lukas Stockner(Differential Revision: https://developer.blender.org/D1439), code implementation by myself.
|
|
|
|
|
|
We may use these for Wayland or SDL back-ends.
|
|
Built into OpenGL 4.3, or 4.2 plus ARB_compute_shader extension.
|
|
|
|
Once we adopt GL 3.2 across Blender, the check will be:
return GLEW_VERSION_4_0 || GLEW_ARB_gpu_shader5;
|
|
Fixed extension check.
This feature requires ARB_texture_buffer_object which was subsumed into
OpenGL 3.0. Intel driver on Windows doesn't claim to support this
extension, but GL version is > 3 so it actually does work.
|
|
Tested working on Haswell i5-4670 running Windows 10.
|
|
There was a bug in OpenSubdiv library which is now fixed by updating library in
the build environments.
Still requires testing, but now being at the beginning of release cycle is
should be safe to simply enable option and let everyone to test :)
|
|
This reverts commit ff3cf93405e63fa367f64412bcfe96b382b24b38.
Turns out distros only a year old still use CMake 2.8x
|
|
This allows us to use newer features of CMake, and less hassles having to test & support older versions.
|
|
The bug header is wrong, the file contains the high pitched sound, but the bug that existed was that animation rendering did not use the high quality resampler, while audio mixdown does.
Blender uses the low quality resampler to be as little CPU consuming as possible.
|
|
With current formulation of cmj_fast_div_pow2() it should always return 0
in the case of first argument is zero and no assert really needed anymore.
|
|
Apparently removing kernel arguments broke NVidia OpenCL.
Needs more investigation, for the time being revering changes which caused problem.
|
|
Should be no functional changes, just simplifies operation with kernels.
|
|
|
|
|
|
|
|
Shadow blocked kernel was using wrong array for storing intersection.
|
|
This way it's possible to test mega kernel on various hardware.
That being said mega kernel seems to work on Fiji card here in the studio.
|
|
Ideally we shouldn't use char* at all, but for now we have to, so at least
let's assume common .h files are free from pointer magic.
|
|
|
|
Shutter curve now can be controlled using curve mapping widget in the motion
blur panel in Render buttons. Only mapping from 0..1 by x axis are allowed,
Y values will be normalized to fill in 0..1 space as well automatically.
Y values of 0 means fully closed shutter, Y values of 1 means fully opened
shutter.
Default mapping is set to old behavior when shutter opens and closes instantly.
This shutter mapping curve could easily be used by any other render engine by
accessing scene.render.motion_blur_shutter_curve.
Reviewers: #cycles, brecht, juicyfruit, campbellbarton
Differential Revision: https://developer.blender.org/D1585
|
|
Previously shutter was instantly opening, staying opened for the shutter time
period of time and then instantly closing. This isn't quite how real cameras
are working, where shutter is opening with some curve. Now it is possible to
define user curve for how much shutter is opened across the sampling period
of time.
This could be used for example to make motion blur trails softer.
|
|
Filter table should stay exactly the same, no changes in the render
results are expected at all.
|
|
|
|
I don't see how this could conflict, madd() in util_ssef.h has a different function signature.
|
|
|
|
|
|
Load driver dynamically at runtime instead of weak-linking the
3Dconnexion framework. Driver no longer needed at build time!
Works with really old drivers (as in PowerMac old), more recent
versions, and the latest which allows us to process events on a
separate thread.
|
|
|