Collectable Clouds - How To?

Hi,

I ran into a problem for one of my ideas:

I wanted to make collectible clouds and my first idea was to make a class that has a variable ‘amount’ (how much it’s worth when you collect it fully) and an irregular shape to represent it in the world. Now when the player touches it I would reduce amout gradually over time as long as the player is inside of the volume while also dewforming the volume slowly over time so it excludes the player.

Two problems: How do I realize this irregular shaped volume? I thought of doing it via a mesh but how do I deform a mesh like this on runtime?
And: How do I make it look like some kind of cloud or smoke?

Thanks in advance for your help.

  • I wanted to go for a more realistic look.
  • I don’t want to reduce the whole size of the mesh. Just deform it around the player as if the player was absorbing only the part of it he is touching. Is there a way to maybe only move single vertices?

it all depends on the look that your going for. if you want a realistic looking stradaform cloud then you will probably go for something like a particle system. but if you were going for a more low poly cumuloform cloud then you could easily use a static mesh. as to changing the shape of it you could pretty easily throw together a script that changes the scale of the mesh. you could do something like on begin overlap start timer, every x seconds trigger event, event is get mesh scale and decrease it y percent. then check scale, if <= 0 destroy actor.

hmmm that seems like a pretty complex undertaking. the only thing i can think of would be to create a “cloud” of smaller objects that get collected as the player walks through. but theres probably a much better way to go about things.

Thanks for your help anyway. If I don’t get a better answer or can’t find something on my own then multiple objects will have to do.