help,the tree became Pink Billboard

Since I use Unity 3, all my tree (with terrain) become pink when they swap to billboard version. And only on the webPlayer, on Unity Editor it's ok.

check the log it says:

shader 'Nature/Tree Soft Occlusion Bark': dependency 'BillboardShader' shader 'Hidden/Nature/Tree Soft Occlusion Bark Rendertex' not found

Shader 'Nature/Tree Soft Occlusion Leaves': dependency 'BillboardShader' shader 'Hidden/Nature/Tree Soft Occlusion Leaves Rendertex' not found

please help

I'm sort of new at this, but I've had similar happen. May be these problems:

1) You accidentally deleted your Bark texture shader and leaves texture. When a material is deleted and has nothing to replace it, it becomes pink. ?

2) I'm not familiar with using the web player, but I assume you need to place the assets there that are missing.

3) You deleted the assets in your project folder, but not your hierarchy.

Hope one of these helps!

I tried the solution from RAB, but to no avail. I posted my response to that forums thread as well. I can only eliminate pink billboards for the Trees that I add to the WebPlayer startup scene terrain (1 of each tree type)... this is not workable, since each tree seems to add 0.5MB or so of size to my webplayer.

I need to know the answer to a low-level question then, I think -- I am supposing that the billboards render using a generated texture (but has no asset file associated with it). How do I access this generated texture? I would love to save it out and include it somehow as a bundle.

Use Case is this: 1. Artists make a beautiful Terrain and Environment -- all stored beneath a single top game object. 2. Artists make this object into a Prefab. 3. Artists build this Prefab into an Asset Bundle. 4. Run-time we load and instantiate this Asset Bundle. 5. It works perfectly -- except for the PINK TREE billboards! Critical defect!

Your problem is caused by using AssetBundles (as you mentioned in the comments).

Here’s a workaround for that bug:
Create a dummy object which uses a material with the missing Nature (billboard tree) shader. That way the shader for the billboard trees is not being ‘neglected’ by Unity when building an AssetBundle.


use BuildPipeline.BuildPlayer to builder webplayer after all build scene, not use unity build, it will resovle this problem.
it looks like this:

BuildPipeline.PushAssetDependencies();

foreach scene in scenes

BuildPipeline.BuildStreamedSceneAssetBundle scene

end

BuildPipeline.BuildPlayer…

BuildPipeline.PopAssetDependencies();

I am seeing the exact same defect, except for my pink trees are showing up for PC Deployment EXE only (while they look fine in Unity Editor).

It concerns me to see that it's been a month with no answer to this problem. This is a very critical bug for us, since our whole outdoor scene now looks very bad (pink trees everywhere!)

I got excited to see the latest Unity patch "What's New" showed this line item: "Fix for broken tree billboard transitions"

So I tried this new version, but it did not fix this problem.

Our temporary solution is to ruin our scene view by largely reducing Tree visibility and turning off the bill boarding feature. I sure hope Unity will fix this bug soon, so that we can restore our scene to looking like it's supposed to.

Check out this forum post: http://forum.unity3d.com/threads/62633-Pink-tree-billboards-in-built-player-correct-shading-when-mesh-and-in-the-editor

It's not a fix, but it is a good workaround, try RAB's solution first, as it won't increase your initial download size noticeably.

check out this first http://unity3d.com/support/documentation/Components/terrain-Trees.html

after you go through that, and get re-acquainted with how to put the trees in game. Your problem has to do with the material that you're using.

Click on the object in your project, in the inspector look for Shader

it should say diffuse, but you need to change that to Nature/Tree Soft Occlusion Bark or Nature Soft Occlusion Leaves otherwise the billboard affect happens.

There's another thing that they say that you need to do is put the tree into a folder containing the words "Ambient-Occlusion" so that Unity applies occlusion to your trees.

Hope this helps