Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
AgeCommit message (Collapse)Author
2015-06-02Fix T44922: Split kernel renders black when using Bump nodeSergey Sharybin
Was missing feature detection in the BumpNode in the previous selective nodes compilation commit.
2015-06-01Fix T44908: Blender crashes when trying to use cycles experimental displacementSergey Sharybin
The issue was caused by the reshuffle needed to make objects flags have proper object's bounding box to solve regressions in SSS objects intersecting volumes. There's actually a feedback loop happening here, which is now solved in quite naive way -- for the true displacement we consider all objects are capable of intersecting volumes, synchronize object flags prior to displacement shader tasks runs and then re-update object flags for proper bounding box. Not sure what will be the proper solution here, we can't do preliminary check of intersection for displacement shader, but on the other hand we don't really need this flag for displacement shader anyway.
2015-06-01Cycles XML API: * Add Bump and Holdout Node * Add todo comments for various ↵Thomas Dinges
things. * SSS falloff now works.
2015-06-01Cycles: Number keys 0-3 can be used in interactive mode now to set max bounces.Thomas Dinges
2015-06-01Cycles: Fix wrong max nodes group used for the viewport renderSergey Sharybin
2015-06-01Cycles: Strip meaningless empty output form the MVidia OpenCL compilerSergey Sharybin
2015-06-01Cycles: Assert in the cases when SVM node was not handledSergey Sharybin
This will help figuring out cases when node was not properly handled by the SVM by aborting execution on CPU, where all the nodes are expected to be supported.
2015-06-01Cycles: Implement selective nodes compilationSergey Sharybin
This commits finishes initial selective nodes compilation into kernel, which helps a lot performance-wise for AMD OpenCL kernels. Split by node groups is based on statistics from simple scenes like BMW and more complex scenes like mango and gooseberry production files. Further tweaks are always possible, but it should be a good starting point. TODO: Still need to ignore unused nodes when calculating requested shader features.
2015-06-01Cycles: Fix some typos in the selective modes compilationSergey Sharybin
2015-06-01Cycles: Code cleanup, spaces around keyword and braceSergey Sharybin
2015-06-01Cycles: Fix missing features gathering from the bump graphSergey Sharybin
2015-06-01Cycles: Add bump feature for selective nodes compilationSergey Sharybin
For now it is unused in the kernel, actual usage will come with the next commits.
2015-06-01Cycles: Report build flags used for the OpenCL kernel compilationSergey Sharybin
For now it's reported to the stdout, matching to the CUDA behavior. In the future we can hide this into GLog logging once the kernels are considered all stable and so.
2015-06-01Cycles: Shader node features are to be inherited from the base classSergey Sharybin
2015-05-29GHOST get rid of unused warningsAntony Riakiotakis
2015-05-28Cycles: Enable Object Motion on AMD OpenCL.Thomas Dinges
Like Camera Motion, only available in the Experimental kernel. This should be it for the upcoming release, we now support almost everything, apart from Transparent Shadows, SSS and Volume.
2015-05-28Ghost/X11: allow creating windows to failCampbell Barton
Would exit, problematic for setting stereo3d modes which aren't always supported.
2015-05-28Cleanup: warningCampbell Barton
2015-05-28Cleanup: Remove unused Noise Basis texture code.Thomas Dinges
Same as last commit, code is unused and this one actually would have required some fixes, as these variants output values outside the 0-1 value range, which doesn't fit Cycles shader design.
2015-05-28Cleanup: Remove unused Voronoi texture code.Thomas Dinges
Let's finally delete this code, after 4 years of being unused, there really is no excuse anymore. If we decide to extend the procedural textures in SVM, we can do this anytime in the future.
2015-05-27Cycles: Code cleanup, split kernelSergey Sharybin
2015-05-26Fix T44833: Can't use ccl_local space in non-kernel functionsSergey Sharybin
This commit re-shuffles code in split kernel once again and makes it so common parts which is in the headers is only responsible to making all the work needed for specified ray index. Getting ray index, checking for it's validity and enqueuing tasks are now happening in the device specified part of the kernel. This actually makes sense because enqueuing is indeed device-specified and i.e. with CUDA we'll want to enqueue kernels from kernel and avoid CPU roundtrip. TODO: - Kernel comments are still placed in the common header files, but since queue related stuff is not passed to those functions those comments might need to be split as well. Just currently read them considering that they're also covering the way how all devices are invoking the common code path. - Arguments might need to be wrapped into KernelGlobals, so we don't ened to pass all them around as function arguments.
2015-05-26Cycles: Enable advanced shading for NVidia OpenCL kernelSergey Sharybin
It was kept disabled due to render artifacts which weer in fact caused by bad memory access, which is fixed in the previous commit. We now also can make it enabled in regular AMD split kernel after someone tests the updated code.
2015-05-26Fix T44831: Crash when using Intel OpenCL with split kernelSergey Sharybin
The issue was caused by underallocation of object motion related arrays, which happened by accident.
2015-05-26Fix T44763: Surface Panel does not update correctly according to Node Output ↵Sergey Sharybin
for Cycles UI
2015-05-26GHOST: flush event printer outputCampbell Barton
2015-05-26Cleanup: warning, spellingCampbell Barton
2015-05-25Cycles: Fix compilation error of split kernelSergey Sharybin
The code was failing to compile on runtime because of some path differences, and it seems we don't need to specify full path to the file which originally seemed to be needed to make include directives expansion working correct.
2015-05-25Fix T44833, OpenCL compile error on AMD.Thomas Dinges
This was broken after the kernel file restructure. Variables allocated in the __local address space can only be defined inside a __kernel function. We probably need to solve this a bit differently once we do the CUDA kernel split, but this fix shoud be good enough until then.
2015-05-25Fix T44830, wrong sample progress number when using split device.Thomas Dinges
Value was not set, moved it out of the constructor into device_opencl_create() now.
2015-05-23Cleanup: typosCampbell Barton
2015-05-22Cycles: Restructure kernel files organizationSergey Sharybin
Since the kernel split work we're now having quite a few of new files, majority of which are related on the kernel entry points. Keeping those files in the root kernel folder will eventually make it really hard to follow which files are actual implementation of Cycles kernel. Those files are now moved to kernel/kernels/<device_type>. This way adding extra entry points will be less noisy. It is also nice to have all device-specific files grouped together. Another change is in the way how split kernel invokes logic. Previously all the logic was implemented directly in the .cl files, which makes it a bit tricky to re-use the logic across other devices. Since we'll likely be looking into doing same split work for CUDA devices eventually it makes sense to move logic from .cl files to header files. Those files are stored in kernel/split. This does not mean the header files will not give error messages when tried to be included from other devices and their arguments will likely be changed, but having such separation is a good start anyway. There should be no functional changes. Reviewers: juicyfruit, dingto Differential Revision: https://developer.blender.org/D1314
2015-05-22Cycles: Remove TM / R and whitespace from OpenCL device names.Thomas Dinges
Was already done for CPU devices, now we also do this for OpenCL.
2015-05-21Cleanup: Remove some outdated comments related to split kernel.Thomas Dinges
2015-05-21Cycles: Remove OSL from split headersSergey Sharybin
Split kernel is mainly useful for GPUs which can not support OSL in visible future anyway.
2015-05-21Cycles: Move utility atomics function to util_atomic.hSergey Sharybin
No functional changes, just better to keep all atomic function in a single place, they might become handy later.
2015-05-21Cycles: CYCLES_OPRNCL_DEBUG now affects on split kernel as wellSergey Sharybin
2015-05-21Cycles: Restore some lost custom cflags passed to the kernel compilationSergey Sharybin
They were lost during simplification of kernel loading but might be rather crucial for the performance. Also made it so cflags are shared across kernels. Surely it might lead to some unwanted kernel re-compilation but at the same time they might easily run out of sync with the changes in kernel and so.
2015-05-20Cycles: Cleanup, synchronize name across file name, program and kernel namesSergey Sharybin
2015-05-20Cycles: Simplify code around kernel loadingSergey Sharybin
2015-05-20Cycles standalone, add device type in output listingMartijn Berger
2015-05-20Atomic operations: Add function declarations at the top of the headerSergey Sharybin
No functional changes, just helps grasping what operations are actually supported.
2015-05-20doxygen: corrections/updatesCampbell Barton
Also add depsgraph & physics
2015-05-19Cycles: Check for validity of the tiles arrays in progressive refineSergey Sharybin
In certain configurations (for example when start resolution is set to small value for background render and progressive refine enabled) number of tiles might change in the tile manager. This situation will confuse progressive refine feature and likely cause crash. We might also add some settings verification in the session constructor, but having an assert with brief explanation about what's wrong should already be much better than nothing.
2015-05-19Cycles: Check for whether update/write callbacks are set prior to calling themSergey Sharybin
This changes the progressive refine part, regular update was already checking for whether callbacks are set.
2015-05-18Fix T44707: cycles border render regressionSv. Lockal
2015-05-18Change behavior of cycles xml to conform the spec: "Each XML document has ↵Martijn Berger
exactly one single root element"
2015-05-17Cycles: Enable advanced shading on AMD / OpenCL.Thomas Dinges
That is needed for Motion Blur and Render Passes to work properly. I hope there are no nasty side effects, but we need to test this.
2015-05-17Cycles / OpenCL: Enable Camera Motion and Hair for AMD.Thomas Dinges
Only enabled for the Experimental kernel though, so the feature set must be changed in the UI to use the features.
2015-05-17Cleanup: Typos, typos everywhere. :DThomas Dinges