Search Unity

  1. Looking for a job or to hire someone for a project? Check out the re-opened job forums.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

[BETA RELEASE] Amplify Impostors

Discussion in 'Assets and Asset Store' started by Amplify_Ricardo, Jul 10, 2018.

  1. kloogens

    kloogens

    Joined:
    Jul 1, 2015
    Posts:
    91
    ImpostorComparison2.jpg ImpostorComparison.jpg

    Sure mate. Here is the screenshot. This issue is uniform, it does it for all objects I've made an impostor for thus far.
     
    Last edited: Mar 4, 2021
  2. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    That's odd, should be pretty close. Can you send us that asset for additional tests? (model, material, textures, impostors asset and textures)

    We're available privately via support@amplify.pt
     
  3. kloogens

    kloogens

    Joined:
    Jul 1, 2015
    Posts:
    91
    Yeah, I'm happy to send you a model, but perhaps it is something else like a project setting or something? I say that because it is doing this with all the models I impostor, different models created by different publishers if that helps.


    Edit: Okay I created the package but I get tons of errors when I import it into a new project and it doesn't work.

    The original project is huge so I can't send that.

    Electric Bagaloo Edit 2: Okay I got the package working. Sent to address above. Email will be from kloogens@.....
     
    Last edited: Mar 5, 2021
  4. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157

    Thanks for sending it over, we just got back to you. Feel free to continue the conversation via email, I'm just going to share this here for reference.

    upload_2021-3-8_11-4-41.png
    (Impostor on the left)

    From our very simple test it seems to be working as expected. This would hint that something on the actual scene configuration/lighting, or post processing, could be affecting the impostor. This does not of course exclude the possibility that the issue in on the Impostors side, but we're going to need additional details, as requested via email.

    Thanks!
     
  5. Image3d

    Image3d

    Joined:
    Jun 20, 2008
    Posts:
    116
    HI Ricardo...I need a Terrain vegetation tutorial...
     
  6. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Hi, that's a bit broad, can you be more specific?

    There are no special requirements, you basically create your trees and use them on the terrain.
     
  7. modernator24

    modernator24

    Joined:
    Apr 7, 2017
    Posts:
    84
    Is this not work for vertex lit shader and mobile shaders? I purchased this to optimize meshes in my mobile game, however, baked impostors look terrible, regardless its size. Each object in my scene has a large number of vertices and causes massive performance impact in some devices. I really wish to use this in my mobile project.
     
  8. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Hey there!

    As mentioned in the product description and wiki, Amplify Impostors requires a Deferred shader for baking; this is usually the problem most users encounter. The alternative here is to use a compatible shader for baking, such as the Standard Unity shader. Alternatively, if you're experienced with shader development, you can also look into creating a Custom Bake and Runtime shader with our editor; this is an advanced topic, I don't recommend it unless you have previous shader development experience.

    What shader do your assets currently use?

    Please feel free to reach out to us at sales@amplify.pt if you feel that Amplify Impostors is not right for your project.
     
    PutridEx likes this.
  9. ubailey

    ubailey

    Joined:
    Nov 25, 2014
    Posts:
    24
    Hello, im using this with the Cscape City system but my imposters are coming out white like in the following images.






    Any assistance is greatly appreciated. I dont know if the links are working but the iumages are attached as well.
     

    Attached Files:

  10. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Hi, probably the issue I just mentioned above. Is it using custom shaders?
     
  11. ubailey

    ubailey

    Joined:
    Nov 25, 2014
    Posts:
    24
    Yes I believe it is.
     
  12. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Probably not compatible; try using the Standard Unity shader/material.​
     
  13. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Spring Sale is upon us!

    50% OFF all our products, bundle or individually. Be sure to use code SPRING2021 for an additional 5-10% OFF on purchases over $100. (for all assets on sale, not just ours)

    Learn more: Asset Store
     
  14. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    166
    I've had a slightly crazy thought: I am building an environment that has a lot of very large trees. I don't need the ability for the player to get up into the canopy, so the viewpoint is always going to be > 10m for the leaf canopy, but I do want the trunk and major branches to be fairly detailed, at least not obviously cubes or octagons or billboards. Is there some way that trees could be constructed so that up close they were a detailed trunk mesh + a bunch of imposters representing the leaf canopy, and as you got farther away they turned into more traditional imposters/billboards, i.e. a single imposter for the entire tree?

    Specifically I'm trying to model a large number of Southern Live Oaks (large open understory with a crown spanning 25m and 15m tall) and slash pine (18-30m tall), so from any vantage point most of the tree will be far enough away that there is no need to use full geometry. Things would be easy if I could create a fully detailed model in Blender and then bake parts of it to imposters (e.g. sections of the oak canopy, or branch clusters with fully detailed pine needles for the slash pine) but I understand there are certain limitations on the shaders, and I don't know if that level of details (potentially 10s of millions of vertices) is compatible with wind, etc. in Unity (and am I going to lose the wind when I convert to an imposter?). Essentially treat a tree as a trunk and branch structure with full 3d bushes stuck all over it. I realize that's kind of what many tree generators do (e.g. M-Tree uses a quad structure to represent a complex, albeit, flat, branch structure), but I'd like to take advantage of the improved visuals of imposters to boost the appearance of my tree canopy.

    Has anyone tried anything like this? It seems that for trees it's an all-or-nothing proposition with imposters, at least for out of the box solutions. One thought is literally doing the trunk and bush thing -- don't create a single tree, but instead create several detailed "bushes", and then stick those all over the trunk structure, but it's less automated than using a tree generator (M-Tree, SpeedTree, etc) or Blender particle systems, although I suppose that might allow the LOD system to kick in at a sub-tree level.

    Thoughts? Suggestions? I'm probably going to give it a try in the next few weeks if nobody says "that's not going to work/get you the results you're hoping for and this is specifically why" under my usual modus operandi of "too dumb to know I can't do that."

    Thanks!
     
  15. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157

    Hey there!

    Sounds like a good use for Impostors, it just really depends on how close do you need them as the effect starts to breakdown when you're too close.

    In any case, it's fully compatible with Unity's LOD system, you can think of impostors as regular meshes. You could very well have a Master LOD group(mesh and main impostors) with other sub-lods to swap between sub-meshes and their impostors.

    Really up to your requirements, just be sure that you're using a compatible shader such as the Unity standard or speedtree.
     
  16. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    166
    I'm assuming the Vegetation Engine shaders are also okay (I bought that add-on).
     
  17. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Right you are, my bad, should have mentioned that as well; I was listing only what you get on Vanilla Unity.

    Vegetation Engine and the Impostor Add-on are by far the most reliable solution give that it's fully compatible with our custom shader requirements.
     
    PutridEx and colin_young like this.
  18. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    166
    And to think I only bought TVE because I'm lazy and didn't want to bother having to figure out 15 different vegetation shader systems :)

    On a related note, have you seen Jason Booth's new Better Lit Shader? Will it be compatible with Amplify Imposters?
     
  19. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    551
    Just bought this but it seems like it is not working on HDRP11 is this the intended behavior?

    All shaders are pink. Or am I doing something wrong?
     
  20. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    That's an interesting question, possibly; however we've not tested it with Amplify Impostors yet. (soon)

    Not the intended behavior, assuming you opened the HDRP samples.

    Did you import the HDRP package? http://wiki.amplify.pt/index.php?ti...y_Impostors/Manual#Scriptable_Render_Pipeline
    ( AmplifyImpostors\Plugins\EditorResources\RenderPipelinePackages )
     
  21. Jumpovertheage

    Jumpovertheage

    Joined:
    Jul 13, 2016
    Posts:
    2
  22. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Hey there, I don't think that's going to work. Currently, standard baking is only supported if the shader exposes a Deferred path, such as Unity Standard shaders, as described in the project page and wiki; most custom lighting solutions for toon rendering are forward only.
     
  23. Jumpovertheage

    Jumpovertheage

    Joined:
    Jul 13, 2016
    Posts:
    2
    Ok, thanks for the quick reply. I think I was too eager to jump on what looked like a perfect solution!

    Is this something likely to change in future, or is this a fundamental issue with the way the impostors work?
     
  24. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    Hey no problem, be sure to contact sales@amplify.pt if you find that it does not fit your requirements.

    I don't think this will change in the near future, it's currently tied to the way the bakes are done on our end.
     
  25. Sprawl

    Sprawl

    Joined:
    Jan 19, 2014
    Posts:
    30
    Hi,

    So far, I've been very impressed with this asset. The workflow is really simple and intuitive ! There is one little thing I'm trying to figure out.

    I'm using the Legacy pipeline and I'm looking to modify the runtime shader of the impostors. Specifically, I need an unlit shader. When I create the impostors, the objects already have an Unlit shader so the AlbedoAlpha texture is almost exactly the render I'd like it to have.
     
  26. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    166
    A data point: apparently trying to bake an imposter from a mesh with 20 million + vertices can crash your system (MacOS, 16GB RAM).

    I should probably check my mesh sizes before trying to bake. Whoops.
     
  27. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,157
    That's very relative, you can bake several millions of polygon. What can be an issue is memory when baking textures over 4k. 20 Million shouldn't be a problem, which resolution did you use? Is it a single mesh or multiple objects and materials?

    In any case, please elaborate, we'll run similar tests.
     
  28. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    166
    Interesting. I just assumed I was trying to do something unreasonable. I do know I missed a few steps in importing the TVE shaders (initially I didn't use the TVE shaders in the baking, and then when I figured that out I forgot to import the URP shaders), and I left things mostly at default settings. I was trying to bake a single mesh (the leaves) only. I realize that's probably not the best approach for visual reasons, but I wanted to do a quick and dirty test of the imposters, and I had misread my statistics in Blender and underestimated the number of vertices involved by at least an order of magnitude.

    My system isn't exactly a powerhouse: 2019 16" MacBook Pro 8 core i9 w/ 16GB RAM, AMD Radeon Pro 5500M 4 GB/Intel UHD Graphics 630 1536 MB (although I really hope it was using the AMD). I also did a naive/dumb straight import from Blender after simply converting my particle system to instantiated objects. Unfortunately this Blender model also has another tree model in it that also has individual pine needles modeled for a rather large pine tree, in addition to the large oak tree (with individual leaves) that I was trying to bake. I may have forgotten to unpack the prefab and delete the additional geometry before attempting to bake, or I may not have. The performance of the editor otherwise was surprisingly decent even with the monster of a tree model that I had imported.

    I've since rethought the workflow and am working on a script to post-process and use stand-ins from Blender for the particles, then swap in the real particles, which I've previously baked to an imposter from a detailed model of a branch with individual leaves. It really is quite a mess as I'm experimenting both with creating trees in Blender and trying to bake imposters in Unity, all at the same time. I should probably clean up my workflow a bit, even if just for my own sanity.

    If you are interested I'd be happy to share the Blender model or a Unity scene demonstrating the issue (assuming I can reproduce it after cleaning up a bit and starting a fresh scene).
     
unityunity