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
2017-07-05Merge branch 'master' into blender2.8Luca Rood
2017-07-05Cycles: Fix compilation error when building without Glog and no C++11Sergey Sharybin
2017-07-03Merge branch 'master' into blender2.8Dalai Felinto
2017-06-30Cycles: Use float constants instead of doubleMai Lavelle
2017-06-16Merge branch 'master' into blender2.8Sergey Sharybin
2017-06-16Cycles: Fix race condition happening in progress utilitySergey Sharybin
This is not enough to mutex-guard modification code of integer values, since this operation is NOT atomic. This is not even safe for a single byte data types. For now guarded the getter functions, similar to other functions in this module. Ideally we want to switch modification to an atomic operations, so we wouldn't need any locks in the getters.
2017-06-12Merge branch 'master' into blender2.8Sergey Sharybin
2017-06-10Cycles: Add atomic decrement functions to util_atomic.hMai Lavelle
2017-06-09Merge branch 'master' into blender2.8Campbell Barton
2017-06-08Cycles: Don't leave multiple spaces in the device nameSergey Sharybin
2017-05-25Merge branch 'master' into blender2.8Julian Eisel
2017-05-24Cycles: Use falltrhough attribute to help catching missing break statementsSergey Sharybin
2017-05-22Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenloader/intern/versioning_270.c
2017-05-20Cycles: Cleanup, style and unused argumentsSergey Sharybin
- Some arguments were inapproriatry tagged as unused using (void)foo semantic. Only use such semantic in tricky casses, when something needs to be ignored in release builds or something is dependent on tricky ifndef policy. For rest of the cases just use void foo(int /bar*/) semantic, which ensures variable is not used. Solves confusion and code running out of sync with later development. - Used proper unused semantic to some arguments. - Added braces to make code easier to follow, tricky indentation with ifdef, uh.
2017-05-20Merge branch 'master' into blender2.8Campbell Barton
2017-05-20Fix T51560: Black pixels on a denoising renderLukas Stockner
Once again, numerical instabilities causing the Cholesky decomposition to fail. However, further increasing the diagonal correction just because of a few pixels in very specific scenes and settings seems unjustified. Therefore, this commit simply falls back to the basic NLM-filtered pixel if the more advanced model fails.
2017-05-19Cycles: Cleanup, always use parenthesisSergey Sharybin
Easier to read/follow, and more robust for the further changes.
2017-05-19Cycles: Cleanup, indentation in preprocessorSergey Sharybin
2017-05-19\0;115;0cCycles: Cleanup, use ccl_restrict instead of ccl_restrict_ptrSergey Sharybin
There were following issues with ccl_restrict_ptr: - We already had ccl_restrict for all platforms. - It was secretly adding `const` qualifier to the declaration, which is quite weird since non-const pointer can also be declared as restricted. - We never in Blender are using foo_ptr or FooPtr type definitions, so not sure why we should introduce such a thing here. - It is absolutely wrong from semantic point of view to put pointer into the restrict macro -- const is a part of type, not part of hint for compiler that some pointer is never aliased.
2017-05-19Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenloader/intern/versioning_270.c source/blender/depsgraph/intern/depsgraph_tag.cc source/blender/editors/mask/mask_draw.c
2017-05-19Fix T51555: Cycles tile count is incorrect when denoising is enabledLukas Stockner
Now rendered and denoised tiles are counted and displayed separately.
2017-05-17Cycles: Optimize expansion of headers in the sourceSergey Sharybin
Use smarter check of where the file is coming from instead of attempting to replace same source twice with different settings. Brings down processing time from 3.6sec to 1.8sec.
2017-05-11Merge branch 'master' into blender2.8Campbell Barton
2017-05-11Cycles: Fix occasional black pixels from denoising with excessive radiiLukas Stockner
Numerical inaccuracies would cause the XtWX matrix to be no longer positive-semidefinite, which in turn caused the LSQ solver to fail.
2017-05-08Merge branch 'master' into blender2.8Sergey Sharybin
2017-05-08Cycles: Fix compilation error with gcc-6.3.0 and debug modeSergey Sharybin
2017-05-08Merge branch 'master' into blender2.8Julian Eisel
2017-05-07[Cycles] Fix math problems in safe_logflazydodo
log(0) is undefined and should not have been included log(1) == 0, dividing by zero is not recommended
2017-05-07Cycles: Implement denoising option for reducing noise in the rendered imageLukas Stockner
This commit contains the first part of the new Cycles denoising option, which filters the resulting image using information gathered during rendering to get rid of noise while preserving visual features as well as possible. To use the option, enable it in the render layer options. The default settings fit a wide range of scenes, but the user can tweak individual settings to control the tradeoff between a noise-free image, image details, and calculation time. Note that the denoiser may still change in the future and that some features are not implemented yet. The most important missing feature is animation denoising, which uses information from multiple frames at once to produce a flicker-free and smoother result. These features will be added in the future. Finally, thanks to all the people who supported this project: - Google (through the GSoC) and Theory Studios for sponsoring the development - The authors of the papers I used for implementing the denoiser (more details on them will be included in the technical docs) - The other Cycles devs for feedback on the code, especially Sergey for mentoring the GSoC project and Brecht for the code review! - And of course the users who helped with testing, reported bugs and things that could and/or should work better!
2017-05-05Merge branch 'master' into blender2.8Campbell Barton
2017-05-04Typo: 'Signle program' -> 'Single program'Pablo Vazquez
2017-05-04Merge remote-tracking branch 'origin/master' into blender2.8Dalai Felinto
2017-05-03Fix Cycles build on WindowsDalai Felinto
2017-05-03Merge branch 'master' into blender2.8Lukas Stockner
2017-05-03Cycles: Fix OpenCL compilation failure after recent color changesSergey Sharybin
It is really confusing to have some functions available in some devices and not on another devices.
2017-05-03Cycles: Add utility function to convert float4 color from srgb to linearSergey Sharybin
It will use SSE2 optimized version when is possible.
2017-04-28Merge branch 'master' into blender2.8Campbell Barton
2017-04-28Cycles: Use relative path for #line directivesSergey Sharybin
This way moving Blender bundle around doesn't re-trigger kernels compilation.
2017-04-28Cycles: Correct comment after previous commitSergey Sharybin
2017-04-28Cycles: Lower default severity level to ERRORSergey Sharybin
2017-04-28Merge branch 'master' into blender2.8Sybren A. Stüvel
2017-04-28Cycles: Cleanup, indentaiton and trailing whitespace and wrappingSergey Sharybin
2017-04-27Merge branch 'master' into blender2.8Campbell Barton
2017-04-27Cleanup: Some style and code tweaks to Image Code after changes.Thomas Dinges
Whitespace and order of switch/case etc. Let's try to stick to float4/byte4/half4/float/byte/half order as defined in "ImageDataType".
2017-04-27Unlimited number of textures for CyclesStefan Werner
This patch allows for an unlimited number of textures in Cycles where the hardware allows. It replaces a number static arrays with dynamic arrays and changes the way the flat_slot indices are calculated. Eventually, I'd like to get to a point where there are only flat slots left and textures off all kinds are stored in a single array. Note that the arrays in DeviceScene are changed from containing device_vector<T> objects to device_vector<T>* pointers. Ideally, I'd like to store objects, but dynamic resizing of a std:vector in pre-C++11 calls the copy constructor, which for a good reason is not implemented for device_vector. Once we require C++11 for Cycles builds, we can implement a move constructor for device_vector and store objects again. The limits for CUDA Fermi hardware still apply. Reviewers: tod_baudais, InsigMathK, dingto, #cycles Reviewed By: dingto, #cycles Subscribers: dingto, smellslikedonkey Differential Revision: https://developer.blender.org/D2650
2017-04-26Cycles: Change OpenCL split kernel to use single program by defaultMai Lavelle
Single program builds twice as fast as multi programs, so its better for users to have it as the default.
2017-04-26Cycles: Change OpenCL split kernel to use single program by defaultMai Lavelle
Single program builds twice as fast as multi programs, so its better for users to have it as the default.
2017-04-25Merge branch 'master' into blender2.8Sybren A. Stüvel
2017-04-25Cycles: Fix strict compiler flagsSergey Sharybin
2017-04-25Cycles: Split vectorized math utilities to a dedicated filesSergey Sharybin
This file was even a bigger mess than vectorized types header, cleaning it up to make it easier to maintain this files and extend further.