SpeedTree to Revit Progress

  • Edit: I realize this is sort of a showcase but for us this is an issue we've been trying to tackle for awhile...something I've seen others post about and so I thought I'd share our progress to add to the conversation.


    We've been dying for decent trees in Enscape. We tried SpeedTree->Archvision but found that we had little to no control over the custom RPCs (can't hide leaves, manage visibility graphics).


    We've settled on a SpeedTree->Dynamo->Revit and SpeedTree->AutoCad-> Revit hybrid that allows for both hidden line graphics control and Enscape as well. I've attached images of our hidden line tests playing around with leaf density....the autocad imports render mesh outlines only...which make them ideal for hidden line views...where the Enscape mesh would otherwise draw every single polygon and turn into a black mess of lines.


    We've just begun to work in SpeedTree but the ability to craft trees that look like our local species is HUGE for us and clients. We have tons of wiggly Live Oak trees in Houston and none of the trees I've seen available to Revit users comes close.


    We are pretty happy with this direction because though the file size is big (we always have to be careful...but we're becoming clever about ways to reduce size) we can make vegetation that looks like a recognizable tree and not a generic tree-like thing! I guess we're tree snobs....that said all of these trees are in progress and you can see the holes in the tree meshes due to us using trial software....


    Another thing you will notice is that we're using generic leaf materials (green) and simplified meshes for leaf shapes. SpeedTree is wonderful but generates heavy models...so we end up hiding most of the twigs etc before exports.


    I'd love to hear your thoughts on this ...this route takes time and I'm basically becoming a tree modeling guru...but it's produced the best results for our purposes.

  • I agree that the vegetation is a painful shortcoming at Enscape for Revit right now. We're working on a solution for proxy meshs in Enscape with various shippes ones, similar or identical to the ones from SpeedTree, thats not certain yet.

  • Impressive stuff, also very good looking in the Revit window!


    How may faces does one tree have? What's the dynamo mode you're using to get it from dynamo to revit?


    What's the impact on performance?


    Thomas Willberger :


    We'd definitely be interested in a subscription style library for an added fee, but we wouldn't like being locked into a proxy system where we can't add our own content as well. Are you considering a system where we can have both shipped content + custom proxies?


    This is one of the reasons why Lumion and Twinmotion are not as attractive to us: you're paying a lot of money because it comes with these big libraries, but only a small percentage of the offered content is useful to us. As designers we want to be free to create our own visual style if you will. For trees and plants we'd probably turn to shipped content, but for people, furniture, props etc we would almost certainly want to have custom items selected from places like 3dsky etc.


    Another interesting question: have you guys found any way to draw proxy content inside the Revit canvas. I guess you could only draw the bouding box but that would make it really hard to place objects, especially when there are a lot of them. Perhaps an option where we see a lightweight collision mesh or even a lowpoly version drawn by using the directcontext3d api in Revit? (although that same trick won't work in Enscape or Rhino).

  • Pieter


    The performance is affected in hidden line views for sure. We try to have our visually attractive trees also be the trees that we have on our tree removal plans etc....so these trees will show up but ultimately this geometry is hidden in plan so performance there will be fine.


    As far as faces go they have a lot. On our largest trees theyve got about 500,000 faces. Enscape runs perfectly however. Our smaller trees have about 100,000.


    For Dynamo I'm basically following this tutorial in part -

    You will need MeshToolKit and Spring Nodes


    The obj meshes in Revit draw every polygon - see image attached


    Imported DWGs draw only the outlines. - see attached


    Note: If you want to import DWG and control the materials by import layer once in Revit....you need to make sure that the layers are set to color BY LAYER before you import the dwg


    We have significantly reduced versions of the trees in DWG format that appear in course detail levels for hidden line views. That is what you see above with the three trees in a side by side comparison. We were comparing the cost/benefit of adding more geometry to the DWG models.


    Our Maple tree with over 100,000 polygons was 10mb as an OBJ mesh-based tree in Revit. These looked great in Enscape but we wanted something that looked OK in hidden line view as well. That same 100,000 polygon mesh exported as a DWG was over 100mb. You can see why we decided to hide all the branches and half of the leaves while leaving only the trunk in the hidden line views. Our total combined Maple tree was about 16mb with OBJ mesh and DWG meshes inside.


    I realize that for some folks having trees that heavy is crazy. It sort of is for us too. We are a small boutique firm with specific desires when it times to representation that would likely not fly at a larger firm.


    We would 100% buy good trees if they existed. Then they can keep me on billable work :)


    One more thing I just remembered....when we tried custom Archvision content...another annoying glitch was that the custom RPC used a box collider...so on our giant Oak trees in Enscape you couldnt walk anywhere within the dripline of the tree (because it drew a box to the extents of the entire tree model.....very dumb

  • Are you considering a system where we can have both shipped content + custom proxies?

    Yes


    I guess you could only draw the bouding box but that would make it really hard to place objects, especially when there are a lot of them.

    In the first step, that might be the case. But I also think we should come up with a silhouette like preview of it.


    These looked great in Enscape but we wanted something that looked OK in hidden line view as well.

    Thank you, we will take that into our consideration, I think it's similar to what Pieter suggested.

  • Yes


    In the first step, that might be the case. But I also think we should come up with a silhouette like preview of it.


    Thank you, we will take that into our consideration, I think it's similar to what Pieter suggested.


    Sounds great.


    If Enscape could have a button "show proxies in canvas" (which would check out a license) we would use Enscape even when we're not doing visualization, prompting us to up our license count :) It could be a way to increase revenue. We've been wanting for a decent way to show high poly objects like vegetation/people etc in our canvas for a long time.


    Also, it would be amazing if all Enscape implementations (sketchup/rhino/revit) could share one common Enscape proxy solution (library). We move projects from one platform to another all the time (unfortunately :/ ). Our teams have been very excited they could work in Sketchup and then move to Revit (or often the other way) and still produce the same style of visuals. Clients never know we switched design tools.

  • Also, if proxies could be placed by drag and dropping a file on the canvas we could use existing library applications.


    We use Connecter and it's awesome. From Connecter you can drop in items to Sketchup, Revit and Rhino. It has very interesting features like preview gallery, tagging, search, ...


    I realize there might be severe limits on the API side, making this an impossible request. 3Ds max allows for drag and drop customization through the API, but something tells me Revit might not be so open to that :)