Lifespan Countdown in Queue values ( like lifespan but without deleting queue items )


Im doing something like a virtual Stickerwall, where people can add stickers into a Queue to be displayed. i think VL could be a better choice.
The missing part is giving the stickers changing the Z-Distance over time. Once reaching the destination Value Stickers should stop and stay in the Queue list.

  • Add Sticker to Queue with Z-Position of 0
  • Give Sticker a destination Z-position to reach, not fixed but a random Range “X” ( between 0.1 to 0.7 )
  • Give Sticker a Random Duration to reach its destination Z-Position
  • Change Z-Position from 0 to destination “X” over time in spread.
  • Stop at Z-Position and keep in Queue

Queue Size will be about ~1000 - 2000

Purpose is to keep new Stickers always in Front while giving the older one a random shuffle to create a bit of depth.

All vvvv solutions ive found work with framedelay or insertslices so i figured this would be a good fit for VL. I dont really know where to start in VL, would be great if someone could point me in the right direction.

related: monobuf

hei gegenlicht, indeed this is a perfect usecase for vl. what you’re describing is basically a particle system: just think of your stickers as particles that you want to add to a spread, where you wanna keep a max of 2000 in there. each particle individually has an animated Z property and a ZFadeDuration property, both of which get initialized randomly…

your starting point is here:

Hi gegenlicht , if you need a gpu aproach ,you,ll get some idea here too,

@colorsound thx, will def play around with this great contribution but wanted to try and learn vl a bit with this one :)

so ive achieved most of what i need with the tutorial and must say working with for each and If regions feels really good in vl.

There are two things i could not get working:
After a Particle is created i want to delay adding velocity to it for “X” seconds.
So the particle should be created but not move for a specified duration.
Another thing that has changed in the tutorial that “clear spread” does not have a boolean input so i cant add a reset button. Also not sure how to limit the spread, and delete its oldest entry if the limit is reached.

Adding a delay in update creates some sort of blackhole :) (10.9 KB)


  • Clear [Spread] not having an Apply pin: create it via rightclick on the node → Configure → Show Apply
  • have the particle pause for 2 seconds initially:
  • limit the total amount of particles to the newest 5:

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.