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
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-15Cleanup: used pre-defined atoms in ghostCampbell Barton
2016-01-15Fix T31063: X11 window resize fails on PPCCampbell Barton
X11 property access was using wrong sized types that only worked for little endian systems.
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-14Libmv: Solve strict compiler warnings in stubsSergey Sharybin
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-09Smoke (fire): Move spectrum code from C++ (intern/) to C code (BLI)Kévin Dietrich
This change is for a few reasons: - it works with color, and (therefore) will need to be color managed, at some point. This will be much easier to do if the code is closer to the actual color management code (in Blender's core, so to speak). - it has nothing to do with the actual fire simulation, as it is just used to create a lookup table - it can be reused for other purposes (i.e. in Blender internal renderer, if people are interrested in a blackbody node à la Cycles) - cleanup: some functions (`contrain_rgb`, `xyz_to_rgb`) already exist in BLI Reviewers: brecht Reviewed By: brecht Subscribers: brecht Differential Revision: https://developer.blender.org/D1719
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-08Remove raskter librarySergey Sharybin
it's no longer used by any of the parts of Blender.
2016-01-08Fix T46993: UI lag in fullscreen mode on OS X / Intel graphics.Brecht Van Lommel
If anyone finds OS X UI drawing glitches with different graphics cards please report them and I'll add an exception specifically for Intel, but in theory this should work fine for all graphics cards.
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. :)
2016-01-06Cycles: Fix possible buffer overflow in OIIO cache error messageSergey Sharybin
2016-01-06Fix T47120: CPU OSL Cycles crashes blender in latest GITSergey Sharybin
The issue was caused by leaking error messages caused by getting OIIO texture handle for built-in images.
2016-01-06Cycles: Log whch optimizations are used for CPU kernelsSergey Sharybin
Not fully thread-safe, but is rather harmless. Just some messages might be logged several times.
2016-01-06Cycles: Fix stupid mistake which was assining kernel function in a loopSergey Sharybin
2016-01-05Cycles: Fix memory leak in shader graph when bump graph is usedSergey Sharybin
2016-01-05fix compiling cycles after recent gflags / glog shuffleMartijn Berger
2016-01-04Fix wrong linking flags for Libmv testsSergey Sharybin
2016-01-04Libmv: Solve some strict compiler warningsSergey Sharybin
2016-01-04Move Libmv from extern/ to intern/Sergey Sharybin
Logically it is intern library since being mainly developed by 1.5 blender guys.