My original file was a .obj. from fragmotion.
When I take just the mesh, drop it into the scene it show nice. But when I try to use it as a paint brush tree tool, I get that message:
The tree test4 couldn’t be instanced because the prefab contains no valid mesh renderer.
I tryed a .blend (blender) file, got same message.
I tryed as paint detail mesh. Nothing show up too.
I’ve tried this tree several times, I can add it as a painting instance but no image of it shows up in the painter. It has the filter and
renderer, it shows up as a single item. Just to copy and paste the
tree several million times would be bad for frame rate? |P
I have log a problem with Unity support, they sent me 2 email, they still trying to fix it.
By the way if you go on the island demo and look closely some vegetation, you will notice a thin black line around each plane. I log a problem on that too, cause I got the same result. If we all log problems for those they will look it over.
I have the same problem:
When i want to paint trees (made in Blender)i’m getting horizontal position and message in the console : The tree TreeUnity2 couldn’t be instanced because the prefab contains no valid mesh renderer.
I tried with .fbx, the result is the same.
I also noticed that my imported tree files has a prefab (child) in the prefab (parent), but trees from unity assets folder (Palm in this case) has only one parent prefab (marked in the screenshot). I tried to make child prefab (which contains all wanted components including mesh renderer) a parent, but i can’t do that, and i dont know is this possible, since this prefab objects imports in that state directly from Blender…In Blender the tree is one mesh with two materials like it supposed to be.
Also, when i add tree in the terrain tree paint menu in the inspector, the tree is not visible (marked in the screenshot)
The thing is i searched about this kind of problem and i don’t know exactly anymore is this a bug or not.
Some people say this is all about coordinate system differences between 3D apps and Unity and we have to rotate objects in 3D app so Y axis points up for mesh objects…(which i must notice sounds rather stupid to do every time if you want to import something in Unity).So I tried to export tree (from Blender) pointing in different directions and the result was always the same (tree lays down always pointing to the left, Unitys Z axis) so obviously for me any kind of rotation does not work…
So i don’t really know is there a solution for this or is it some kind of bug?!
And I thought painting trees in Unity would be so simple…
:roll:
The problem was that i didn’t know i have to use Apply transformation ( CTRL+A ) in Blender after i rotate my Trees axis, so that it fits Unity engine orientation. This solved painted trees orientation in Unity…
But i still scratch my head trying to understand the reason why Unity use Y axis for up while all other 3D applications use Z for up.
There’s no real standard in regards to that. Some use left handed systems, some right. In some y is up, and in some z is.
It’s not like Unity is the first ever program to do it this way And normally when you work with x,y,z on paper in math, y is up axis. So I would rather ask, why some 3D programs initially chose to put z as up…
But as a 3ds max graphics artist, I totally follow your annoyance in this issue, even though I blame 3ds max instead. I have just learned to live with it, and today I don’t think about it at all…
Hi - I’ve figured out how to add meshes as trees/foliage for the terrain editing (in case anyone else had trouble):
Imagin you’ve just added your Blender mesh to Unity, you will end up with something like:
Tree1
__Tree1
__Tree1 (Mesh)
When you go to add a mesh to the tree-list in the terrain properties, drag this tree item from the Project window to the property (ie don’t select it from the drop-down). The important bit is to NOT drag the parent Tree1 item, but just the child Tree1 (not the mesh).
I am new to Unity and just spent 3 days trying to get an evergreen tree (many trees) from Blender into Unity. I have been able to get 1 tree to import both by saving it as a Blender file and exporting it as an FBX file and place individuals on the scene but not paint them on as others have had problems with here. I tried your solution, but without luck. Any other ideas? I can’t have a palm tree since my island is placed in the pacific northwest. This is the only place on the internet I have found related to my problem. Help! By the way. write slow, I’m new.
Does the problem seem to be with the import process or the creation of the trees? When you say you are having no luck with the solution, can you describe exactly what is going wrong for you?
When I save a tree from Blender or export using FBX then put into unity I can place the prefab onto the scene. However, when I add the tree in the under Inspector/Terrain/Terrain (Script)/Place Trees/Edit Trees I just get a blank blue box instead of an image of the tree. When I go to paint the tree onto the terrain I get nothing. I have tried this with maybe 20 trees with every export setting under Blender, plus some trees I found with other formats without success.
I have included the tree I have had the most success with plus an object that I want to have in an underwater scene I am working on. Any help would be greatly appreciated.
I’ve tried this for hours and it looks like a blender export problem, because I can import
the same tree into 3ds max 9 and get a paintable tree out of it, only it’s lying on the ground,
here’s the max 9 file and the fbx, if someone could get it standing upright? It might be possible
to use anything that makes an obj and 3ds file using the max fbx converter. It doesn’t matter
how I rotate it in max, or whether I check z is up , y is up in the fbx exporter, the trees are
still lying down.
K, I got it working, I loaded tree_dead_obj.obj into the fbx converter 2010.2, and asked for a
destination format fbx 200900 save mode ascii. Maybe other apps that make obj’s can use
this converter also.
Later: no other obj’s would make trees, only fbx’s I’d made in 3ds max 9 and
then converted. Tried the latest fbx converter 2011.3.1, same result. This is really a bad bug,
The only way I could get a tree to paint is to convert it to the 2009 ascii version, then it’s 100 times
smaller and lying down compared to the same tree as a regular model. Is there a big
rendering difference between just copy/paste models and tree painting? I would want my
trees to at least be rotated differently, tree painting looks bad compared to the grass painting.
I was about to post here asking if anyone had any luck getting Blender trees to work in Unity at all because I thought I still wasn’t seeing any result, until I remembered seeing the tiniest of speckles after painting the past few brush strokes. I had to use both Veles’ suggestion to use Apply to the rotation transformation using CTRL+A in Blender after rotating my tree to point up along the Y axis as well as using Orbital Fan’s suggestion to drag the “child” of my imported tree asset from the Project window into the Add Tree window.
Right after I posted my question here, I went back and zoomed way way in, and sure enough, just as hike1 is seeing, my trees were in Unity, but they were so microscopic I had missed them. I threw in a Character Controller and pushed play, and it turns out they were about ankle high. Adjusting brush size even to 200 and scaling up the asset in Unity doesn’t seem to change it. At least mine were upright thanks to Veles’ suggestion. I was also able to fix the scale problem by going back into Blender and increasing the scale of my tree and also doing Apply to the scale using CTRL+A again. Changing the scale or rotation doesn’t seem to “stick” between Blender and Unity if you don’t do this step.