[Bf-blender-cvs] [dfb9c80] alembic_basic_io: Cleanup.
Kévin Dietrich
noreply at git.blender.org
Thu Apr 7 13:35:43 CEST 2016
Commit: dfb9c805ed077b3185560b7c9f6729d806c2a6dc
Author: Kévin Dietrich
Date: Thu Apr 7 12:13:29 2016 +0200
Branches: alembic_basic_io
https://developer.blender.org/rBdfb9c805ed077b3185560b7c9f6729d806c2a6dc
Cleanup.
===================================================================
M source/blender/alembic/intern/abc_exporter.cc
M source/blender/alembic/intern/abc_hair.cc
M source/blender/alembic/intern/abc_mesh.cc
===================================================================
diff --git a/source/blender/alembic/intern/abc_exporter.cc b/source/blender/alembic/intern/abc_exporter.cc
index fbcbce6..8a52ae8 100644
--- a/source/blender/alembic/intern/abc_exporter.cc
+++ b/source/blender/alembic/intern/abc_exporter.cc
@@ -286,18 +286,14 @@ void AbcExporter::createTransformWritersFlat()
void AbcExporter::exploreTransform(Object *ob, Object *parent, Object *dupliObParent)
{
- Object *dupliob = NULL;
- Object *dupliParent = NULL;
-
- DupliObject *link = NULL;
- ListBase *lb = NULL;
-
createTransformWriter(ob, parent, dupliObParent);
-
- lb = object_duplilist(G.main->eval_ctx, m_scene, ob);
+
+ ListBase *lb = object_duplilist(G.main->eval_ctx, m_scene, ob);
if (lb) {
- link = (DupliObject*)lb->first;
+ DupliObject *link = static_cast<DupliObject *>(lb->first);
+ Object *dupliob = NULL;
+ Object *dupliParent = NULL;
while (link) {
dupliob = link->ob;
@@ -356,7 +352,7 @@ void AbcExporter::createTransformWriter(Object *ob, Object *parent, Object *dupl
void AbcExporter::createShapeWriters()
{
- Base *base = (Base *) m_scene->base.first;
+ Base *base = static_cast<Base *>(m_scene->base.first);
while (base) {
Object *ob = base->object;
@@ -405,15 +401,13 @@ void AbcExporter::createShapeWriter(Object *ob, Object *dupliObParent)
AbcTransformWriter *xform = getXForm(name);
if (!xform) {
- std::cerr << "xform " << name << "is NULL" << std::endl;
+ std::cerr << __func__ << ": xform " << name << "is NULL\n";
return;
}
- ParticleSystem *psys = (ParticleSystem *)ob->particlesystem.first;
-
- int enable_hair = true;
+ int enable_hair = true;
int enable_hair_child = true;
- int enable_geo = true;
+ int enable_geo = true;
ID *id = reinterpret_cast<ID *>(ob);
IDProperty *xport_props = IDP_GetProperties(id, 0);
@@ -441,6 +435,8 @@ void AbcExporter::createShapeWriter(Object *ob, Object *dupliObParent)
}
}
+ ParticleSystem *psys = static_cast<ParticleSystem *>(ob->particlesystem.first);
+
for (; psys; psys = psys->next) {
if (!psys_check_enabled(ob, psys))
continue;
diff --git a/source/blender/alembic/intern/abc_hair.cc b/source/blender/alembic/intern/abc_hair.cc
index 76bdf93..ef00af7 100644
--- a/source/blender/alembic/intern/abc_hair.cc
+++ b/source/blender/alembic/intern/abc_hair.cc
@@ -145,15 +145,15 @@ void AbcHairWriter::write_hair_sample(DerivedMesh *dm,
path = cache[p];
if (part->from == PART_FROM_FACE && mtface) {
- float r_uv[2];
- float tmpnor[3], mapfw[4], vec[3];
- int num = pa->num_dmcache >= 0 ? pa->num_dmcache : pa->num;
+ const int num = pa->num_dmcache >= 0 ? pa->num_dmcache : pa->num;
if (num < dm->getNumTessFaces(dm)) {
- MFace *face = (MFace*)dm->getTessFaceData(dm, num, CD_MFACE);
+ MFace *face = static_cast<MFace *>(dm->getTessFaceData(dm, num, CD_MFACE));
MTFace *tface = mtface + num;
if (mface) {
+ float r_uv[2], tmpnor[3], mapfw[4], vec[3];
+
psys_interpolate_uvs(tface, face->v4, pa->fuv, r_uv);
uv_values.push_back(Imath::V2f(r_uv[0], r_uv[1]));
@@ -253,14 +253,14 @@ void AbcHairWriter::write_hair_child_sample(DerivedMesh *dm,
path = cache[p];
if (part->from == PART_FROM_FACE) {
- float r_uv[2];
- float tmpnor[3], mapfw[4], vec[3];
- int num = pc->num;
+ const int num = pc->num;
- MFace *face = (MFace *)dm->getTessFaceData(dm, num, CD_MFACE);
+ MFace *face = static_cast<MFace *>(dm->getTessFaceData(dm, num, CD_MFACE));
MTFace *tface = mtface + num;
if (mface && mtface) {
+ float r_uv[2], tmpnor[3], mapfw[4], vec[3];
+
psys_interpolate_uvs(tface, face->v4, pc->fuv, r_uv);
uv_values.push_back(Imath::V2f(r_uv[0], r_uv[1]));
@@ -281,7 +281,13 @@ void AbcHairWriter::write_hair_child_sample(DerivedMesh *dm,
float vert[3];
copy_v3_v3(vert, path->co);
mul_m4_v3(inv_mat, vert);
+
+ if (m_options.do_convert_axis) {
+ mul_m3_v3(m_options.convert_matrix, vert);
+ }
+
verts.push_back(Imath::V3f(vert[0], vert[1], vert[2]));
+
++path;
}
}
diff --git a/source/blender/alembic/intern/abc_mesh.cc b/source/blender/alembic/intern/abc_mesh.cc
index 618b840..f159444 100644
--- a/source/blender/alembic/intern/abc_mesh.cc
+++ b/source/blender/alembic/intern/abc_mesh.cc
@@ -224,7 +224,7 @@ void AbcMeshWriter::writeMesh()
creaseLengths, creaseSharpness);
if (m_first_frame) {
- /* Here I'm creating materials' facesets */
+ /* create materials' facesets */
std::map< std::string, std::vector<int32_t> > geoGroups;
getGeoGroups(dm, geoGroups);
@@ -253,12 +253,15 @@ void AbcMeshWriter::writeMesh()
OV2fGeomParam::Sample uvSamp;
if (!uvIdx.empty() && !uvValArray.empty()) {
uvSamp.setScope(kFacevaryingScope);
+
uvSamp.setVals(V2fArraySample(
&uvValArray.front(),
uvValArray.size()));
+
UInt32ArraySample idxSamp(
(const uint32_t *) &uvIdx.front(),
uvIdx.size());
+
uvSamp.setIndices(idxSamp);
}
More information about the Bf-blender-cvs
mailing list