Search Unity

Amplify Impostors - Next Generation Billboards

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

  1. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Yes, it's an interesting case.

    Shader Model 3.0, should work on most devices but do keep in mind that it may not be fully supported by some OpenGL devices, depending on driver extensions present and features used.

    Awesome, thanks!

    Looking forward to those assets!

    It should work, Impostors can work individually, just as regular models.

    That's an odd one but, unfortunately, we're unable to support beta Unity versions. In any case, I'm not entirely sure if the issue is strictly caused by your sprecific Unity version(2018.1.0b13), we could really use some additional information.

    Is the problem present on a new empty project using that specific version?
    Does it work on your side using Unity 2017 or 2018 release versions?
    Are you using the latest Amplify Impostors version, 0.8.2?

    Average PBR material memory use; Depth excluded, you can actually select which channels to include; 1 texture per-channel(Albedo, Normal, etc) containing a set of views.

    Impostors use Alpha Cutout.
     
    Last edited: Jul 23, 2018
    MarcinFuero and recon0303 like this.
  2. serberusno1

    serberusno1

    Joined:
    Jan 28, 2017
    Posts:
    84
    Hey wondering if this can/will support metallic/roughness material values at any stage. Having trouble matching my original model due to values like this. I'm using Alloy as my shader for 95% of my assets currently
     
    Last edited: Jul 23, 2018
  3. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    That's interesting case, Alloy does allow for some additional control. Would it be possible to test one of your assets on our side?

    Thanks!
     
  4. serberusno1

    serberusno1

    Joined:
    Jan 28, 2017
    Posts:
    84
    Yeah sure, can you give me an email to send the files to?
     
  5. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Awesome, thanks!

    You can use our official support email support@amplify.pt
     
  6. serberusno1

    serberusno1

    Joined:
    Jan 28, 2017
    Posts:
    84
    Sent. Also, can you explain how lightmapping works? The last big problem I'm having is that I can't get the Impostor to lightmap correctly. The lightmap data shows a horizontal plane across the ground but my Impostor is an upright object.
     
  7. Roni92pl

    Roni92pl

    Joined:
    Jun 2, 2015
    Posts:
    396
    It looks amazing, Im wondering how it works? Impostors are almost impossible to diff from original model in your demo, is it really that perfect? There must be some drawback(lot of memory use?), if not it looks like ground breakinbg technology imo, could almost replace lods system, or even use almost-high poly models and make them impostor from like 15meters... sounds like dream :)
     
  8. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Was this with Alloy or Standard materials? In any case I did notice a few issues, I will pass it on to the developer asap.

    Thank you for reporting it.

    Depends on the technique used but impostors are camera facing quads, or simple polygonal shapes, that replace complex geometry at a distance by rendering a fake 3D representation of the original asset that can either be baked in-editor or created at runtime(soon). The great thing about this type of optimization is that it can be done entirely in-editor without needing to crunch your assets beforehand, you could conceivably bring in even higher-poly geometry specifically for Impostor creation(think large forests and buildings).

    The closer you are the more you'll likely start to notice possible differences, that's why it's best used when combined with an existing LOD Group that shows a mesh at close range. But don't let that stop you, it's a new package open to new and innovative uses, we look forward to see how far users will take it.

    Thanks!
     
  9. serberusno1

    serberusno1

    Joined:
    Jan 28, 2017
    Posts:
    84
    The baking problems are with Alloy. Imposters were either rendering as black silhouettes or not at all. And as for the lightmapping, it was with standard materials. Couldn't get them to lightmap properly. Perhaps if the imposters could grab the lightmapping data from the original asset and just bake it into the albedo, that would probably work
     
  10. Roni92pl

    Roni92pl

    Joined:
    Jun 2, 2015
    Posts:
    396
    Not gonna lie, was hoping for more technical answer :) Like how it's lighted perfectly like original, and intersect with other meshes even though its flat geometry, cast shadows like normal geo ? ;
    And most interesting is how you manage to make transitions between shots from diff angles so fluent, hard to notice?
    I know you can just make shots from really lots of angles but I guess it's not case here? ; Cheers and thanks for your time.

    Edit: I see you mention some surface components to bake, so Im wondering- is shader complexity/rendering cost increases with object's geometry counts?
    Talking about impostor ofc.(yes I know it's simple gheometry but geo it's not only thing that has to do with rendering costs)
     
    Last edited: Jul 24, 2018
  11. Roni92pl

    Roni92pl

    Joined:
    Jun 2, 2015
    Posts:
    396
    Moar questions: will price go up? You mention some artifacts etc when upclose that make it not suitable for use for close distance, could you do some little video/gif showing it? Like rotating this monkey head from like 5meters, or some more detailed object.
    Edit: I know u already showed rotating gif of monkey head, but it looks perfect, and also barrel in demo video, which negates what you wrote about replacing lods, imo looks like perfect for replacing lods, as far as I can see, and there are no artifacts.
     
  12. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thank you for elaborating, we'll get back to you as soon as we have any related developments.

    Apologies for the inconvenience.

    Hey now, are you a spy for our competitors? Joking aside, we're trying to keep this thread simple as you don't need any particular technical skills to use our solution, and the exact internal workings of our shaders is not something that we would like to discuss here at the moment. We do provide full source code if your are interested in examining it. The trick here, so to speak, is the clever way our shaders handle the available depth/normals information to replicate those intersections, light, and shadow - it's not a perfect 1-1 representation but it works pretty well for most cases.

    The smooth transitions are made possible using a technique known as Octahedron impostors. Be sure to check the link below for additional technical information; our package uses a somewhat similar implementation but in a Unity setting.

    Octahedron Impostors in UE4

    Shader complexity is not increased with higher polycounts on the Billboard Mesh used by impostors. Do keep in mind the billboard meshes usually have around 4-20 vertices, adjusting them slighting wont have a drastic impact on rendering cost.

    Amplify Impostors support GPU-based instancing



    We do plan to gradually increase the price as we add new features, low increments.

    We'll showcase those artifacts in our upcoming tutorial video, be sure to subscribe to our channel.

    You could potentially replace the lower LOD levels, that's definitely something that should work for a lot of assets, or even use it individually. What we meant is that impostors themselves are not a replacement for LOD systems.

    Let me know if you have any followup questions, I would be happy to elaborate.

    Thanks!
     
    Last edited: Jul 24, 2018
  13. Liminal-Ridges

    Liminal-Ridges

    Joined:
    Oct 21, 2015
    Posts:
    256
    Congratulations for your asset! I wanted to ask if its possible to include the impostors in lod groups. Its possibly already answered, but didnt manage to find it. For example i want to make a forest, can i include the 3d lod models and the impostors in one group?
     
  14. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thank you, we really appreciate it.

    Yes, absolutely! Impostors work great with any traditional LOD system - perfect for forests.
     
    Liminal-Ridges likes this.
  15. Kriszo91

    Kriszo91

    Joined:
    Mar 26, 2015
    Posts:
    181
    Hello!

    Congratulations!! amazing asset, i would like to ask, is it platform independent? also i would like to ask how can i replace my whole existing project with these baked assets? so if i bake a character, how can i replace in my current scene?
     
  16. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thanks!

    Yes, build once, publish to all compatible platforms.

    Depends on what you mean by replace as impostors are meant to be used at a certain distance.(e.g. with an existing LOD system)

    You'll be able to generate character(Skinned Mesh) impostors as soon as we introduce runtime impostor generation. Amplify Impostors handle the visual representation of your asset, all the logic involved(character controller, collision, etc) has to be managed by you.

    Let me know if you have any additional questions, I would be more than happy to elaborate.
     
  17. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Happy to announce that we just rolled out a new Amplify Impostors update, be sure to try it out and let us know if you run into any issues.


    Amplify Impostors 0.8.3 - Asset Store - Amplify Products

    Fixes
    • Fixed issue with spot/point lights not casting shadows properly
    • Fixed issue where the emission texture would randomly bake a white texture
    • Fixed issue of albedo texture becoming darker when project was in gamma space
    Improvements
    • Baker no longer changes the read/write option of texture importer
    • Emission and Specular textures now default to black when not present

    Looking forward to your feedback!
     
    JoeStrout likes this.
  18. Roni92pl

    Roni92pl

    Joined:
    Jun 2, 2015
    Posts:
    396
    Im interested only in runtime generated billboards; any ETA on that? ;
     
    Liminal-Ridges likes this.
  19. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    No official ETA at the moment, probably a couple of weeks; less than a month.
     
    Liminal-Ridges likes this.
  20. Amplify_Paulo

    Amplify_Paulo

    Joined:
    Jul 13, 2017
    Posts:
    297
    Hi there, just to clear some confusion and to give you a more technical answer, right now we don't support static lightmap baking. This is due to the way baking works in unity in general. I noticed that our manual was being too generic with the word so I've changed for transparency sake. Now, this doesn't mean you can't get it to work, and in fact they do work, but the visual result is not totally correct. And you are right, we could just bake out the contribution into emission or the original lightmap uvs into yet another texture, for now tho we'll be focusing in allowing you to bake custom data so that these cases and other custom ones are supported and easily achievable. The solution right now is to do it like regular LODs where only the first has baked lights. Unity has a nice tutorial here.

    Can't give you any eta for alloy support, but I suspect that by allowing you bake out custom data that case will be automatically covered so thats one reason that has priority now. thx for your patience :1

    - Paulo
     
  21. Justin_Wingfall

    Justin_Wingfall

    Joined:
    May 15, 2014
    Posts:
    125
    what about lw / hdrp if you dont mind me asking?
     
  22. lolclol

    lolclol

    Joined:
    Jan 24, 2013
    Posts:
    212
    i don't know whats the reason but it heat up mobile device.
     
  23. roseportalgames

    roseportalgames

    Joined:
    Aug 9, 2017
    Posts:
    173
    Hey guys,

    Building to Android works great now!

    However the Impostors blink or disappear while playing... I re-baked just to be sure after the update and I still have the same problem. See-



    The first one is at 00:10, a little boy blinks and disappears on the right side. The other times are more obvious.
     
  24. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Coming very soon!

    Not sure what to tell you, they work just as any other 3d asset. How's it performing without them?


    That's odd, are you using a LOD group? Can we test that specific asset on our side?

    Thanks!
     
  25. roseportalgames

    roseportalgames

    Joined:
    Aug 9, 2017
    Posts:
    173
    Hi Ricardo,

    I'm not using LOD.

    Sure, do you want me to send you the entire scene so you can hit Play and see what happens?
    It works in the Editor, though.
    Or should I just send you the impostors?
     
  26. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    A project, ready to test, would be awesome!

    Thank you.
     
  27. roseportalgames

    roseportalgames

    Joined:
    Aug 9, 2017
    Posts:
    173
    I've sent the e-mail to you. :)

    By the way, what setting should I change to get rid of the dotted grid in the Impostor from a far distance?

    It's an octo bake, 16 axis, 24 frame padding.
     

    Attached Files:

  28. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Hello,

    Are you using a LOD Group there?

    Thanks!
     
  29. roseportalgames

    roseportalgames

    Joined:
    Aug 9, 2017
    Posts:
    173
    Yes! :)
     
  30. Olafson

    Olafson

    Joined:
    Aug 7, 2012
    Posts:
    255
    Hey. I am wondering if the asset works in unity 5.6? It was submitted with 2017, so my chances are quite low that it would work with 5.6. But maybe it does? :p

    Thank you
     
    twobob likes this.
  31. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    You'll have to disable Cross Fade in order to avoid the dithering effect.


    I'm afraid not, 2017 is a hard limitation.

    Apologies for the inconvenience, we would love to support 5.6 but it's really not possible at the moment.

    Thanks!
     
  32. Amplify_Paulo

    Amplify_Paulo

    Joined:
    Jul 13, 2017
    Posts:
    297
    Hi everyone. Once again this is mostly a bug fix build, most notably the long standing issue of the disappearing impostor when looked at from below. Thank you for your reports, keep them coming.

    We also added an experimental option/fix of sorts. In some rare cases the impostor will exhibit these small artifacts at the edges so this is will permanently get rid of them, however there's an increase of instruction count and we didn't want to waste a keyword to toggle it on or off for something that rarely happens, thus we added an option in the .cginc file in case you need it. For more information on how to deal with it check our FAQ entry.

    Amplify Impostors 0.8.4 - Asset Store - Amplify Products

    Fixes
    • Fixed disappearing impostor when looked at from below it's local axis
    • Fixed issue which would import the same texture twice in rare occasions
    • Fixed compile issue when upgrading to 2018.2 and then downgrading to a different version
    Improvements
    • Added experimental option to the cginc file that clips neighbor frames to remove rare artifacts
    • Added normal compression option which allows to change texture compression quality at import
    • Added tooltips to every field in the inspector
    • Updated Impostor Node with the latest changes and fixes
    Have a great weekend!
     
  33. laurencew

    laurencew

    Joined:
    Jul 24, 2012
    Posts:
    7
    Looks very promising. Would it be possible to confirm if Vegitation Studio is / will be supported?
    Thanks
     
  34. derkoi

    derkoi

    Joined:
    Jul 3, 2012
    Posts:
    2,260
    Great asset as usual, Purchased. Thanks.

    Started converting my Game Objects in my mobile game then realised it creates 4 x 5mb textures per object. Looks like I'm going to have to use it sparingly on mobile. :(
     
  35. roseportalgames

    roseportalgames

    Joined:
    Aug 9, 2017
    Posts:
    173
    Really? Cross fade is weird then... I can never get it to work properly. I turned it off. :)

    Impostors works excellent on my iPhone. The only issues I have are on:

    LG V20 (the Impostors blink and temporarily disappear sometimes, really need to find a solution for this)
    Lenovo A1000 (some of them have their mesh appear purely black as if the material is missing, but this phone is kinda old and cheap so...)

    It works fine on my Galaxy S5 and Sony Xperia Premium.
     
  36. friuns3

    friuns3

    Joined:
    Oct 30, 2009
    Posts:
    307
    so currently you can't bake mesh that have custom tree shader? i tried it didn't work, alpha channel is all black
     
  37. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Should work just as any other mesh, be sure to let us know if you run into any issues.

    Thanks, really appreciate the support!

    What size are you using? Texture usage should be average, comparable to other PBR materials.

    As I mentioned via email, we might be hitting an actual hardware limitation on the Lenovo A1000. Impostors require Shader Model 3.0, meaning that it could work in OpenGL ES 2.0 but it depends on driver extensions present and features used.


    Depends on what you're using, can you share a sample?

    Thanks!
     
  38. friuns3

    friuns3

    Joined:
    Oct 30, 2009
    Posts:
    307
  39. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    friuns3 likes this.
  40. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    I have found that Amplify Imposters is not compatible with Unity's "Nature Shaders". The two that I have tested in particular are "Tree Creator Bark" and "Tree Creator Leaves." It does bake, but it doesn't look right.

    "Standard" shaders (good):


    "Tree Creator Bark" and "Tree Creator Leaves" shaders (bad):
     
  41. Teosis

    Teosis

    Joined:
    Jan 24, 2018
    Posts:
    22
  42. derkoi

    derkoi

    Joined:
    Jul 3, 2012
    Posts:
    2,260
    Well, I was using the default size but shrank them down to 512 for mobile platforms, but the quality dropped, as expected. Thing is, I was using Lods, so i still need my original PBR materials as well as the impostors.
     
  43. N00MKRAD

    N00MKRAD

    Joined:
    Dec 31, 2013
    Posts:
    210
    ...I mean, yeah, it's stated on the store page that it only supports Standard right now.
     
  44. eastes

    eastes

    Joined:
    Sep 1, 2012
    Posts:
    59
    Thanks for the answer! It works perfectly fine in a new project using Unity 2018.2.1f1

    I updated my project to Unity 2018.2.1f1 and the error was still present. So I reimported the Amplify Shader Editor and Imposters and everything works fine now.

    Thank you :)
     
  45. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389


    We're currently focused on our immediate roadmap tasks but we're creating a 3rd-party compatibility list so that we can keep track of packages of interest. Both your request as been registered, we'll contact you as soon as we have any related updates.

    Advance Foliage Shaders are currently untested.

    Nature shaders seem to be currently incompatible, we'll be running a few tests in the coming weeks.

    It does support other shaders as long as they use a Deferred Rendering path; some might require a few tweaks but that's something that will improve in upcoming versions.

    Do keep in mind that Impostors work both on Forward and Deferred rendering, Deferred is only required for the baking process.

    Happy to hear it, thank you for the update!



    Thank you for all your feedback.
     
    Last edited: Jul 30, 2018
    Fab4 likes this.
  46. Kriszo91

    Kriszo91

    Joined:
    Mar 26, 2015
    Posts:
    181
    Hello!

    I just boughted and imported this awesome asset, but i get 7 error after i imported, unity version 2018.1.0f2.

     
  47. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thank you for your support, we really appreciate it.

    Do you have Amplify Shader Editor in the same project? Is so, updating it and re-importing the Impostor package should correct it.

    Thanks!
     
  48. Kriszo91

    Kriszo91

    Joined:
    Mar 26, 2015
    Posts:
    181
    Thank you,

    It's solved the errors :)
     
  49. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Happy to hear it!
     
  50. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    Thanks I appreciate it. If it could be made compatible with the nature shaders that would be great! :)