Blender Git Commits

Blender Git "master" branch commits.

Page: 2160 / 5574

April 6, 2017, 14:04 (GMT)
Alembic import: be more lenient towards unknown object types.

Alembic is an interchange and caching format, that can contain custom
object schemas. Blender shouldn't crash (because of failing asserts) just
because it doesn't know such an object type.
April 6, 2017, 14:04 (GMT)
Alembic: don't call object.getFullName() multiple times.
April 6, 2017, 14:04 (GMT)
Alembic: Renamed parent_map to reader_map

It's a mapping from full path of an Alembic object to an AbcObjectReader*.
The fact that at some point it is used to construct parent-child relations
doesn't matter.
April 6, 2017, 14:04 (GMT)
Alembic: use typedefs to make it easier to handle maps/vectors
April 6, 2017, 14:04 (GMT)
Alembic: more const-ness
April 6, 2017, 14:04 (GMT)
Alembic: fixed importer

The importer was guessing whether an Alembic IXform object was part of a
child object, or should be represented as an Empty in Blender. By reversing
the order in which objects are visited, the children can now claim their
parent as part of the same object (so IPolyMesh claims its parent IXform
as part of the same Blender object). This results in much less guesswork.

I've also removed similar guesswork from the code that sets parent pointers,
by simply searching for the parent in a hierarchical way, instead of trying
to predict (again) which IXforms were turned into empties.

Also, visit_object() now actually visits the object -- previously it only
visited its children, and assumed the object it was called on was already
handled by a previous call.
April 6, 2017, 14:04 (GMT)
Alembic: prevent a couple of unnecessary multiplications
April 6, 2017, 14:04 (GMT)
Alembic: be more explicit in y-up versus z-up variables.
April 6, 2017, 14:04 (GMT)
Alembic: removed a lot of unnecessary & duplicate code from abc_util.cc

create_transform_matrix(float[4][4]) did mostly the same as
create_transform_matrix(Object *, float[4][4]), but more elegant.
However, the former has some inconsistencies with the latter (which
are now merged and made explicit, turned out one was for z-up?y-up
while the other was for y-up?z-up), and was renamed to
copy_m44_axis_swap(...) to convey its purpose more clearly.

Furthermore, "loc" has been renamed to "trans", as matrices don't
store locations but translations; and more variables now have a src_
or dst_ prefix to denote whether they contain a matrix/vector in the
source or destination axis orientation.
April 6, 2017, 14:04 (GMT)
Alembic: added note
April 6, 2017, 14:04 (GMT)
Alembic: allow copy_{z,y}up_from_{y,z}up() to be called with yup=zup

This allows in-place conversion between z-up and y-up, by passing the
same variable to both arguments.
April 6, 2017, 14:04 (GMT)
Alembic: import empties under their own name in Alembic, not their parent's

Before this commit something strange happened, as the m_data_name of
an inherit data-less object was used.
April 6, 2017, 14:04 (GMT)
Alembic: Don't compute world matrix when it's not necessary.
April 6, 2017, 14:04 (GMT)
Alembic: cleaned up hack in AbcObjectReader::read_matrix()
April 6, 2017, 14:04 (GMT)
Alembic: added some clarification
April 6, 2017, 14:04 (GMT)
Alembic: added some getter functions to help debug prints etc.
April 6, 2017, 14:04 (GMT)
Alembic: do not presume to predict the parent name

AbcExporter::createTransformWriter() tries to predict the parent Xform
name, but if it cannot be found has multiple ways of creating it, possibly
under a different name than originally searched for.
April 6, 2017, 14:03 (GMT)
Alembic: Removed AbcTransformWriter::m_parent

It was set, but never read anywhere.
April 6, 2017, 13:49 (GMT)
Depsgraph: Remove old depsgraph header from alembic files
April 6, 2017, 13:40 (GMT)
Depsgraph: Remove old depsgraph header from game engine
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021