Proxies for SketchUp

  • There was a lot of discussion about proxy support early on and once Skatter support was added, the talk dropped off. I still see it on the Trello board. Is there still a possibility for this?

    We (or at least I) desperately need a better way to manage my plants and trees in order to use Enscape for my landscape architecture projects.

    This was discussed previously, but to reiterate......I would like to have the ability to insert a placeholder into the scene which will control the location, scale and rotation of an .skp file. Then being able link that placeholder with an .skp that is on the hard drive. The Enscape would see the linked .skp, while Sketchup would just see the placeholder. It would be similar to the way the light proxies work. Just a little window that would pop up when the object proxy is select that would allow you to link a file and maybe another that will let you replace. This would be enough for me. Having the Object proxies work with Skatter would be a plus, but not immediately necessary.

  • +1 but for Revit :-)


    Sketchup proxy (or 3ds max, obj,...proxies) in Enscape for Revit would allow us to add props, vegetation, ... without tanking the performance of our Revit projects.

  • Both topics are still on our agenda. :thumbup: But as we implemented Skatter support it has not the highest priority for SU at the moment.

    That is extremely disappointing to hear. Skatter is great, but it is a commercial plugin and puts a significant cost on any new Enscape user who wants to do exteriors. It is also highly inefficient to use without first converting to proxy so the weight of the model can be removed the Sketchup file.

    I would think with the other competition in the realtime market that implementing ways to compete with 3D vegetation would be a must. I have hundreds of plant models that I've created for my work, but at this point I have to go to another software to use them.


  • EarthMover I totally understand your arguments, and we will weight them appropriately. But it's not as simple as it might seem on first sight.


    We could support referencing some external .skp files, but there are obstacles:

    1. Referencing these skp files on more than one machine is difficult. Should one use absolute or relative paths? Search in subdirectories? Explicitly specify additional search directories? Revit users face some of these difficulties when referencing textures at the moment.
    2. For live updates to work we have to use the SketchUp Ruby API. For reading .skp files we would have to use the SketchUp C API. This means we would have to do the data export almost from scratch.

    Alternatively we could provide a proprietary file format with export & import functions. But this does not come without drawbacks:

    1. Maintaining a proper file format is a lot of work, especially if you want to be compatible between multiple versions.
    2. Enscape tries to deliver value to a lot of customers on a regular basis. We wouldn't be able to do so, if new features also required a change in the file format.

    Let me summarize this topic again: Providing proxy objects is not as simple as it might seem and we have to balance this feature request against others. But we've heard your call.

  • EarthMover I totally understand your arguments, and we will weight them appropriately. But it's not as simple as it might seem on first sight.


    We could support referencing some external .skp files, but there are obstacles:

    1. Referencing these skp files on more than one machine is difficult. Should one use absolute or relative paths? Search in subdirectories? Explicitly specify additional search directories? Revit users face some of these difficulties when referencing textures at the moment.
    2. For live updates to work we have to use the SketchUp Ruby API. For reading .skp files we would have to use the SketchUp C API. This means we would have to do the data export almost from scratch.

    Alternatively we could provide a proprietary file format with export & import functions. But this does not come without drawbacks:

    1. Maintaining a proper file format is a lot of work, especially if you want to be compatible between multiple versions.
    2. Enscape tries to deliver value to a lot of customers on a regular basis. We wouldn't be able to do so, if new features also required a change in the file format.

    Let me summarize this topic again: Providing proxy objects is not as simple as it might seem and we have to balance this feature request against others. But we've heard your call.

    What if it is a system that doesn't "create" proxies, but is more of a "linking" method?

    Say you click on something in the toolbar and it allows you to place a box in the scene. (similar to placing a light proxy)

    When you select the box, it brings up an options window (similar to the light proxy)

    In the options window there are 3 buttons - "import" "update" "relink" (perhaps relink and update are redundant and you only need two buttons?)

    Clicking import will take you to the the hard drive to load an external .skp, .dae, .fbx or .obj. (similar to loading a skybox)

    Once imported, the external model is loaded into the Enscape engine and the proxy object is then scaled to the size of the objects bounding box.




    Other render engines create proxies in a way that they are loaded only at render time. Enscape needs to instead just load the object into the engine via an import so that it is in the engine. The dummy object in Sketchup is just used to control the location, scale and rotation of the object.

    Regarding working between machines, the user would have to manually relink the proxies. It's the same in any render engine.

    Obviously I know it is easier to say than to do. I trust your expertise in the matter. My suggestion is about keeping it simple. The beauty of Enscape is in it's simplicity and feeling like it's built for Sketchup. A prime example is the lighting system. It was beautifully implemented and feels extremely intuitive. I was envisioning a similar "flow" to the proxy system.

  • I would like to try this. I came across a plugin for sketchup called rptools it works with render plus ( I believe that is what it is called) the plugin takes hi poly models and creates a low poly proxy. It creates two layers high and low poly. I turn on high poly when I render with enscape and leave low poly on while working on model. The rendering program that created the plugin does this automatically when render is selected. This option works but what has been done with light proxies would be better in my opinion.

  • Is there any word on support for proxies in Enscape for SketchUp? I would love to be able to use some higher quality models for trees around my exterior scenes. I'd also love to be able to use my Laubwerk proxy collection inside Enscape.

    Ted, a workaround that I've been using is to use Skatter's custom object to create psuedo-proxies. The downside is that the plant needs to be opened in Sketchup, which can take a long time or be impossible if it's huge. It also stores the plant or tree in the file size.

    Workflow -

    1. Open your plant or tree in a new SU file

    2. Run Enscape and save a quick render for a thumbnail

    3. Open Skatter and select your plant or tree as your Skattered Object

    4. Change the random transform settings as desired


    5. Leave the Host blank and hit the save in library button up near the top next to the name


    6. Add your thumbnail, give it a name and save it to the harddrive.

    7. Open your Skatter Library and you should see your new tree or plant

    8. Open your file you are working on and you can go to the library and place away.

    9. If you want to place just single instances instead of scattering, then use the "Pick Points" host option

    Now build your library and have fun! Don't forget you can save combinations for Forest presets.