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-12-25Cleanup: SubsurfaceScatteringNode is a subclass of BsdfNode, no need to set ↵Thomas Dinges
the value again.
2015-12-24Cycles: Fix Tile access in the TileManager for viewport renderingLukas Stockner
- When rendering in the Viewport, next_tile is sometimes called after a reset has been performed, but before new tiles were generated. In that case, the tile list would be invalid, causing Blender to crash randomly. - When generating new tiles, the TileManager would not clear the tile lists before re-generating them, leading to some tiles being skipped during viewport rendering. - When popping the next tile from a tile list, a reference to the just-deleted object would be returned, now the object is copied before deleting it.
2015-12-23Cycles: Implement constant fold for the ConvertNode.Thomas Dinges
This way socket type conversions (such as color to float, or float to vector) do not stop the folding process. Example: http://www.pasteall.org/pic/show.php?id=96803 (selected nodes are folded).
2015-12-23Cycles: Sort tiles in rendering order at construction timeLukas Stockner
This commit modifies the TileManager to sort render tiles once after tiling the image, instead of searching the next tile every time a new tile is acquired by a device. This makes acquiring a tile run in constant time, therefore the render time is linear w.r.t. the amount of tiles, instead of the quadratic dependency before. Furthermore, each (logical) device now has its own Tile list, which makes acquiring a tile for a specific device easier. Also, some code in the TileManager was deduplicated. Reviewers: dingto, sergey Differential Revision: https://developer.blender.org/D1684
2015-12-22Cleanup: Remove comments, now that we have the dedicated constant fold ↵Thomas Dinges
functions, it's obvious.
2015-12-22Cycles: Constant fold for the Gamma Node.Thomas Dinges
2015-12-21Cleanup: warnings (msvc)Campbell Barton
Part of patch D1670 by @LazyDodo
2015-12-18OpenSubdiv: Avoid having bad-level callSergey Sharybin
This is always asking for problems. Additionally, that call was leading to OpenGL calls happening from threads.
2015-12-18Cycles: Log OSL texture system statistics after finishing the renderSergey Sharybin
2015-12-18Cycles: Implement proper texture derivatives evaluation for OSLSergey Sharybin
This was an oldie TODO since initial work on newer OSL/OIIO support. Now we should be ready for the libraries bump.
2015-12-16BGE clean up: use float version of trigonometric functionsJorge Bernal
2015-12-15Cycles: Fix wrong assert failure happening after recent de-duplicateSergey Sharybin
This is actually intended behavior to return NULL when the socket is not found. It's used in certain BSDF nodes to query whether some inputs exists or not. Perhaps we can be more explicit here and have dedicated logic to query socket existance and keep assert in place. In any case, even if we lost assert() for the constant fold now it's still somewhat better than duplicated code. Perhaps.
2015-12-15Cycles: De-duplicate utility functions in ccl::GraphSergey Sharybin
2015-12-13Fix: unreported crash with misconfigured nvidia opengl driversInes Almeida
2015-12-13Moto Clean-up: double-promotion warningsJorge Bernal
2015-12-13BGE: Use float as default instead of double in Moto library.Porteries Tristan
Use float in moto instead of double for MT_Scalar. This switch allow future optimization like SSE. Additionally, it changes the OpenGL calls to float versions as they are very bad with doubles. Reviewers: campbellbarton, moguri, lordloki Reviewed By: lordloki Subscribers: brecht, lordloki Differential Revision: https://developer.blender.org/D1610
2015-12-11Memutil: remove some unused code.Brecht Van Lommel
2015-12-11IK Solver: remove unused and outdated test code.Brecht Van Lommel
2015-12-11Moto: remove some unused code.Brecht Van Lommel
2015-12-11IK Solver: replace TNT math library with Eigen.Brecht Van Lommel
Performance is about the same or slightly better for typical IK chains. In extreme cases with many bones and multiple targets, of which some are unreachable, I've seen 2x speedups.
2015-12-11IK solver: replace Moto math library with Eigen.Brecht Van Lommel
2015-12-10Cleanup: quiet warningCampbell Barton
2015-12-10Eigen: fold remaining OpenNL code into intern/eigen.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D1662
2015-12-10Eigen: move C API into intern/eigen.Brecht Van Lommel
2015-12-09Cycles: Comment out unused argumentsSergey Sharybin
2015-12-09remove a debug printfMike Erwin
2015-12-08OpenGL: use sized texture internal formatsMike Erwin
Maybe this is pedantic but I read it’s best to explicitly set the desired component size. Also append “_ARB” to float texture formats since those need an extension in GL 2.1.
2015-12-07Add support for compiling the cuda kernel on the Nvidia Jetson TX1Martijn Berger
2015-12-07OpenSubdiv: refine OpenGL version & extension checksMike Erwin
Use new GPU_legacy_support() function. Determine GLSL version once instead of per shader. For Texture Buffers, allow ARB or EXT version of the extension. Either one will do.
2015-12-07OpenGL: request version 2.1 when creating context on WindowsMike Erwin
In practice this gives us a context that is *compatible* with GL 2.1. On my machine it gives a GL 3.3 or 4.3 compatibility profile context, depending on graphics card installed. Also fixed enum for core profile (not used yet). Also added option for GL 3.2 compatibility profile. This will be useful during Blender 2.8 development, until we are able to use the core profile. On my machine this gives exactly a GL 3.2 compatibility profile context, not 3.3 or 4.
2015-12-07OpenSubdiv: disable TF on lower GL versions. Fixes T46794Mike Erwin
My previous edit to this check was too lax. OSD's shader for the Transform Feedback evaluator declares itself #version 410 so disable the feature if user's GL < 4.1.
2015-12-07Cycles: Fold Value and RGB node as well.Thomas Dinges
This way, connecting Value or RGB node to e.g. a Math node will still allow folding. Note: The same should be done for the ConvertNode, but I leave that for another day.
2015-12-05Cycles: Implement extrapolation for RGB curvesSergey Sharybin
Previously RGB Curves node will clamp input to 0..1 which is rather useless when one wants to use HDR image textures and do bit of correction on them. Now kernel code supports extrapolation of baked LUT based on first/last two table points and performs linear extrapolation. The only tricky part is to guess the range to bake the LUT for. Currently it's using simple approach -- minmax of the input curves. While this behaves ok for the simple cases it's easy to trick the system up causing incorrect results. Not sure we can solve those issues in a general case and since the new code is giving more expected results it's not that bad actually. In the worst case artist migh always create explicit point to make sure LUT is created for the needed HDR range. Reviewers: brecht, juicyfruit Subscribers: sebastian_k Differential Revision: https://developer.blender.org/D1658
2015-12-05Fix OSL shaders building with some versions of that lib.Bastien Montagne
This must have happened months ago, but as I did not `make clean` any build folder since then, so only noted that today. Issue is same as dirty patch we have to apply to ODL sources before building it in install_deps.sh - for some mysterious reason, it has become impossible to compoile .osl files into .oso ones without giving explicit output file name (otherwise it just produces `.oso` file - utterly stupid and useless). We could probably fix that in own OSL source, but think being explicit here does not hurt anyway, so... Let's go the easy way.
2015-12-02Cycles: Avoid recursion when doing constant foldSergey Sharybin
This reduces stress on the the stack memory which could be really handy on certain operation systems which applies strict limits on the stack. Reviewers: brecht, juicyfruit, dingto Reviewed By: brecht, juicyfruit, dingto Differential Revision: https://developer.blender.org/D1656
2015-12-02Cycles: Fix SSS object not properly reflected in glossy object with indirect ↵Sergey Sharybin
clamping This fixes remained issues reported in T46908.
2015-12-02Fix T46815: Changing playback setting makes blender crashJörg Müller
Copied the fix from upstream audaspace.
2015-12-02Cleanup: warnings & spellingCampbell Barton
2015-12-02Cycles: Fix wrong SSS intersection refinement when this option is disabledSergey Sharybin
The code is disabled by default, but we'd better keep it all correct.
2015-12-02Cycles: Fix wrong SSS on scaled instanced objectsSergey Sharybin
Was a mistake on searching refined position form ray and hit distance. Remember kids: SSS distance is in the object space!
2015-12-02Cycles: Remove TODO, it is possible there'll be more intersections recordedSergey Sharybin
It's just only few of them will be stored in the intersection array, nothing wrong with that what's so ever.
2015-12-01Cleanup: Remove some more code for BVH cache. I missed that somehow.Thomas Dinges
2015-12-01Fix T46906: Cycles syntax error while compiling OpenCL kernelsLukas Stockner
The safe normalization was using a float as a condition, now the intended non-zero test is explicit.
2015-12-01Fix T46898: OpenCL Fails to compile after recent SSS changesSergey Sharybin
2015-11-30Cleanup: warning w/ unknown defineCampbell Barton
2015-11-28Cycles: Avoid having two consequence getenv() callsSergey Sharybin
2015-11-28Cycles: Fix wrong volume stack after SSS bounceSergey Sharybin
Was introduced by a recent fixes, now it should be all correct and additionally it solves the TODO mentioned in the code.
2015-11-28Cycles: Fix wrong original ray used for SSS bakingSergey Sharybin
Also de-duplicated some code by moving to an utility function.
2015-11-28Cycles: Set of fixes for delayed SSS ray tracingSergey Sharybin
There were multiple issues which are solved now: - It was possible that ray wouldn't be bounced off the BSSRDF, for example when PDF or shader eval is zero. In this case PathState might have been left in pre-bounced state which would have been gave incorrect shading results. This is solved by having separate PathState for each of the hits. - Path radiance summing wasn't happening correct as well, indirect rays were using wrong path radiance in the case when there were more than one hit recorded. This is now using a bit trickier state machine which calculates path radiance for just SSS (both direct and indirect) and then sums it back to the final radiance. - Previous commit wasn't totally correct either and was an induced bug due to wrong path state left from the "un-happened" ray bounce. There should be no special case happening here, BSSRDFs will be replaced with diffuse ones due to PATH_RAY_DIFFUSE_ANCESTOR flag. - Merged back codebases for "delayed" and "immediate" indirect SSS ray tracing, hopefully making it easier to maintain the codebase. Sure this changes brings memory usage back by about 4-5%, but overall it's still about 2x memory reduction for the experimental kernel here. Thanks Brecht for the review!
2015-11-28Cycles: Fallback to diffuse BSDF for the indirect SSS rays when BSSRDF is hitSergey Sharybin
This is actually how it was intended to work, just didn't notice it wasn't really happening in the main ray loop. Solves some memory issues reported in T46880.