LushLOD Trees Support
Welcome to the support forum! If you are having any trouble with the trees, please be aware that LushLOD Trees is an early BETA product. There are still numerous glitches, and a lot of optimizations needed before these trees reach their full potential. In the mean time, I appreciate your patience!
- The trees have only been extensively tested on Windows platform.
- The Post-Processor leaves a pixel-size distortion in the leaves.
- Ultra quality isn't yet available for the TreeCreatorLeavesFast shader.
- The billboards can sometimes cast real-time shadows on the HQ tree models.
- The shaders use floats for everything, when lower-precision would sometimes work.
- The shaders need lots of optimization (they were made in Shader Forge).
- Billboard tree trunks don't always line up with HQ tree trunks on leaning trees.
- Parent trees aren't always positioned in the most optimal locations.
- The post processor performs more Blitz operations than may be necessary.
- The post processor samples more pixels than may be necessary.
- The trees do not always respond to real-time shadows from every source.
- More documentation is needed.
- No support for SM 2.0
You can help me make these trees truly awesome by posting any bugs or glitches that you find. Before you submit a new idea or bug, please run a search first to make sure that your issue hasn't already been addressed.
So we fixed the problem with actually building an apk with Lush in our project but when we install on a device the trees just show as black planes on the tree branches (see attached image)
I know you have said that that this has not been tested on mobile and I also know that we will probably not get a fix in time for us to include in our build we are pushing tomorrow - which is really unfortunate as I really like your system. But have you any suggestions or ideas for why this is happening and what can be done to fix it?
We have tried enforcing OpenGLES 3 when publishing and are publishing to Android 7.0.
ANY help or ideas will be really great. Thanks in advance.
We are making a flight simulator. We need lots of trees and I created billboard trees from your models and materials. I placed the trees on the entire terrain with Gaia as seperate game objects and mesh baked them in groups. However after I bake my scene lighting, trees get black. When I import your asset again, trees go back to normal color. But when I re-open the scene, trees get back to black. I am using LushLODTree/Tree_Leaves2 shader. Can you help me?
Looking at your trees and the way they blend in VR is epic. I am having issues setting the whole system up. I get this message on the trees manager that says I dont have a camera enabled and it doesnt go away even after I enable a camera. Im running it on Unity 2018.1.0b12
Before posting I ran a few more tests and it works fine in an empty scene, but it doesnt in my main scene. Even after adding a camera called "Main Camera" it still didnt work. Any ideas?
I found your asset on the unity assetstore and it said that LushLOD is VR compatible.
My only question is whether or not trees have "artefacts" when you look at them with a bright light behind it. I have tried some other tree assets as well in VR and in-between the branches (leaves) you can see white light distorting the Anti-aliasing and bringing up annoying artefacts.
I wanted to try your demo scene to test it with my HTC Vive headset, but I cannot seem to run the .exe file in VR Mode. Can you provide me with some feedback on how well this pack works in VR?
I'm having a bit of problems with wind. Only leaves seem to be affected by wind zones, while the branches aren't affected at all, neither by main wind nor turbulance. This is unfortunate, because it makes the leaves appear disjointed when there's wind.
Another problem I'm having is that the shadows in the leaves are flickering a lot as they move in the wind, more notacible from certain angles. The flickering gets worse as the wind speed declines (though completely stops when there's no wind at all).
I'm using instantiated trees, not hand placed, so I had to modify the script a bit (we worked on this in a whole other thread) and therefore no baked shadows, only realtime. I've tried everything, including disabling ambient occlusion on the trees before converting them, but nothing seems to work. Any ideas what might be causing these issues?
I'm having troubles with runtime instantiation. I'm building a game with a huge map (roughly 100x100 km), so there aren't any hand placed trees, they're all generated. The way it works is by generating and instantiating all trees within a given radius around the player when the game starts or the player fast travels (they're all instantiated during Start(), or during a single Update() frame). Then as the player moves and reaches a certain distance from the spawn point, a new radius is generated. All trees that doesn't already exist, within the new radius, are then generated and instantiated, while all trees outside the radius are disabled and pooled for future use.
I get that LushLOD recalculates parents whenever new ones are added/existing ones are removed, and I've taken care of that issue by returning from the RecalculateParents() function prematurely if there are still trees being generated.
My problem is that I haven't managed to successfully run my game with the LushLOD Manager added to the scene; it just hangs whenever I hit play, and eventually I have to Ctrl+Alt+Delete my way out of it. Without the manager I can run the game just fine, and instantiate my LushLOD prefab trees just fine (though of course it doesn't transition from billboard to mesh, or vice versa, as I move). I even tried disabling the RecalculateParents() function entirely, and it still hangs when I hit play, with the manager on scene, so the recalculations aren't even an issue. It's only a couple of thousand trees, so it should work right? What's going on?
Additional question: would it be possible to skip the manager entirely, and have each LushLOD tree handle itself independently without costing too much CPU power, sort of like how SpeedTrees work? To be completely honest, that's what I expected when I bought this asset, as I wanted a solution that wasn't subscription based (and this is no critique of you, I should've read more about the asset I was buying, but I still wanna get what I can out of this), so that would be really cool!
I currently utilize Kyle Gillen's Dynamic Loading Kit asset to manage the loading and unloading of Terrain 'chunks' in my scene: My source Terrain is a 32 x 32 km behemoth (Game is a flight sim) that the kit splits up into 256 2 x 2 km prefabs, and then manages the loading and unloading of these prefabs for me at runtime. My trees are currently placed as terrain trees on the source terrain, and thus get split up along with the terrain itself (I place them via script, I ain't painting 1024 square km of trees by hand, there are almost 3 million of them :D ). But they look kind of atrocious - Popping from billboard to mesh at very close distances due to how many there are, and also popping into existence 5 km away (The furthest I can set my terrain instances to draw them at before my computer starts begging for mercy). So I'm looking for an optimization solution and LushLOD has me intrigued. A few questions:
1) If I switch over from terrain trees to LushLOD, can the LushLODTreesManager be adapted to work with dynamically loaded / unloaded terrain pieces? Reading the documentation here it sounds like the LushLODTreesManager may expect to be the only instance of itself in a scene. How would I / could I set it up to manage LushLOD trees that would presumably be loaded in alongside the terrain chunks (Gillen's DLM asset doesn't just load terrain, it can load objects that get populated on that terrain too)? If you require more info about the kit to answer this question I can probably provide it.
2) Can the LushLOD handle mega-extreme distances? As mentioned I'm currently drawing trees several km away (Probably 50k - 70k of them with maybe 25k in view at a time) and would like trees to be visible even further than that - Maybe twice as far. Any ballparks on potential performance improvements over similarly set up terrain trees?
3) Kind of an add-on to question #2, can LushLOD support additional LOD groups for those extreme distances? Say an LOD that billboards not a single tree but an entire parent group of trees?
I am currently using LushLOD trees in a scene with roughly ~700 trees + bushes controlled by the LushLOD manager. The trees are Unity TreeCreator trees from the asset store that were successfully converted with your one scene.
Starting the scene takes quite a while to finally begin and profiling it reveals that there is a huge amount of GC and nearly 2 million calls to the Start() method as shown below:
Out of curiosity, I did run the default GAIA scene bundled in your asset package and it doesn't hang nearly as bad even though it has more trees by the looks of its call count:
Is there something I may be doing wrong that is causing this? I will note that I have NOT done light map baking yet.
Hi Aaron and thanks for a great product.
I have loads of trees on maps, since I have "forests" in the game title, and when I realized the frame rate I'm getting with normal models, I searched for some optimized solution and found LushLOD trees on Asset store.
Your instructions on how to add them on a static map are great, and thank you for that, and for the all the comments in the code.
In my game, I want to add trees via my code (c#), since I'm generating a random world map. Voxel world, I set trees locations int x, y, z via noise map. Can you help out with that kind of LushLOD trees usage? :-)
I can reverse engineer your code to find out how to use it via code and insert into my game, but it'll take time, so I'd be really happy if you could write a small tutorial (doesn't need to be detailed as the other ones).
Thanks again and good luck
Customer support service by UserEcho