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
2018-02-07Cleanup: add _types.h suffix to DNA headersCampbell Barton
2018-01-16Alembic: don't explicitly pass NULLSybren A. Stüvel
2018-01-16T53711: Alembic don´t import vertex colors correctlySybren A. Stüvel
An index stored in Alembic wasn't used. Often this index is a no-op (i.e. index[n] = n), in which case the result was fine. However, when it isn't, it caused issues.
2017-12-20Fix T53572: Alembic imports UV maps incorrectlyMartin Felke
Since in Alembic the loop order seems to be reversed when exporting and importing, and this was the only place where it was not, I was thinking to match this to the convention of reversing the loop order as well. Reviewers: sybren, kevindietrich Tags: #alembic Differential Revision: https://developer.blender.org/D2968
2017-11-14Alembic: Fix mismatch in forward declaration with definitionSergey Sharybin
2017-11-01Cleanup: styleCampbell Barton
2017-10-29Alembic: exporting MetaBalls as meshSybren A. Stüvel
- Only basis balls are exported, as they represent the resulting mesh. As a result the mesh is written to Alembic using the name of the basis ball. - MetaBalls are converted to a mesh on every frame, then an AbcMeshWriter is used to write that mesh to Alembic.
2017-10-29Alembic import: fixed mesh corruption when changing topologySybren A. Stüvel
When the mesh changed topology but kept the vertex count the same, it would result in a corrupt mesh. By checking the face & loop counts too, this has become less likely. I've checked IPolyMeshSchema::isConstant(), but it returns true even when we see that the mesh changed topology.
2017-08-29Alembic: Fix T52579: crash when replacing slightly different alembic filesSybren A. Stüvel
Apparently with Maya in a certain configuration, it's possible to have an Alembic object without schema in the Alembic file. This is now handled properly, instead of crashing on a null pointer.
2017-08-15Alembic import: report object name in face color index out of bounds errorSybren A. Stüvel
2017-08-15Alembic import: fix crash when face color index is out of bounds.Sybren A. Stüvel
This can happen with Alembic files exported from Maya. I'm unsure as to the root cause, but at least this fixes the crash itself. Thanks to @looch for reporting this with a test file. The test file has to remain confidential, though, so it's on my workstation only.
2017-08-09Fix T52240: Alembic Not Transferring Materials Per FrameSybren A. Stüvel
When a mesh changes its number of vertices during the animation, Blender rebuilds the DerivedMesh, after which the materials weren't applied any more (causing the default to the first material slot).
2017-08-09Alembic: Renamed variable assigned_name → assigned_matSybren A. Stüvel
The variable is a pointer to a Material, not to a name/string.
2017-07-11Fix T52022 Alembic Inherits transform not taken into accountSybren A. Stüvel
Alembic's "inherits transform" flag wasn't taken into account when constructing the parent object relations.
2017-07-03Alembic: renamed offset → sequence_offsetSybren A. Stüvel
2017-06-19Cleanup: doxygen commentsCampbell Barton
Also remove duplicate & mismatching comments from grease-pencil header. Keep comments close to implementation to avoid getting out of sync.
2017-06-02Cleanup: styleCampbell Barton
2017-05-30Alembic import: fixed bug interpolating between frames.Sybren A. Stüvel
2017-05-30Alembic: simplified sub-frame samplingSybren A. Stüvel
It's now less confusing (for example, using nr_of_samples directly, instead of using 1 / 1 / nr_of_samples). Might also have fixed a bug. Also added unittests.
2017-05-30Alembic export: normalise the homogeneous component after scalingSybren A. Stüvel
The scale matrix must have its homogeneous 'w' (at mat[3][3]) set to the scale in order to also scale the translations along with it. However, this also scales the transform matrix's 'w' component, which is not supposed to happen.
2017-05-30Alembic export: avoid create-and-reset of shared pointerSybren A. Stüvel
Constructing the shared pointer where the object is actually allocated makes the code a bit clearer.
2017-05-30Alembic export: prevent rounding error buildup in frame sample timeSybren A. Stüvel
2017-05-26[MSVC] Fix build error. linker was searching for a mangled version of versionstrlazydodo
2017-05-24Alembic: Export mesh as mesh, even when it has no vertices.Sybren A. Stüvel
This makes it possible to have an animated / procedurally generated mesh that starts empty and obtains data in later frames. Fixes the export of an empty mesh with an Ocean Modifier, as described in issue T51351.
2017-05-24Alembic export: consider mesh with animation data as "animated"Sybren A. Stüvel
This allows you to put any kind of animation data on the mesh, and its shape will be exported on each timekey. Note that this timekey is unrelated to the animation data (so we don't export on each keyframe, for example). A practical example is the addition of an animated custom property to trigger the export of animated mesh data. The mesh data can then be created from any source, like Python scripts. Not only is this useful in itself, it also provides a workaround for one of the two issues described in T51351.
2017-05-24Alembic export: write Blender version to Alembic fileSybren A. Stüvel
This is written in a custom metadata key, so it isn't shown by utilities like abcecho or abcls. However, it's still something that's useful to have available.
2017-05-24Fix T51586: Regression: Alembic containing animated curves / hair no longer ↵Sybren A. Stüvel
working Also fixed the same type of error when reading points.
2017-05-23Fix T51534: Alembic: added support for face-varying vertex coloursSybren A. Stüvel
Houdini writes vertex data in a different format than Blender does; Houdini uses "face-varying scope", which means that the vertex colours are indexed by an ever-increasing number over all vertices of all faces instead of the vertex index. I've also merged the read_custom_data_mcols() and read_mcols() functions, because the latter was only called from the former, and the changes in this commit would add yet more function parameters to pass.
2017-05-23Alembic: reduced code duplication in read_mcols()Sybren A. Stüvel
A big chunk of code was copied between the if and else bodies. By using a boolean to store whether the c3f_ptr or c4f_ptr should be used, the in-loop condition is kept as simple as possible.
2017-05-23Alembic: split up read_custom_data_ex() into read_custom_data_{mcols,uvs}()Sybren A. Stüvel
The read_custom_data_ex() function was basically two functions inside if/else bodies.
2017-05-23Fix T51319: Alembic export crash w/simple child particles if Display value < ↵Sybren A. Stüvel
100% This was two-fold. 1) The export used viewport settings to obtain the particle cache, rather than render settings. 2) The child hair writer tried to obtain UV-coordinates from the parent chair, without checking whether those were available in the first place.
2017-05-20CMake: Use GCC7's -Wimplicit-fallthrough=5Campbell Barton
Use to avoid accidental missing break statements, use ATTR_FALLTHROUGH to suppress.
2017-04-28Alembic: use object-oriented approach in ABC_read_mesh()Sybren A. Stüvel
This is easier to extend than the if/else if/else chain that was in place, and allows for somewhat more granular error messages.
2017-04-28Alembic: Construct ISampleSelector once and pass alongSybren A. Stüvel
2017-04-26Alembic export: support simple child hairs (Fix T51144)Sybren A. Stüvel
Simple child hairs don't have a face index number assigned, so the call to dm->getTessFaceData(dm, num, CD_MFACE) would cause a crash. To work around this, UV and normal vectors are copied from the parent hair. I've also removed an unnecessary call to dm->getTessFaceArray(dm); Reviewers: kevindietrich Differential Revision: https://developer.blender.org/D2638
2017-04-26Alembic: fixed indentationSybren A. Stüvel
2017-04-26Alembic: fixed memory leaksSybren A. Stüvel
2017-04-26Alembic: fixed refcount issue when duplicating imported objectsSybren A. Stüvel
Duplicating an imported object didn't increment the cache reader's refcount, whereas removing the duplicate did decrement it. This caused problems.
2017-04-26Avoid platform dependant PATH_MAXCampbell Barton
2017-04-26Alembic export: also export emptiesSybren A. Stüvel
Exporting an empty creates an Alembic XForm object. The empties can also be animated.
2017-04-26Alembic export: renamed func object_is_shape → object_type_is_exportableSybren A. Stüvel
The function doesn't return whether the object is a shape at all, since it also returns true for camera objects (and soon also for empties). It returns true when objects of this type can be exported to Alembic at all. This is now reflected in the name.
2017-04-26Alembic: fixed C++98 compatibilitySybren A. Stüvel
2017-04-25Fix T51292: Alembic import, show notification when trying to load HDF5Sybren A. Stüvel
HDF5 Alembic files are not officially supported by Blender. With this commit, the HDF5 format is detected even when Blender is compiled without HDF5 support, and the user is given an explanatory error message (rather than the generic "Could not open Alembic archive for reading".
2017-04-25Revert "Alembic: Construct ISampleSelector once and pass along"Sybren A. Stüvel
This reverts commit 099816587a0e064fb6a52c82a737ae8814cf21df. It had some unforseen side-effects that should be investigated first.
2017-04-25Fix T51284: Mesh not skinnedSybren A. Stüvel
2017-04-21Alembic: Construct ISampleSelector once and pass alongSybren A. Stüvel
No longer passing time as float and constructing ISampleSelectors all over the place. Instead, just construct an ISampleSelector once and pass it along.
2017-04-20Alembic export: don't show warning for every exported frameSybren A. Stüvel
The warning about not having a UV map is now only shown once per hair system.
2017-04-20Alembic import: select imported objectsSybren A. Stüvel
When the Alembic import is finished, all imported objects are selected.
2017-04-19Alembic import/export: added as_background_job optionSybren A. Stüvel
The ABC_export and ABC_import functions both take a as_background_job parameter, and return a boolean. When as_background_job=true, returns false immediately after scheduling a background job. This was the old behaviour of this function, which makes it very hard for scripts to do something with the data after the import or export completes. When as_background_job=false, performs the export synchronously, and returns true when the export was ok, and false if there were any errors. This allows further processing. The Scene.alembic_export() function is deprecated, and will be removed from Blender 2.8 in favour of calling the bpy.ops.wm.alembic_export() operator. As such, it has been hard-coded to the old background job behaviour.
2017-04-19Alembic export: made hair/particle export optional.Sybren A. Stüvel
The export is still slower than needed, as the particle systems themselves aren't disabled during the export. It's only the writing to the Alembic file that's skipped.