20260315_Hiro-SpeedScaleParticle_v001.1.toe (4.9 KB)
Hey I made this simple project where the boxes scales up/down based on their movement speed. The faster the boxes move, the bigger they get.
I used Cache (POP) and Math Mix (POP) to compare the difference of P between the current frame and the frame before (as Speed = Distance / Time)
I definitely see myself use this technique in many future projects. So I just wanted to ask if this is an efficient/simpler/lighter way to make this happen. I’d love to hear if there are any way to improve this.
Thank you in advance!
This is a fine technique, unless you are somehow already aware of the “speed” which you are moving them ( because of how you are driving them) you may be able to avoid the cached based calculation, but i don’t think its particularly intensive what you are doing.
The main suggestion I would have is to use the length(A) (A = speed in your case) operation instead of summing the components manually in your 3rd Math Mix block, as length is a built in function on the GPU and might have some efficiency over manually doing the sum like you are doing there. I believe this avoids the need for your abs() part and you can put the scalar ( x100) after the length so you’re only doing the scaling on the single float length result.
Here’s probably how i would do it, also using instancing geo instead of copy POP ( if that’s your final rendering geo):
20260315_Hiro-SpeedScaleParticle_v001_archo_p.toe (5.3 KB)
1 Like
Wow this is awesome.
Never knew about Length math operation.
Thank you so much!