[Bf-blender-cvs] [52295dd4802] master: Alembic export: don't show warning for every exported frame

Sybren A. Stüvel noreply at git.blender.org
Thu Apr 20 15:33:26 CEST 2017


Commit: 52295dd4802c6a9ca05026d702cdc146efa6a293
Author: Sybren A. Stüvel
Date:   Thu Apr 20 15:24:48 2017 +0200
Branches: master
https://developer.blender.org/rB52295dd4802c6a9ca05026d702cdc146efa6a293

Alembic export: don't show warning for every exported frame

The warning about not having a UV map is now only shown once per hair
system.

===================================================================

M	source/blender/alembic/intern/abc_hair.cc
M	source/blender/alembic/intern/abc_hair.h

===================================================================

diff --git a/source/blender/alembic/intern/abc_hair.cc b/source/blender/alembic/intern/abc_hair.cc
index e328df24e53..9a974273a46 100644
--- a/source/blender/alembic/intern/abc_hair.cc
+++ b/source/blender/alembic/intern/abc_hair.cc
@@ -56,6 +56,7 @@ AbcHairWriter::AbcHairWriter(Scene *scene,
                              ExportSettings &settings,
                              ParticleSystem *psys)
     : AbcObjectWriter(scene, ob, time_sampling, settings, parent)
+    , m_uv_warning_shown(false)
 {
 	m_psys = psys;
 
@@ -132,8 +133,10 @@ void AbcHairWriter::write_hair_sample(DerivedMesh *dm,
 	MFace *mface = dm->getTessFaceArray(dm);
 	MVert *mverts = dm->getVertArray(dm);
 
-	if (!mtface || !mface) {
-		std::fprintf(stderr, "Warning, no UV set found for underlying geometry.\n");
+	if ((!mtface || !mface) && !m_uv_warning_shown) {
+		std::fprintf(stderr, "Warning, no UV set found for underlying geometry of %s.\n",
+		             m_object->id.name + 2);
+		m_uv_warning_shown = true;
 	}
 
 	ParticleData * pa = m_psys->particles;
@@ -241,10 +244,6 @@ void AbcHairWriter::write_hair_child_sample(DerivedMesh *dm,
 	MFace *mface = dm->getTessFaceArray(dm);
 	MVert *mverts = dm->getVertArray(dm);
 
-	if (!mtface || !mface) {
-		std::fprintf(stderr, "Warning, no UV set found for underlying geometry.\n");
-	}
-
 	ParticleCacheKey **cache = m_psys->childcache;
 	ParticleCacheKey *path;
 
diff --git a/source/blender/alembic/intern/abc_hair.h b/source/blender/alembic/intern/abc_hair.h
index d132b60be12..61f5fe361f8 100644
--- a/source/blender/alembic/intern/abc_hair.h
+++ b/source/blender/alembic/intern/abc_hair.h
@@ -37,6 +37,8 @@ class AbcHairWriter : public AbcObjectWriter {
 	Alembic::AbcGeom::OCurvesSchema m_schema;
 	Alembic::AbcGeom::OCurvesSchema::Sample m_sample;
 
+	bool m_uv_warning_shown;
+
 public:
 	AbcHairWriter(Scene *scene,
 	              Object *ob,




More information about the Bf-blender-cvs mailing list