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
2015-06-01Cycles: Number keys 0-3 can be used in interactive mode now to set max bounces.Thomas Dinges
2015-06-01Cycles: Code cleanup, spaces around keyword and braceSergey Sharybin
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-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-17Cycles Standalone: Update help screen.Thomas Dinges
2015-05-14Cycles: Add transformation functions with specified addrspaceSergey Sharybin
This is required for OpenCL prior to 2.0 and those functions will become handy when working on camera/motion blur support in split kernel.
2015-05-11Cycles: check for F16C support with __cpuid, as we do for BMI and BMI2Sv. Lockal
2015-05-10Cycles: And yet another compilation fix after half-float commit for clang.Sv. Lockal
Suggested by Brecht, tested with gcc > 4.4 and Clang
2015-05-10Cycles: fix compilation on 32-bit Windows for half-floatsSv. Lockal
Reported by IRC user HG1.
2015-05-10Cycles: Use native float->half conversion instructions for Haswell CPUs.Sv. Lockal
This makes OCIO viewport color correction a little bit faster (about -0.5s for 100 samples) Also set max half float value to 65504.0 to conform with IEEE 754.
2015-05-05Cycles: Fix for wrong clamp usage in fast mathSergey Sharybin
2015-04-30Fix T44548: Cycles Tube Mapping off / not compatible with BISergey Sharybin
Was a typo in original implementation, probably a result of some code reshuffle happened for optimization reasons.
2015-04-29Cycles: Fix crashes when loading cache created with pre-leaf split buildsSergey Sharybin
2015-04-27Cycles: Use native saturate function for CUDASergey Sharybin
This more a workaround for CUDA optimizer which can't optimize clamp(x, 0, 1) into a single instruction and uses 4 instructions instead. Original patch by @lockal with own modification: Don't make changes outside of the kernel. They don't make any difference anyway and term saturate() has a bit different meaning outside of kernel. This gives around 2% of speedup in Barcelona file, but in more complex shader setups with lots of math nodes with clamping speedup could be much nicer. Subscribers: dingto Projects: #cycles Differential Revision: https://developer.blender.org/D1224
2015-04-10Cycles: Make transform from viewplane a generic utility functionSergey Sharybin
2015-04-06Cycles: de-duplicate fast/approximate erf function calculationSergey Sharybin
Our own implementation is in fact the same performance as in fast_math from OpenShadingLanguage, but implementation from fast_math is using explicit madd function, which increases chance of compiler deciding to use intrinsics.
2015-04-02Cycles: Make guarded allocator happy about strict C++ flagsSergey Sharybin
2015-03-30Cycles: Correction to previous commit: non-msvc compilers also should use ↵Sergey Sharybin
nullptr
2015-03-30Cycles: Fix compilation error with MSVC after recent C++11 changesSergey Sharybin
2015-03-29Optionally use c++11 stuff instead of boost in cycles where possible. We do ↵Martijn Berger
and continue to depend on boost though Reviewers: dingto, sergey Reviewed By: sergey Subscribers: #cycles Differential Revision: https://developer.blender.org/D1185
2015-03-27Cycles: Code cleanup, spaces around keywordsSergey Sharybin
This inconsistency drove me totally crazy, it's really confusing when it's inconsistent especially when you work on both Cycles and Blender sides. Shouldn;t cause merge PITA, it's whitespace changes only, Git should be able to merge it nicely.
2015-03-27Cycles: Code cleanup, prepare for strict C++ flagsSergey Sharybin
2015-03-13Initial compilation support with C++11 featureset enabledSergey Sharybin
This commit makes some preliminary fixes and tweaks aimed to make blender compilable with C++11 feature set. This includes: - Build system attribute to enable C++11 featureset. It's for sure default OFF, but easy to enable to have a play around with it and make sure all the stuff is compilable before we go C++11 for real. - Changes in Compositor to use non-named cl_int structure fields. This is because __STRICT_ANSI__ is defined by default by GCC and OpenCL does not use named fields in this case. - Changes to TYPE_CHECK() related on lack of typeof() in C++11 This uses decltype() instead with some trickery to make sure returned type is not a reference. - Changes for auto_ptr in Freestyle This actually conditionally switches between auto_ptr and unique_ptr since auto_ptr is deprecated in C++11. Seems to be not strictly needed but still nice to be ready for such an update anyway/ This all based on changes form depsgraph_refactor branch apart from the weird changes which were made in order to support MinGW compilation. Those parts of change would need to be carefully reviewed again after official move to gcc49 in MinGW. Tested on Linux with GCC-4.7 and Clang-3.5, other platforms are not tested and likely needs some more tweaks. Reviewers: campbellbarton, juicyfruit, mont29, lukastoenne, psy-fi, kjym3 Differential Revision: https://developer.blender.org/D1089
2015-03-07Cycles: add better specializations for SSE shuffle function and few more ↵Sv. Lockal
wrappers.
2015-03-07Fix T41066: An actual fix for curve intersection on FMA-enabled CPUsSv. Lockal
2015-02-19Cycles: Use size_t for aligned allocatorSergey Sharybin
Seems it got changes by accident to int during guarded allocation work, causing bad memory allocations.
2015-02-19Cycles: Make sphere and tube image mapping friendly with OpenCLSergey Sharybin
OpenCL doesn't let you to get address of vector components, which is kinda annoying. On the other hand, maybe now compiler will have more chances to optimize something out.
2015-02-19Cycles: Make util_math_fast.h compatible with OpenCLSergey Sharybin
2015-02-18Cycles: Make aligned allocation to respect WITH_BLENDER_GUARDEDALLOCSergey Sharybin
Title pretty says it all actually. Can only briefly mention that we're indeed entering that state when after applying some WIP patches having much fuller statistics about memory usage would help giving exact memory benefit.
2015-02-18CMake: picky style editCampbell Barton
'cmake_consistency_check.py' relies on this formattng.
2015-02-18Cleanup: Remove support for Boost filesystem 2.Thomas Dinges
This is deprecated since Boost 1.48.
2015-02-16Cycles: Correction for C++11 compilation error after recent vector changesSergey Sharybin
2015-02-15Cycles: Hopefully compilation error fix for OSXSergey Sharybin
2015-02-15Cycles: Add ifdef switch to use blender's guardedalloc for vector allocationSergey Sharybin
It's actually a bad level call, but it's inside ifdef block and disabled by default and only intended to be used for development purposes. Main idea of this change is to combine statistics coming from Cycles and Blender during scene synchronization step, to see if further changes are actually reducing memory footprint.
2015-02-15Cycles: Add utility method to vector which totally frees memory used the vectorSergey Sharybin
The method is called vector::free_memory(). Use with care since it'll invalidate all the pointers to vector memory, all iterators and so on. Currently unused, but might become handy when clearing unused data.
2015-02-15Cycles: Implement guarded allocator for STL classesSergey Sharybin
The commit implements a guarded allocator which can be used by STL classes such as vectors, maps and so on. This allocator will keep track of current and peak memory usage which then can be queried. New code for allocator is only active when building Cycles with debug flag (WITH_CYCLES_DEBUG) and doesn't distort regular builds too much. Additionally now we're using own subclass of std::vector which allows us to implement shrink_to_fit() method which would ensure capacity of the vector is as big as it should be (without this making vector smaller will still use all previous memory allocated).
2015-02-15Cycles: Replace own aligned allocator with system oneSergey Sharybin
This replaces our own implementation of aligned malloc with system calls, which depends on which operation system you're on. This is probably really minor noticeable change, but in the same time it might reduce amount of wasted memory.
2015-02-14Cleanup: Comment block for sse helpers.Thomas Dinges
2015-02-13Fix Cycles compilation on x86, without SSE.Thomas Dinges
2015-02-11Cleanup: Remove unused Cycles cpuid code.Thomas Dinges
2015-02-10Cycles: Control CPU capabilities via environment variablesSergey Sharybin
Purely developers-only feature which allows to disable some of the CPU capabilities. This way it's easier to test different kernels on the same machine.
2015-02-10Cycles: Add utility functions to print ssef, ssei and ssebSergey Sharybin
Nothing special, just really handy for debugging.
2015-02-06Cycles: Some more constants fixes for fast mathSergey Sharybin
2015-02-06Cycles: Use proper constant name for 1/pi in fast mathSergey Sharybin
2015-02-02Cycles: Allow paths customization via environment variablesSergey Sharybin
This is for development and test environment setup only, not for regular users usage hence no mentioning in the man page needed.
2015-01-30Cycles: Add fast math function moduleSergey Sharybin
It is based on fmath.h from OIIO and could be used to give some speedup in areas where absolute accuracy is not so critical.
2015-01-22Cycles: Fix compilation error with some compilersSergey Sharybin
Not sure why this was not visible previously, but the change is logical anyway.
2015-01-22Fix T43120: Cycles mapping node rotation order is different from viewportSergey Sharybin
Root of the issue goes to the fact that since the very beginning Cycles was using ZYX euler rotation for mapping shader node but blender was always using XYZ euler rotation. This commit switches Cycles to use XYZ euler order and adds versioning code to preserve backward compatibility. There was no really nice solution here because either we're ending up with versioning code or we'll need to deal with all sort of exceptions from blender side in order to support ZYX order for the mapping node. The latest one is also creepy from the other render engines points of view -- that might break compatibility with existing bindings or introduce some extra headache for them in the future. This could also become a PITA for us with need of supporting all sort of weird and wonderful exceptions in the refactored viewport project. NOTE: This commit breaks forward compatibility, meaning opening new files in older blender might not give proper result if Mapping node was used. Also, libraries are to be re-saved separately from the scene file, otherwise versioning code for them wouldn't run if scene file was re-saved with new version of blender. Reviewers: brecht, juicyfruit, campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D973
2015-01-21Cycles: Support tube projection for imagesSergey Sharybin
This way Cycles finally becomes feature-full on image projections compared to Blender Internal and Gooseberry Project Team could finally finish the movie.
2015-01-19Cycles: Avoid crash in statistics when canceling BVH buildSergey Sharybin
Also add missing render_time initialization in progress.