SketchUp advice for command-line rendering


Hi there,

I have two questions on behalf of Thinkbox Software. We write a render farm manager software called Deadline. Deadline supports 70+ different content creation applications, one of which is SketchUp.

We have written a SketchUp plugin that submits scenes to a client’s render farm. On the worker machines, we automate launching SketchUp with command line arguments to perform the render tasks. It works, and for the most part people are happy with it.

Recently, one of our large architectural clients has moved to SketchUp for various tasks. However, they are running into difficulties that is stopping a larger rollout. We would like some advice from you on how to solve them:

  1. We would like a command-line option to suppress all UI dialog boxes. SketchUp displays windowed dialog boxes on questions/warnings. This is fine on a workstation, but when we run on a worker machine, and a question dialog appears, it completely stalls the render execution, and we can’t do anything about it. Is there some way to force a “quiet” mode?

Our current solution, and why it doesn’t always work:
We have partially solved this problem in Windows by using native Win32 message queuing to force a keypress-equivalent to dismiss the dialogs. In this solution we answer “No” to all questions, and “OK” to all messages. The solution gets us partially there. Except it doesn’t work in OS X. It also fails upon this question “The file ‘x’ is currently locked by another user. Do you wish to open this file as Read-Only?”. Our code forces a “No” again, and it fails. This message comes up a lot because often people are submitting their open scenes that are saved to network locations.

  1. We would like SketchUp to return error codes on the command line. That could be simply a Success(0) or Failure(1). The Deadline software reports if a task has succeeded or failed. However, we cannot do this in SketchUp, because SketchUp does not provide us with feedback. Is there some way to do this?

Thanks for taking the time to read this. It is quite important for us to improve our support for SketchUp. I hope we can get these things working!