Search Unity

Question How to improve appearance of a moving system? (Spawning behavior)

Discussion in 'Visual Effect Graph' started by dgoyette, Sep 4, 2021.

  1. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,195
    I have a beam effect that cuts across the environment:

    Particles.gif

    Each frame, it potentially moves, striking a different part of the environment. This moves the Visual Effect which generates the fire/smoke effect you see here.

    However, any time the Visual Effect moves even reasonably fast, it results in the fairly ugly effect you see here, where the system spawns new particles no faster than whatever the framerate is. This results in gaps between each particle, which looks bad.

    I can somewhat improve this by increasing the spawn rate, but that still produces gaps. I can also increase the particle size to cause more overlap, but eventually the particles are too large to be reasonable.

    I was just wondering if there were any other common approaches to produces "smooth" emission over a distance for things like this? I have the same issue on a missile, where it leaves a smoke trail behind. It ends up leaving discrete "puffs" of smoke behind it, rather than a reasonable looking trail of smoke:

    Smoke.gif
     
    Qriva likes this.
  2. Qriva

    Qriva

    Joined:
    Jun 30, 2019
    Posts:
    1,307
    I am also interested in this, but I want to add a bit more to this question as it is also visible in trails/ribbons.
    For example there is very common use case where character has sword, it generates swing trails during movement and the same problem can be observed - there are no nice, round ribbons, but instead square and broken lines.
    I can't even count how many games I have seen like this, is there solution to this? (except manually sampling and interpolation everything)
     
    daneobyrd likes this.
  3. JulienF_Unity

    JulienF_Unity

    Unity Technologies

    Joined:
    Dec 17, 2015
    Posts:
    326
    daneobyrd, PutridEx, Qriva and 3 others like this.
  4. JulienF_Unity

    JulienF_Unity

    Unity Technologies

    Joined:
    Dec 17, 2015
    Posts:
    326
    For trails, we also plan to add a smooth trail spawner, that we prototyped already
     

    Attached Files:

    Hagen, daneobyrd, PutridEx and 3 others like this.
  5. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    Is this different and in addition to sub-frame interpolation? Or just an application of it?

    I'd also like to reiterate that I think the voting idea is flawed. It's a measure of (a) how many people find the roadmap page (b) realise that you can vote (c) bother to vote.

    None of this correlates with the true utility of a feature.

    I'm sick of voting and have given up because it makes me enter my details afresh every time and there's no indication of what I've already voted on.

    I also only ever used to vote when I was in a bad mood so most of my comments were along the lines of "do you really need to ask why this feature is important!?"
     
    daneobyrd, HsRo, koirat and 1 other person like this.
  6. Qriva

    Qriva

    Joined:
    Jun 30, 2019
    Posts:
    1,307
    This.
     
    andybak likes this.
  7. VladVNeykov

    VladVNeykov

    Unity Technologies

    Joined:
    Sep 16, 2016
    Posts:
    550
    Hey @dgoyette,
    If you send to the graph both the new position and the previous position (either via two exposed blackboard properties or as attributes via a SendEvent as two different position attributes) then you can do something like this:


    You can event get fancier and use the spawnIndex divided by the spawnCount (with a Source location) to space out the particles spawned for that frame evenly between the previous and new position (though using random as mentioned above might be good enough):


    I hear you @andybak. For what it's worth, we do read all the feedback, consider the various priorities based on it, and include the range of use cases shared with us when planning/designing new features to make sure we account for all use cases when feasible.

    But even when we actively try to steer people towards the roadmap, I acknowledge that it's most likely a vocal minority that ends up sharing their input. If you, @Qriva , or anyone else has any suggestions on how we can better engage people using our tools or how we can improve the public roadmap, please let us know - we would love to hear from you :)

    (And thanks for raising the lack of visibility of upvoted items and repetitive entry of your details, your feedback has been shared!)
     

    Attached Files:

  8. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,195
    That looks pretty interesting. Thanks, Vlad. I'll try it out.
     
    daneobyrd and VladVNeykov like this.
  9. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    I think the flaws with the feedback page are minor and fixable:

    1. Make it clear what I've already voted on
    2. Don't send the damn verification email every time
    3. Don't mush together voting and more detailed feedback. A vote is a simple vote (Uservoice used to do this fairly well. Additional feedback should be optional and in addition to votes.
    4. Get the messaging clearer around the kind of feedback you want. At the moment it sounds a bit like "If you want this feature, here's a text box where you have to convince us it's really worthwhile or else we won't take your submission seriously" while from what you wrote above it's more like "if people explain their use case to us it helps us figure out a way we can cover the largest number of different use-cases as possible".

    Just review the copywriting on this page and give it careful attention from people experienced in writing this kind of copy.
     
    daneobyrd and VladVNeykov like this.
  10. Qriva

    Qriva

    Joined:
    Jun 30, 2019
    Posts:
    1,307
    Sorry for bringing roadmap feedback here, but as the problem was already mentioned I will add my two cents:

    I strongly agree about first 3 points above and voting must be more clear, but I personally think the worst part is that I still do not know how should I treat the roadmap (the key factor to bother). Is this just thing for developers and it's used as "window" for unity users?
    Do we actively participate in feature selection? Does this board even matter? Simply speaking, is this important board and feedback is considered as very critical or just bonus page to let people whine about missing features?

    If roadmap page is important, then it's a bit useless, becuase most likely 80% of people has no idea it exists or can vote (I think before it was possible to see number of votes and it was somewhere between 100-200 for most voted ones) and even if they know, they probably think this vote is not important or does not matter, becuase as @andybak said, page is not user friendly and makes an wrong impression of "you need this feature? pff, you can try to convince us, well whatever".
    Providing explanation and email every time is also barrier stopping me from voting, I lost interest at least 3 times because of this, for example when I need to explain why I need point light shadows in URP I simply lose my will and I going to do something else :rolleyes:

    Otherwise, if roadmap page is not important, then why should we even bother?

    What I am trying to say is you need to present the page in the way it should be - if this is the best place to put feedback, then advertise it everywhere this way, if votes are important then try to get a lot of them and throw roadmap into face of users and say "tell us here if you are missing features!".
    Additional note/example - there is card "Submit a new idea" and I think I did it once, but there was no feedback (I don't know if it was already known or card was actually made or no one just bothers to read it or maybe it didn't work) in result I lose even more interest and trust to this page.
     
    Last edited: Sep 7, 2021
    daneobyrd and VladVNeykov like this.
  11. Marie_G

    Marie_G

    Unity Technologies

    Joined:
    Mar 9, 2021
    Posts:
    76
    Hello, Thank you for the feedback on the roadmap system.

    Your concerns has been shared with the team and we will work on improving the experience in the future.

    The public roadmap helps us prioritize what will be our next tasks in VFX Graph's development and take in consideration user feedbacks and suggestions while doing it. I hope that the future improvments will help the users share with us, as it can greatly help us.

    Have a wonderful day!
     
    daneobyrd, andybak and Qriva like this.
  12. Matjio

    Matjio

    Unity Technologies

    Joined:
    Dec 1, 2014
    Posts:
    108
    Yes to build on what Marie said:

    Yes the public roadmap is very important.

    This is first a window to share what we have released, when and where features are landing, what we are working on, what we have planned but not yet started, and what we consider to do next.

    This is also one of various inputs to prioritize what we do next. Your vote, your use cases, your suggestions, and even your feedback when you are in a bad mood in this portal, all count. :) But count as well forums, social networks, direct interviews and exchange with studios, artists and developers, research, competitive analysis, as well as our own development teams vision and much more. And very often the different sources align.

    Now, the issue with discoverability: Indeed, we have not advertised it very actively, and this is exactly because of the various registering issues reflected in your comments. This is also mentioned on the roadmap welcome page in the form of a disclaimer at the top. We do our best to improve it as soon as possible, and will then advertise the public roadmap more broadly. In the meantime, we already have a decent number of votes and feedback on many features to get a first indicator of the relative importance of features.

    To sum up, sorry for the issues you experienced while voting and commenting. We would love for you to continue doing so as your feedback is directly taken into account in our decision making process. However we would also understand if you prefer waiting a little more for us to finalise the experience, and communicate globally about it.
     
    daneobyrd, Marie_G, Ruchir and 2 others like this.
  13. Qriva

    Qriva

    Joined:
    Jun 30, 2019
    Posts:
    1,307
    Hah, yeah I was really annoyed that time, because of missing feature. Anyway thank you for going in depth about roadmap, I think I understand now the role and reasoning behind all of this and definitely I will try to send more votes there. Thank you for your time!
     
  14. daneobyrd

    daneobyrd

    Joined:
    Mar 29, 2018
    Posts:
    101
    On sub-frame interpolation and the overall choppiness of particle/particle strip movement:

    An essential part of any future solution - whether it is sub frame interpolation or otherwise - would be to provide a UV mode that is set to tile in world space. I have seen several attempts to create this using the Custom UV option and creating a custom attribute, TexCoord, but none have achieved consistent or reliable behavior.

    Another UV mode that would be appreciated would be Tile Per N Segments. Currently the Tile Per Segment option has very few use cases.

    I see this as related because I often want my UVs for particle strip quads to correspond with smooth-spawning. UVs get distorted very easily when using particle strip quads with the discrete spawning
     
    Last edited: Feb 6, 2022