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-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.
2020-05-27OpenSubdiv: Refactor, move edge map to base folderSergey Sharybin
2020-05-27OpenSubdiv: Refactor creation of topology refinerSergey Sharybin
Consolidate it inside of the topology refiner implementation class, which would allow to store extra data acquired during construction of the OpenSubdiv's object.
2020-05-27OpenSubdiv: Refactor, use C++ allocation for internal classesSergey Sharybin
Only use OBJECT_GUARDED_{NEW. DELETE} for structures which are part of public C-API (and hence can not have new/delete operators overloaded). Could try being brave and override new/delete from under C++ ifdef.
2020-05-27OpenSubdiv: Refactor, move topology refiner factory to topology folderSergey Sharybin
2020-05-27OpenSubdiv: Refactor, move topology refiner to own folderSergey Sharybin
In the future factory will also be moved there.
2020-05-27OpenSubdiv: Refactor, move device specific code to own filesSergey Sharybin
Also, move all device files to own folder. Makes it so checks for device availability are done in a localized place.
2020-05-27Cycles: Upgraded Embree to version 3.10.0Stefan Werner
Enabled round linear hair in Embree. Differential Revision: https://developer.blender.org/D7623
2020-05-27Cleanup: remove unnecessary copy constructorCampbell Barton
Caused deprecated-copy warnings as it wasn't used.
2020-05-26Merge branch 'blender-v2.83-release'Philipp Oeser
2020-05-25Fix T76925: more Cycles OpenCL compile errors with some drivers on LinuxBrecht Van Lommel
2020-05-23Cycles: Improve sampling of area lightsAntony Ryakiotakis
This patch uses the sampling method described in "A Low Distortion Map Between Triangle and Square" by Eric Heitz. The benefit is avoiding sqrt in the calculation, which could be cheaper on some architectures, and the result is more even sampling across the triangle surface. Based on ideas from https://pharr.org/matt/blog/2019/02/27/triangle-sampling-1.html https://pharr.org/matt/blog/2019/03/13/triangle-sampling-1.5.html Reviewed By: Brecht Van Lommel Differential Revision: https://developer.blender.org/D6566
2020-05-22Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-05-22Fix T76925: Cycles OpenCL compile error with some drivers on LinuxBrecht Van Lommel
2020-05-22Wayland: support key repeatChristian Rauch
2020-05-22GHOST: fix GHOST_System::getMilliSeconds()Christian Rauch
This wasn't returning milliseconds, causing problems with key repeat.
2020-05-22Fix missing header building with waylandCampbell Barton
2020-05-20Merge branch 'blender-v2.83-release'Clément Foucault
# Conflicts: # source/blender/draw/engines/eevee/eevee_volumes.c
2020-05-20Cycles: Fix rendering instanced smoke domain.Jacques Lucke
The problem was that Cycles would store a pointer to an object in `DEGObjectIterData->templ_dupli_object`. This pointer was then accessed when the iterator was already freed. Reviewers: brecht Differential Revision: https://developer.blender.org/D7797
2020-05-20Fix Windows build after recent guardedalloc changesBrecht Van Lommel
2020-05-20Cleanup: make guarded memory allocation always thread safeBrecht Van Lommel
Previously this would be enabled when threads were used, but threads are now basically always in use so there is no point. Further, this is only needed for guarded allocation with --debug-memory which is not performance critical.
2020-05-20Cleanup: remove legacy mmap memory allocation for 32 bitBrecht Van Lommel
This helped to go beyond the 4GB limit, but is no longer relevant for 64 bit.
2020-05-19OpenSubdiv: Remove old GPU codeSebastián Barschkis
This code was accidentally reintroduced in e73d7d27dc66.
2020-05-19Merge branch 'blender-v2.83-release'Sebastián Barschkis
2020-05-19Fix T76812: [Mantaflow] Inflow particles not continuousSebastián Barschkis
Makes use of the new particle skipping option introduced in f25a882955cb.
2020-05-19Fix: build error due to missing definitionsJacques Lucke
Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D7787
2020-05-19Merge branch 'blender-v2.83-release'Sebastián Barschkis
2020-05-19Fix T76697: [Mantaflow] mesh generation does not account for some particlesSebastián Barschkis
Adapted mesh generation to account for domains with disabled fractionstoo.
2020-05-19Fix T72889: Cycles camera motion blur not usng more than 2 stepsJosh Belanich
Differential Revision: https://developer.blender.org/D7782