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
2020-06-05Cycles: Enable OptiX on all Maxwell+ GPUsPatrick Mours
2020-06-05Cleanup: Strict compiler warningSergey Sharybin
2020-06-04Cleanup: remove unused flagBrecht Van Lommel
2020-06-04Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-06-03Fix build error for Cycles standaloneBrecht Van Lommel
This does not affect the Blender release. Ref D7915
2020-06-03Cleanup: clang format, warningCampbell Barton
2020-06-02Fix T63588: Cycles unnecessarily updates background importance sampling mapTautvydas Andrikys
With modifications by Brecht to solve T77273, crash enabling portal lights.
2020-06-02Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-06-02Revert "Fix T63588: Cycles unnecessarily updates background importance ↵Brecht Van Lommel
sampling map" This reverts commit 33ce0cb5a1edea4b5aaa7d37f6ad74b3b35b95f8. Fix T77273: crash enabling portal lights. The optimization for background updates can be added back later for 2.90 and 2.83.1.
2020-06-02OCIO: GLSL: Avoid undefined behaviorClément Foucault
Set ubo binding after shaderinterface creation as GPU_shaderinterface_create will call glUniformBlockBinding.
2020-06-02GPU: ShaderInterface: Refactor to setup all uniform at creation timeClément Foucault
This remove the complexity of queriying the locations at runtime and allows for more performance and upfront binding specifications. The benefit of doing everything at creation time is that we can assign binding points in a predictable order which is going to be somewhat the same for every similar shader. This also rewrite GPU_vertformat_from_shader to not use shaderface. This is to keep the shaderface simple. If it becomes necessary to not query the shader after creation (i.e: vulkan?) we could just create the vert format in advance at compilation for PyGPU shaders. Reviewed By: brecht Differential Revision: https://developer.blender.org/D7879
2020-06-02UI: rename Cycles point light Size to Radius, for consistency and clarityJohan Walles
Differential Revision: https://developer.blender.org/D7888
2020-06-02Cycles: add missing light angle for distant lights in XML readingBrecht Van Lommel
Contributed by howetuft. Differential Revision: https://developer.blender.org/D7891
2020-06-02Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-06-02Cycles: Added shadow terminator offset parameter.Stefan Werner
A new user parameter can be used to shift the shadow terminator towards the light source. With it, one can hide some of the artifacts that appear on coarse meshes with smooth shading. Note that this technique is not engery conserving. This is based on the work by the Appleseed renderer team. Differential Revision: https://developer.blender.org/D7634
2020-06-02Fix build error in Cycles standalone without guarded allocatorBrecht Van Lommel
Solution suggested by howetuft. Differential Revision: https://developer.blender.org/D7892
2020-06-02Fix T77106: Cycles crash baking with AO shader nodeGarry R. Osgood
Differential Revision: https://developer.blender.org/D7890
2020-06-02Cycles: change perspective depth pass to be more standardBrecht Van Lommel
Now it matches Eevee, OpenGL and other renderers. Panoramic camera depth passes are unchanged, and are still distance from the camera center.
2020-06-02Fix NaN in Cycles environment texture importance sampling in some scenesBrecht Van Lommel
Cause identified by Ray Molenkamp.
2020-05-30GHOST/wayland: use 'is_dialog' flag to prevent drawing into same windowChristian Rauch
2020-05-29Cleanup: spelling, correct reference to 'Mesh.mcol'Campbell Barton
2020-05-28Merge branch 'blender-v2.83-release'Clément Foucault
2020-05-27Fix T77109: Cycles viewport render crash after object add and undoBrecht Van Lommel
2020-05-27Merge branch 'blender-v2.83-release'Patrick Mours
2020-05-27Fix T76947: Optix realtime denoiser progressively reduces brightness of very ↵Patrick Mours
bright objects The input data to the OptiX denoiser was clamped to 0..10000 as required, but it could easily exceed that range with a high number of samples (since the data contains the overall sum). To fix that, divide by the number of samples first and multiply it back in after the denoiser ran.
2020-05-27OpenSubdiv: Only store edges topology for non-smooth edgesSergey Sharybin
This change makes it so vertices of edge are only stored when edge has non-zero crease. This allows to lower memory footprint of 1.5M faces from 78 MiB to 54 MiB in the case all creases are zero. Meshes with crease are more hard to predict due to array-based storage, so it all depends on index of edge with crease. Worst case (all edges are creased) still stays at 78 MiB.
2020-05-27OpenSubdiv: Allow any order of edge topology/sharpness assignmentSergey Sharybin
Makes it possible to set adjacent vertices after edge sharpness. Initially it seemed like useful sanity check, but with time it became rather a burden.
2020-05-27OpenSubdiv: Optimize faces storage in mesh topologySergey Sharybin
Avoid per-face pointer and allocation: store everything as continuous arrays. Memory footprint for 1.5M faces: - Theoretical worst case (all vertices and edges have crease) memory goes down from 114 MiB to 96 MiB (15% improvement). This case is not currently achievable since Blender does not expose vertex crease yet. - Current real life worst case (all edges have crease) memory goes down from 108 MiB to 90 MiB (17% improvement). - Best case (no creases at all) memory goes down from 96 MiB to 78 MiB (19% improvement).
2020-05-27OpenSubdiv: Add regression tests for mesh topologySergey Sharybin
While this looks trivial it already allowed to catch issues in one of previous attempt to optimize memory usage. It will totally be useful for an upcoming refactor of face topology storage.
2020-05-27OpenSubdiv: Hide individual topology elementsSergey Sharybin
Move all API to happen via MeshTopology. This is a preparation for an upcoming memory optimization.
2020-05-27OpenSubdiv: Cleanup, remove unused codeSergey Sharybin
There is no need in edge map anymore.
2020-05-27OpenSubdiv: Add TODO avoid checking face-varying topology for equalitySergey Sharybin
2020-05-27OpenSubdiv: Move preliminary geometry counters check to mesh topologySergey Sharybin
2020-05-27OpenSubdiv: Keep explicit storage of base mesh facesSergey Sharybin
Allows to perform comparison by doing linear comparison of indices. Before cyclic match was used to deal with possibly changed winding from OpenSubdiv side. Speeds up comparison (and hence improves FPS), makes code more reliable nut uses more memory.
2020-05-27OpenSubdiv: Compare edge topologySergey Sharybin
This change makes it so topology refiner comparison will check vertices of all existing/provided edges. The initial claim that due to manifold nature of mesh there is no need in "deep" edges check was wrong: some areas might only provide edges with non-zero creases. So if crease of one edge goes changes from 1.0 to 0.0 and crease of other edge goes from 0.0 to 1.0 the old comparison code would not have caught it.
2020-05-27OpenSubdiv: Refactor, move mesh topology comparison to own fileSergey Sharybin
Makes it easier to follow and extend.
2020-05-27OpenSubdiv: Use explicit storage for edge sharpnessSergey Sharybin
Similar to previous change in vertex sharpness, explicitly store value provided by the converter. Allows to avoid rather fragile check for boundary edges. Also allows to avoid need in constructing edge map. This lowers memory footprint of the comparison process and avoids memory allocations during the comparison (which is an extra benefit from the performance point of view).
2020-05-27OpenSubdiv: Allow use of regular ordered mapSergey Sharybin
2020-05-27OpenSubdiv: Refactor, move comparison to own fileSergey Sharybin
2020-05-27OpenSubdiv: Compare sharpness based on converterSergey Sharybin
This change starts the transition of topology refiner comparison to compare actual values given by the converter, which will not be affected by the refinement or face winding synchronization steps. Currently is only implemented for vertex sharpness, but will be extended further as followup development. Fixes T71908: Subdiv: Incorrect topology comparison, leading to poor performance
2020-05-27OpenSubdiv: Add explicit storage for mesh topologySergey Sharybin
The idea is to use this explicit storage for topology comparison rather than using base level. While this will have memory overhead it allows to simplify comparison of such things as: - Vertex sharpness (where base level from topology refiner will have it refined, meaning it will be different from what application requested for non-manifold and corner vertices). - It will allow to simplify face-vertices comparison, where currently O(N^2) algorithm is used due to possible difference in face winding. - It will also allow to avoid comparison-time allocation of edge map. Currently no functional changes, just preparing for development which will happen next.
2020-05-27OpenSubdiv: Add move semantic to the namespaceSergey Sharybin
2020-05-27OpenSubdiv: Refactor, pass higher level object through comparisonSergey Sharybin
2020-05-27OpenSubdiv: Refactor, move utils to baseSergey Sharybin
Also split them across utilities and types.
2020-05-27OpenSubdiv: Refactor, move base C-API file to base folderSergey Sharybin
2020-05-27OpenSubdiv: Cleanup, use C++ range based loopSergey Sharybin
Avoid indirection via define.
2020-05-27OpenSubdiv: Cleanup, move utility function to base type conversionSergey Sharybin
2020-05-27OpenSubdiv: Refactor, move type conversion to base fodlerSergey Sharybin
2020-05-27OpenSubdiv: Refactor, move evaluator to own folderSergey Sharybin
2020-05-27OpenSubdiv: Completely disable topology verificationSergey Sharybin
Previously it was enabled for debug builds, now it is to be enabled explicitly. The reason for this is to reduce overhead when debugging other areas which might involve subdivision surface. When conversion is to be debugged set this manually in the code.