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
AgeCommit message (Collapse)Author
2016-01-26Fix T47214: Keyed Particles don't render correctly when used for point ↵Sergey Sharybin
density input The issue was caused by different AABB used by Cycles and texture sampler. Instead of trying to keep this two functions in sync we now do have an utility call in the point density node to query the AABB.
2016-01-24Cycles: Tweak Cycles samples again.Thomas Dinges
Now we use 128 for final, and 32 for preview. These values should be a bit better (power of two, also faster with CMJ).
2016-01-24Cycles: Fix typo in flags checkSergey Sharybin
2016-01-24Cleanup: Remove outdated comment in volume code.Thomas Dinges
Thanks to jesterking for finding this one.
2016-01-24Cleanup: styleCampbell Barton
2016-01-23Cycles: Make Clang 3.6 happy with const debug flags referenceSergey Sharybin
For some reason it did not like the explicit const qualifier for a custom type.
2016-01-23Cycles: Change several default values (first batch).Thomas Dinges
This changes the following defaults: - Render settings: * Samples: 100 * Preview Samples: 50 * Filter: Blackmann-Harris * Tile Order: Hilbert Spiral - Lamp settings: * Use MIS: On - Material settings: * Volume Sampling: Multiple Importance Old files are not affected, I tested the versioning code back and forth. More changes are to come (World, BVH...) but that needs a bit more work.
2016-01-21MS Visual Studio 2015 does not find std::inserterMartijn Berger
2016-01-21Cycles: Improve UI feedback for light samples.Thomas Dinges
Fix T47213. There was actually no real bug here, just clarify now in the UI that Mesh, World and Lamp samples only have an effect if we sample all lights (direct or indirect).
2016-01-20Fix error in rBa6eae7339190.Bastien Montagne
2016-01-20Fix (partial) T47198: Cycles have broken UVs in some degenerated quads casesSergey Sharybin
The issue was discontinuity in logic when importing vertices from blender and then importing data layers regardless of how we split the face. Quite interesting we didn't notice this issue before. Thanks Bastien for the investigation, based on D1742 but redid it to make patch a bit more clear to follow.
2016-01-20Cycles: Fix OpenCL kernel compilation after the bake commitSergey Sharybin
There is no function pointers in OpenCL specification. For as long as we want to support this platform we should follow the specifications. While the code is not totally optimal now, it should not be that huge of performance issue on CPU since it does jump tables just nicely, so it's not that much extra computation here.
2016-01-20Cycles: Pass missing shader filter argument to CUDA and OpenCL kernelsSergey Sharybin
2016-01-19Cycles: Add a debug flag to disable QBVHSergey Sharybin
2016-01-19Fix T47201: Cycles+OSL keeps image files open until Blender exitsSergey Sharybin
Now image will be opened for while render session is active, this is needed to keep image cache working correctly. But stopping render should now release all files descriptors.
2016-01-16Cycles: Fix compilation with older OSLSergey Sharybin
We didn't switch to OSL-1.6.9 on all platforms yet, so please keep codeabse compiled with 1.5 for the time being.
2016-01-16Fix T47180: Cycles deform motion blur + displacement behaves weirdlySergey Sharybin
Displacement shader was not updating motion vertex positions. Current solution is not totally correct because it applies same offset for all time steps. Ideally we'll need to evaluate displacement shader for every time offset separately, but currently we don't have subframe image access. For the time being will consider this a TODO.
2016-01-16Fix T47181: Blender OSL script node crash (OSL 1.6.9)Lukas Stockner
Compiling OSL scripts with errors in them would cause Blender to crash since the OSL version bump to 1.6.9 instead of printing the error to the console as it did before. With version 1.6.2, OSL added a pointer to an OpenImageIO ErrorHandler as an argument to the OSLCompiler constructor. However, since it defaults to the NULL pointer, Blender still compiled fine after the OSL version bump. It turns out, though, that this pointer is used without further checks inside the OSL code, which makes it crash when it tries to report an error unless a valid ErrorHandler pointer is specified. Therefore, this commit simply passes a pointer to the static default handler that OIIO offers, which prints the error to the console just like OSL did before. Using this feature for a more advanced error handling and displaying from the Blender side would be possible and seems reasonable, but for now it's not really relevant for fixing this bug.
2016-01-15Cycles-Bake: Custom Baking passesDalai Felinto
The combined pass is built with the contributions the user finds fit. It is useful for lightmap baking, as well as non-view dependent effects baking. The manual will be updated once we get closer to the 2.77 release. Meanwhile the new page can be found here: http://dalaifelinto.com/blender-manual/render/cycles/baking.html Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D1674
2016-01-14Usual fixes and tweaks for UI messages.Bastien Montagne
2016-01-14Cycles: One more attempt to fix issue mentioned in previous commitSergey Sharybin
2016-01-14Cycles: Fix typo in the debug panel commitSergey Sharybin
2016-01-14Cycles: Fix string compiler warnings after recent changesSergey Sharybin
2016-01-14Cycles: Cleanup, spelling and indentationSergey Sharybin
2016-01-14Cycles: Remove the experimental CUDA kernel.Thomas Dinges
This commit removes the experimental CUDA kernel, making SSS and CMJ regular features. Several improvements have been made in the past few weeks (thanks Sergey!) which make SSS render several times faster (2-3x compared to 2.76b) on the GPU, and the increased VRAM usage has also been fixed. Therefore the experimental kernel is no longer needed. Differential Revision: https://developer.blender.org/D1726 Manual has been updated: too: https://www.blender.org/manual/render/cycles/features.html
2016-01-14Cycles: Tweak inline policy for some functionsSergey Sharybin
The goal is to make Experimental kernel closer in performance to the official kernel, avoiding spills and such. There should not be big impact on official kernel, own tests showed few percent performance drop on laptop's GPU. CPU was always the same speed on AVX, AVX2 and SSE4.1 CPUs i've been testing here. This seems to be the last essential step before we can get rid of Experimental kernel and enable SSS officially on GPU without causing some major performance issues. Surely some more tweaks are possibly required, but that we can do for until cows go home anyway.
2016-01-14Cycles: Reduce scope of some defines set in CMakeListsSergey Sharybin
Should be no functional changes at all, just speeds up re-compilation when some features needs to be disabled for development purposes. For example, when running lots of Valgrind it's handy to disable any GPU devices because otherwise you'll be wasting quite some time in the driver while enumerating devices. Reviewers: dingto, lukasstockner97, brecht, juicyfruit Differential Revision: https://developer.blender.org/D1730
2016-01-14CMake: Fix typo in CUDA dynload commitSergey Sharybin
2016-01-14CMake: De-duplicate checks around unordered maps and shared pointerSergey Sharybin
Previously several areas were calling TEST_SHARED_PTR_SUPPORT and TEST_UNORDERED_MAP_SUPPORT which isn't that bad on it's own but was causing some quite verbose output with same information line printed multiple times. additionally, what's more worse, define flags for Ceres were duplicated in main CMakeLists and Ceres's CMakeLists. Now we've got a single place where checks for those classes are happening and other areas are simply checking for variables set by those check macros, keeping CMake output clean and nice.
2016-01-14Cycles: Add option to directly link against CUDA librariesSergey Sharybin
The main purpose of such linking is to make Blender compatible with NVidia's debuggers and profilers which are doing some LD_PRELOAD magic to intercept some function calls. Such magic conflicts with our CUDA wrangler magic and causes segmentation faults. The option is disabled by default, so there's no affect on any of artists. In order to make Blender linked directly against CUDA library use the WITH_CUDA_DYNLOAD CMake option (it's marked as advanced).
2016-01-12Cycles: Use proper primitive for the motion subsurface refineSergey Sharybin
2016-01-12Cycles: Use special debug panel to fine-tune debug flagsSergey Sharybin
This panel is only visible when debug_value is set to 256 and has no affect in other cases. However, if debug value is not set to this value, environment variables will be used to control which features are enabled, so there's no visible changes to anyone in fact. There are some changes needed to prevent devices re-enumeration on every Cycles session create. Reviewers: juicyfruit, lukasstockner97, dingto, brecht Reviewed By: lukasstockner97, dingto Differential Revision: https://developer.blender.org/D1720
2016-01-11Cycles: Always inline triangle precalc for CUDA devicesSergey Sharybin
Since the SSS changes compiling Experimental sm_52 kernel seems to work just fine.
2016-01-11Cycles: Fix for SSS objects being black when combined with motion blurSergey Sharybin
2016-01-10Cycles: Add utility funcs to UI code, to check GPU usage.Thomas Dinges
Can be useful sometimes, and we already have this for CPU. Required for some further work here.
2016-01-10Cycles: Fix Uninitialized Value compiler warning in the scoped_timerLukas Stockner
Although the code made it impossible to use time_start_ uninitialized, at least GCC did still produce multiple warnings about it. Since time_dt() is an extremely cheap operation and functionality does not change in any way when removing the check in the constructor, this commit removes the check and therefore the warning.
2016-01-10Cycles: Read Wave texture profile in the XML parserLukas Stockner
2016-01-10Cycles: Adding Hilbert Spiral as a tile order for renderingLukas Stockner
This patch adds the "Hilbert Spiral", a custom-designed continuous space-filling curve, as a tile order for rendering in Cycles. It essentially works by dividing the tiles into tile blocks which are processed in a spiral outwards from the center. Inside each block, the tiles are processed in a regular Hilbert curve pattern. By rotating that pattern according to the spiral direction, a continuous curve is obtained, which helps with cache coherency and therefore rendering speed. The curve is a compromise between the faster-rendering Bottom-to-Top etc. orders and the Center order, which is a bit slower, but starts with the more important areas. The Hilbert Spiral also starts in the center (unless huge tiles are used) and is still marginally slower than Bottom-to-Top, but noticeably faster than Center. Reviewers: sergey, #cycles, dingto Reviewed By: #cycles, dingto Subscribers: iscream, gregzaal, sergey, mib2berlin Differential Revision: https://developer.blender.org/D1166
2016-01-09Cleanup: warning/spellingCampbell Barton
2016-01-08CMake: Make OSL's .oso shaders building also dependent on OSL compiler!Bastien Montagne
Otherwise, you can update OSL and not get .oso files regenerated, which is a quite funny way to crash Blender...
2016-01-07Fix RNA_enum_set_identifier(), needs a context to handle correctly dynamic ↵Bastien Montagne
enums.
2016-01-07Cycles: Update some API to be ready for OSL 1.6Sergey Sharybin
While previous code was already compiling with OSL 1.6 it was using some symbols which were considered deprecated in upstream. This commit adds some ifdefs, but soon we'll get rid of all them rather soon with the upcoming OIIO/OSL update.
2016-01-07Cycles: Update some types used form OSLSergey Sharybin
Some types were deprecated back in 2013, better to be prepared earlier for those types being removed from upstream.
2016-01-07Cycles: Whitespace cleanup, extra space in the argument listSergey Sharybin
Seems we're really starting to need to have cpplint for Cycles.
2016-01-07Cycles: Cleanup, use "string_" prefix for functions in util_stringSergey Sharybin
No functional changes, just makes it easier to track where the function is coming from.
2016-01-07Cycles: Fix wrong transparency flag being set to integratorSergey Sharybin
Patch from be28706 made it so integrator will use last shader's transparent shadow flag, which is wrong since last shader might not have transparent shadow while shaders prior to it might have one.
2016-01-07Cycles: Add utility function to convert bool to string.Thomas Dinges
2016-01-07Cleanup: Fix Cycles compile warning on MSVC.Thomas Dinges
2016-01-07Cycles OpenCL: Change environment flags for testing.Thomas Dinges
CYCLES_OPENCL_TEST was removed, there was an insonsistency between opencl_kernel_use_split() and opencl_get_usable_devices(). From now on, to test non whitelisted devices please use either CYCLES_OPENCL_MEGA_KERNEL_TEST or CYCLES_OPENCL_SPLIT_KERNEL_TEST.
2016-01-07Cycles: Refactor how we pass bounce info to light path node.Thomas Dinges
This commit changes the way how we pass bounce information to the Light Path node. Instead of manualy copying the bounces into ShaderData, we now directly pass PathState. This reduces the arguments that we need to pass around and also makes it easier to extend the feature. This commit also exposes the Transmission Bounce Depth to the Light Path node. It works similar to the Transparent Depth Output: Replace a Transmission lightpath after X bounces with another shader, e.g a Diffuse one. This can be used to avoid black surfaces, due to low amount of max bounces. Reviewed by Sergey and Brecht, thanks for some hlp with this. I tested compilation and usage on CPU (SVM and OSL), CUDA, OpenCL Split and Mega kernel. Hopefully this covers all devices. :)