I’m currently working on a unity VR project where the player flies over a terrain with lots of trees in it. Since simple billboards do not work in this case, I am considering to buy your ‘Impostor’ Asset Package from the unity store to increase my framerate.
In my scene I am using a Unity terrain (generated with with Gaia) using two of the default SpeedTree assets bundled with Gaia (and Unity I suppose) natively. They seem to be non-editable and pre-packaged in some way (it’s a SPM file) and produce slight hue variations with every tree that’s placed.
On your FAQ page for this product you state, that SpeedTree assets are indeed supported and even maintain the hue variations. Does this also apply to the free 'pre-packaged' ones included in Gaia/Unity or is this only true if I am using the full 'SpeedTree Modeller' (which I don’t have) where I can edit the trees themselves?
Assuming that's the case, is it possible to either replace the Lowest-Level LOD / the billboard in the 'closed' SpeedTree file with the created impostor? If that does not work, is there any other way to combine the impostor with the existing speed tree to achieve a similar effect?
Hello, thank you for getting in touch and for your interest!
I'm not quite sure if you can replace the billboard in the closed SpeedTree file as I haven't had the chance to test this ( yet ), but Amplify Impostors generates a quad that can be used by itself or with other LOD systems. I assume that, as long as you can modify the SpeedTree file or add a quad to it, our impostors should work. Do you know if that's the case?
Sadly enough, I can not directly edit the SpeedTreee SPM files as they are now. But I found a little workaround for this: If I make an instance of a tree inside a scene (from the SPM file), then I can change it in the editor (e.g. add a new model or sprite to the LOD group) and re-export it as a (new) prefab. When I use the newly created prefab instead of the original SpeedTree package as a tree resource for my terrain, my changes are present in every one that's place on the terrain. This tree prefab even keeps the property of slightly changing its hue-values in every instance (the variation seems to be calculated based on the transform / the location of each tree).
Does the impostor created with your system change its hue value with the model (like the billboard does)? If I recall correctly, in your FAQs you state it does. I just want to verify that again since that's a crucial feature in my case and a similar open source solution I tried in the meantime did NOT support this.
Apologies for the delay in our response, impostors will take into account the values of a shader by default when they are baked, such as the Tint, for more specific needs you can also create your own custom runtime and bake shaders.