Hot answers tagged

3

If I got what you ask, here is a way that seems to work: I created a simple blender cloth sim, a cube with hooked vertices, 50 frames long. Then, exported that as alembic. After I opened a new default blender file, deleted the default cube, and imported the above .abc file. I got the object in my new file, and the animation worked thanks to a "Mesh ...


2

This is not yet supported, see https://developer.blender.org/D2388


2

Related to this answer. Once you imported an Alembic Cache, the object in Blender will have an Alembic Cache Constraint. Check Override Frame. Go to your desired starting frame. Type 1 in the Frame property. Hover over the property and press I to set a key. Set a key on the next frame with the value of 2. In the Graph Editor, press ShiftE and select ...


2

Related to this answer. Once you imported an Alembic Cache, the object in Blender will have an Alembic Cache Constraint. Check Override Frame. In the frame property you can set keyframes. The following expression will loop through frame 1, 2, 3, 4. Directly enter the following in the Frame property: #(frame - 1) % 4 + 1


2

bpy.ops.wm.alembic_import operator provides a property called as_background_job which defaults to True. In that case the alembic import will happen asynchronously. You can override the default behavior by passing a False value, in which case the import happens synchronously (blocking Blender) bpy.ops.wm.alembic_import(filepath='....abc', as_background_job=...


2

The only way to do this at the moment is to add a Copy Transform constraint, check its Offset checkbox, and let it target an Empty. The Empty can then control the offset.


2

After having the same problem I figured out a solution. I installed a different ppa and then went into Synaptic, uninstalled the stock Blender and installed the cutting edge build. The import and export options are there! Yay! Here's the ppa homepage: https://launchpad.net/~thomas-schiex/+ppa-packages Pop!_os -- Ubuntu 18.04


2

I'm trying to do something similar. This video might help you. https://youtu.be/Kx4IU8lUCDs?list=PLxQxoABIf8KYi8c_gVqUGSfIUyxX-NrKf Basically, put a displace modifier with 0 influence on the object you want to export to trick blender into exporting it as an alembic cache properly. Let me know if you found a different way to do this. I'm still experimenting ...


2

You can find this in the Python tooltip: In this example I would change bpy.data.cache_files['3DSMAX_character_armature.abc'].filepath to point to the new Alembic file location. Iterating over all Alembic caches can be done with for cfile in bpy.data.cache_files.values(): …


2

"Is Sequence" is used when you have multiple Alembic files that are numbered in sequence. To export & import an animated mesh you don't need to use that. Just make sure your frame range for the export is set correctly.


1

With ther help of batFINGER and the other post, here's the working code: import bpy import mathutils import math from bpy_extras.io_utils import axis_conversion item = bpy.data.objects["Camera"] wm_src = item.matrix_world.copy() m = axis_conversion(from_forward='-Y', from_up='Z', to_forward='Z', to_up='Y').to_4x4() wm = m @ ...


1

Humm. If we take into account that alembic is a cache format, similar to a dmm or pc2, what should be done is to export the first frame as .obj, and then create a dmm / pc2 of that sequence. I do not know if it works well ... The fact is that alembic separates the different meshes, so you must make a "key shape" for each component, not as a cache. This you ...


1

Blender Sushi Guy here, I encountered the exact same situation today. And I think I have a solution that is using Sverchok nodes, but easily translateable into Drivers or Python code solution. I think Dr. Sybren can help :) So, I have multiple alembic cace file, each for 1000 frames. I broken down the Alembic sequence into multiple caches because 10000 ...


1

I had the same issue, This is my current solution: import bpy, time #get size of total scene: sceneSize = len(bpy.data.objects) #do my import: bpy.ops.wm.alembic_import(filepath="E:/Projects/blender/RenderCam.abc") #wait for scene size to change: elapsed = 0.0 maxTime = 10 while(sceneSize==len(bpy.data.objects) and elapsed < maxTime): time.sleep(...


1

Right after you perform the import alembic operation, all the objects that are imported are selected in the viewport. So you can use the following code to get access to them bpy.context.selected_objects Then you can perform operations such as grouping them logically as below bpy.ops.group.create(name='test1') Additionally, you also have access to cache ...


Only top voted, non community-wiki answers of a minimum length are eligible