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
2019-12-05Fix T63766: Multiresolution behavior when using crease edgeSergey Sharybin
Switch to Gregory basis patches which are tangent continuous across their boundaries. Originally we've used BSpline basis patches to be more compatible with the old subdivision code, but a lot of things changed anyway.
2019-10-30OpenSubdiv: Initial implementation of batched evaluationSergey Sharybin
The idea is to give multiple coordinates to evaluator and evaluate them all at once, avoiding any possible overhead.
2019-10-30OpenSubdiv: Make internal evaluator aware of batched evaluationSergey Sharybin
Allows to pass multiple patch coordinates for evaluation.
2019-10-30OpenSubdiv: Use more generic access to patch coordinatesSergey Sharybin
Saves another unnecessary temporary data copy during evaluation.
2019-10-30OpenSubdiv: Cleanup, remove old compatibility codeSergey Sharybin
Consider that all builders have face-varying evaluation now.
2019-10-30OpenSubdiv: Cleanup, remove unused classSergey Sharybin
2019-10-30OpenSubdiv: Avoid unnecessary memory copiesSergey Sharybin
Make evaluator itself to write directly to the output buffer. Brings unmeasurable speedup and makes it possible to simplify some buffer class logic.
2019-10-30OpenSubdiv: Use smaller buffer sizes and stridesSergey Sharybin
We currently don't support interleaved varying data, so can make some buffer smaller.
2019-10-30OpenSubdiv: Cleanup, remove unused PatchBuffer classSergey Sharybin
2019-10-30OpenSubdiv: Cleanup, remove unused evaluator memberSergey Sharybin
2019-10-30OpenSubdiv: Cleanup, remove unused static methodsSergey Sharybin
2019-06-23Fix T66022: crash adding subdivision surface modifier to some meshesBrecht Van Lommel
This reverts commit 7c9f64d00835: "Fix T63766: Multiresolution behavior when using crease edge"
2019-06-21Fix T63766: Multiresolution behavior when using crease edgeSergey Sharybin
Switch to Gregory basis patches which are tangent continuous across their boundaries. Originally we've used BSpline basis patches to be more compatible with the old subdivision code, but a lot of things changed anyway.
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-01-23Cleanup: Spelling in commentSergey Sharybin
2019-01-22Cleanup: space after template bracketSergey Sharybin
2019-01-16OpenSubdiv: Use own utility headerSergey Sharybin
Replaces direct access to std.
2019-01-07OpenSundiv: Simplify tweaking of shared stencil/patch settingsSergey Sharybin
2018-09-26OpenSubdiv: Cleanup, the TODO was actually solvedSergey Sharybin
2018-09-04OpenSubdiv: Disable varying elements interpolationSergey Sharybin
We currently don't use those. Skipping creation of stencils for them gives about 7% speedup of evaluation creation.
2018-09-04Cleanup: Typo in commentSergey Sharybin
2018-08-02Subsurf: Better crease which represents sharp edgesSergey Sharybin
Enabled infinite sharp patches for topology refiner and evaluator, which allows to have sharp edge at first subdivision level. Also tweaked crease export from Blender to OpenSubdiv to have more artistic control over the whole 0..1 range.
2018-08-01Subsurf: Evaluate all UV layersSergey Sharybin
Before that it was only first UV layer which was properly evaluated, the rest were ignored. Now all layers are being properly handled.
2018-07-16Fix compilation with older OpenSubdiv librariesSergey Sharybin
Only fixes compilation error, the functionality will be limited. Currently we don't care that much, since all the work is done in the branch anyway. Later on when we'll know which fixes we need to apply on top of latest OpenSubdiv library we will call a library upgrade.
2018-07-16OpenSubdiv: Re-work C-API integrationSergey Sharybin
Main goal is to make API simpler to follow (at least ion terms what is defined/declared where, as opposite of handful big headers which includes all the declarations), and also avoid a big set of long and obscure functions. Now C-API files are split into smaller ones, following OpenSubdiv behavior more closely, and also function pointers in structures used a lot more, which shortens functions names, UV integration part in GL Mesh is mainly stripped away, it needs to be done differently. On a related topic, UV coordinates API in converter needs to be removed as well, we do not need coordinates, only island connectivity information there. Additional changes: - Varying interpolation in evaluator API are temporarily disabled, need to extend API somewhere (probably, evaluator's API) to inform layout information of vertex data (whether it contains varying data, width, stride and such). - Evaluator now can interpolate face-varying data. Only works for adaptive refiner, since some issues in OpenSubdiv itself. Planned changes: - Remove uv coordinates from TopologyConverter. - Support evaluation of patches (as opposite to individual coordinates as it happens currently). - Support more flexible layout of varying and face-varying data. It is stupid to assume varying is 3 floats and face-varying 2 floats. - Support of second order derivatives. - Everything else what i'm missing in this list.