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
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenkernel/intern/subdiv_eval.c')
-rw-r--r--source/blender/blenkernel/intern/subdiv_eval.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/subdiv_eval.c b/source/blender/blenkernel/intern/subdiv_eval.c
index 7c90a2a25cd..0f928331724 100644
--- a/source/blender/blenkernel/intern/subdiv_eval.c
+++ b/source/blender/blenkernel/intern/subdiv_eval.c
@@ -48,7 +48,10 @@
void BKE_subdiv_eval_begin(Subdiv *subdiv)
{
#ifdef WITH_OPENSUBDIV
- if (subdiv->evaluator == NULL) {
+ if (subdiv->topology_refiner == NULL) {
+ /* Happens on input mesh with just loose geometry. */
+ }
+ else if (subdiv->evaluator == NULL) {
BKE_subdiv_stats_begin(&subdiv->stats, SUBDIV_STATS_EVALUATOR_CREATE);
subdiv->evaluator = openSubdiv_createEvaluatorFromTopologyRefiner(
subdiv->topology_refiner);
@@ -132,6 +135,9 @@ void BKE_subdiv_eval_update_from_mesh(Subdiv *subdiv, const Mesh *mesh)
{
#ifdef WITH_OPENSUBDIV
BKE_subdiv_eval_begin(subdiv);
+ if (subdiv->evaluator == NULL) {
+ return;
+ }
/* Set coordinates of base mesh vertices. */
set_coarse_positions(subdiv, mesh);
/* Set face-varyign data to UV maps. */