Alembic pointcloud ID-s [SOLVED]

Hi! Im trying to put instances on alembic particle’s (in Blender) that I’ve exported from Embergen. The problem is that it seems, that I cant set the ID-s, so anything that I’d like to randomize such as scale or rotation (or pick instance from collection), changes all the instanstances on the point on every frame, which results a stuttering effect. Is there any solution to this? The only similar problem that I’ve found was this: Instancing objects on an alembic point cloud - #3 by Rowquino - Modeling - Blender Artists Community Unfortunately its from houdini, so the solution’s not works for me… :confused:

Nevermind, I guess I’ve found out all sides of the limitations. I’m just getting into geonodes, so selection of points seems a bit harcore math for me, the problem that for an alembic pointcloud its randomly changes the instance index on the points (if I dont select specific points for a specific instance) seems a blender limitation. The third is that when I selected the first point of the animation and traced it in the viewport while forwarding the timeline, I realized that after a while it starts jumping in the space randomly (maybe somewhere at the collision point). I guess its the gpu simulations limitation, but correct me if Im wrong. All in all, any suggestion is welcome from fellow users, or anyone who has a good idea, how to solve this… :slight_smile:

Hi there, Alembic Particle export has been a feature that was requested for a while and so we’re running into the same limitations of not knowing how other software want to treat these particles. I’ve provided the attribute names that alembic files tend to look for, but I wonder if the alembic particle ID gets reset once the lifetime passes.

Attribute names:
P (positions)
.pointIds
.velocities
.arbGeomParams contains
texture (colors)
density
age
size

If you have a video of the particle bouncing randomly that would be great to see what you mean. I am not sure what would be causing that. I’m also not sure about the instance index changing randomly, can you point out what you mean with that?

It would be great to work with you to get a solidified workflow for importing alembic particles into Blender. Their documentation is kind of poor, but Blender works so well for most other cases. Looking forward to hearing from you!

Hi! Thank you for your quick response! I’ve made a video with the simplification of the problem. I’ve made a point selector node, that I demonstrated in the first 1 min of the video on a simplecube, then I imported and alembic pointcloud that I’ve exported from embergen to demonstrate the same selector node on it. Specs of the cloud: I’ve made it with a lifetime range of 4000-4000, to minimize the stuttering from random particle lifetime. As you can see the jumping of the cube, it looks like its changing the points ID-s like every 1-2 frames and Im just like 475th on the timeline, far before the first particle should die. So I dont think, that its related to particle lifetime, but it looks like its constantly changing. Well, of course Im not sure about anything I’ve said, Im just in entry level in geometry nodes and pointclouds, but already ran into a lot of technical problems, that I had to research, so these are my first thoughts.

Its the same guy I’ve posted on the first place with his solution for houdini particles. Im not sure if I can do anything in embergen on the user side to solve this. My current guess that the ID-s resetting not on when particles die, but at new particles birth.

I have an idea on another way. Maybe it could be handled with random color attributes. For example if I could have 10 different vertex colors, I could use that for instance indexing so I could have 10 variations of an object on the selection by colors instead of selecting by the constantly changing id-s. Note: there should be a chance to have so many colors randomized in the pointcloud (like a noise texture), so the selected instances could have so many different rotations.

Update: My recent discovery is that alembic I exported from embergen and imported to blender has no attributes at all, except for the position (this is the only attribute in the alembic file, that blender reads, so I can use with the nodes). At export I checked the export colors option, but it didnt help at all. Note: Just realized that attributes written by embergen would be just fine for now if blender could read them (I could use the particle size for variation for example)… :confused:

Update 2: Did some more research… Well, it seems like a huge blender limitation. :frowning: Right-Click Select — Blender Community This thread from 3 years ago, so Im really disappointed at this time, that it still like this… :confused: I’ve no idea how can the devs could be pushed, to improve alembic support, because it would be a great improvement for blender internal simulations too as well…

Update 3: Found an alpha branch with improvements on importing alembic attributes: Houdini's Particles to Blender with Alembic ( Attributes import problem ) - #19 by Atom - Other Software - Blender Artists Community

Now the file that I exported from embergen, has a lot of attributes!

Note: The constantly changing instances on the point remained as a problem, maybe its related to the mentioned ID resetting, but now I have more control on the particles, so I’ll be happy for a while. :slight_smile:

Update 4:
Recorded another Video where you can clearly see in the spreadsheet, that pointIds is keeps resetting like every few frames as you can read it from its position or size. Im happy that atleast I can use a few attributes now, but it would open a whole lot of possibilities if I can have some variation of instances on the points instad of randomly changing instances. At this point I would pay for an addon in case, just to have this feature lol. Hope you understand. :smiley:

2 Likes

hi,Have you found a way to color the abc of embergens particle in Blender?
I’ve been searching for a long time without success.thanks :grinning:

Hi Uhrwerk, so sorry I didn’t respond do these updates sooner. But this will be a massive help in addressing Alembic Particle imports. I can’t speak to what a timeline looks like for these but your efforts in describing and documenting the problem are extremely valuable. Would you mind sharing the Blender file that you used to test so that we can properly ensure these particle points are rendered properly?

Thanks again