Simulation Node particle system gravity will not fall when tied to an Empty

I was following this tutorial on YouTube on how to do a particle simulation via Simulation Nodes. All goes well until I try and make the “gravity” effect of the particle system, because the whole thing falls apart when I tie the Scale values of the two Scale nodes to an empty that moves upwards, it does not have any gravity effect whatsoever, it’s just flat movement along the X axis, which is OK for a snail, but not for your average particle system.

Can anyone please help me, for I’m a bit stuck, and I am extremely new to Simulation Nodes. It excites me a lot because I can picture the fun I am about to have creating the particle systems that I can come up with using this if I can master it. Like fire, rain, snow, etc. I hope Blender adds more simulation options in the near future for easier control over simulations like this, and proper dedicated particle nodes.

Can anyone please find any text-based tutorials on how I can work this Simulation/Geometry node stuff out? All I find are video tutorials, but there must be some text-based tutorials. I can do Shader nodes because they are visual and much easier to learn, but Geometry and Simulation nodes are a lot harder. But I feel that mastering them will be very rewarding in the end.

Is there an easier way to make a Simulation Node-based particle system have gravity with an object like an Empty? You just move the Empty to make the gravity, like in the video where you just use Delta Time to do the same thing, it should be achievable with Object Location on the Z axis.

You’re replacing the Delta Time with an Empty moving upward? Not sure what you expect to happen? Please explain what you’re trying to achieve.

Not really… your best bet is to look at the sample files.

From your description I’m not sure what you expect the Empty to represent.

The Empty (which moves upwards), enables me to port the particle system to UPBGE, and have a little more control over it. In UPBGE, the Empty is set to a Motion Actuator that essentially moves up or down, creating the gravity by acting as a driver for the Delta Time.

But Delta Time doesn’t create the gravity and should remain as close as possible to a constant if everything is working correctly… Why would you want to affect Delta Time?? That seems like the thing you should be leaving alone!?

The Vector (0 0,-10) is gravity in their setup… surely you should be “driving” that?

1 Like

So, if I use a Vector Math node or something else, then hook the Object’s Location node up, then it would work just like Delta Time, wouldn’t it?

Essentially, I would either be combining the two, or just hooking the Location of the Empty into where the Vector is, and then using a Multiply Math node to invert the anti-gravity (if moving up) into the gravity I want. Sorry, I’m not good with maths in the numerical sense - I’m better at learning visually, which is why tutorials have helped me a lot if they contain pictures/or are videos.

EDIT: By “combining the two”, I did not mean Delta Time. I meant combining both Vector and Object (Empty) Location.

Sounds like you’re overcomplicating things…

Just connect the empty location so it replaces the gravity vector:

That should do what it sounds like you’re trying to achieve…

Good luck.

2 Likes

That was my intention. Thank you. Since Delta Time does not work in UPBGE, I would need to use something else.

Delta time is a constant that should just be 1/frame-rate.

@BluePrintRandom, any idea why Delta Time doesn’t work in UPBGE?

Good luck.

import bpy
currentFrame = bpy.data.scenes['Scene'].frame_current
bpy.data.scenes['Scene'].frame_set(currentFrame + 1)

delta time should work in theory - but you can just have a second copy of the sim with time -1

we can encode our own attributes into a mesh also to use *
UPBGE_SIM_PY_INTERFACE.blend (1.0 MB)