Jump to content

Make smoke trails more realistic


Recommended Posts

This is just a little visual suggestion, nothing game breaking but who knows...

Current smoke trails look unnatural as they end abruptly after certain length - either maximum number of smoke puffs or maximum smoke puff lifetime is reached. Perhaps both.

My suggestion is to hold the list of "smokepuff destruction events" in the same queue as it is now, but to keep actual smoke puffs in a separate queue. When it comes up to destroy a smoke puff, instead of destroying the last one, destroy a random one from last two thirds of the queue. The last in queue then can be placed over the destroyed one to prevent having to rearrange the queue.

This will lead to much longer and more realistically looking smoke trails. Maybe even number of smoke puffs per engine could be reduced to still achieve satisfactory result.

Link to comment
Share on other sites

My suggestion is to hold the list of "smokepuff destruction events" in the same queue as it is now, but to keep actual smoke puffs in a separate queue. When it comes up to destroy a smoke puff, instead of destroying the last one, destroy a random one from last two thirds of the queue. The last in queue then can be placed over the destroyed one to prevent having to rearrange the queue.

Are you sure it works like that? From watching Kethane dev stream I recall that there is no real control over any "queue" - you just set up particle generation speed and randomize particle speed, initial movement vector, force and TTL. So every particle "dies" when it's supposed to.

Link to comment
Share on other sites

Or you could just have them fade to invisible before destroying, with a bit of code that sees what the particles nearest it are doing and *almost* goes with it. That way you'd have the trail dissipate faster or slower in different areas leaving only sections of trail here and there, much like dissipation through a real uneven atmosphere.

Link to comment
Share on other sites

I have no idea how it is implemented in KSP. I have no experience with Unity. My suggestion is just based on general programming experience.

If queues are not possible then it may be possible to assign the smoke puff random lifetime within certain limits, using e.g. poisson distribution. That would lead to about the same results. Or it is possible to have number of pre-defined smoke puff particles with various pre-set lifetimes and select from them using correct random distribution. There certainly are ways how to make things work.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...