How can i create realistic optimized jet-contrails?

Hi guys, i want to make multiple realistic looking jet contrails, and i want some of them to remain for a very very long time just like real life contrails in high altitude, how should this be done? can i do it with a particle effect? can it be optimized enough? i would really love it if it was possible to have them actually interact with the sunlight properly and actually appear like those real life cloudy trails as much as possible, can you guys think of a way this can be done?

If you look at asset store, there are paid assets of light receiving smoke shader assets. If you want the free option, you can try this one.

For the particle sys, it is simply to have a really long start lifetime like >20sec, close to zero start speed, use emission rate over distance instead of time (value greatly varies depending on start size), color over lifetime (simply alpha fade from 100% to zero). For slightly more advanced approach, add a very small amount of noise.

Use a trail renderer as these are pretty efficient and you can get these to hang around for as long as you’d like. Separate particles for this job is not an optimised approach.

1 Like

If you want to simulate the slow degradation (dispersion) of the cloud over time, you can blend two texture gradient over time.

The thing is i’d really like them to be detailed when the camera focuses in on them to actually go for that photorealistic look, and i need them to dissipate over time and remain for a really long period of time, but they would actually only be seen from the ground so i don’t actually need them to be volumetric contrails, so is it possible maybe to compromise on the realistic light interaction to create a particle system of cloud sprites? i have this https://www.assetstore.unity3d.com/en/#!/content/27558 realistic cloud sprites asset from the store, isn’t it possible to use it to create a particle system that would look realistic in addition to being optimized enough to remain for a long time?

With the said asset, it’s only applicable on generating chain of particles. You may join those textures in Photoshop to form a long horizontal trail texture for trail renderer. If your target platform is not mobile, I see absolutely no performance issue of using particles. The benefit of particle system is that you can give each particle random rotation (use random start rotation between constants 360~zero) to avoid repetitive pattern which is something trail renderer would look like.

About the light receiving part, if your scene does not change lighting color/intensity constantly, you can just give the particle/trail pre-defined color to match the current scene lighting instead of bothering with customized shader. If you really want the particle color responds to real-time lighting without simulating any shadowing, you can try this other shader which is even more performant than my previous one.

At that point I should say, try it and see for yourself, you have enough hypothesis, you need to test them. Post result and you will be directed at how to improve them.

3 Likes