I currently stumbled across an interesting case of a combination between a proprietary software and a GPL software, which I am trying to understand: There is the GPL software Blender - a well-known 3D creation software. Then there is a proprietary render engine OctaneRender developed by OTOY. OTOY distributes a modified version of Blender, the "Blender - OctaneRender edition". OTOY claims that this constellation is GPL compatible with the following reasoning:
To conform to GPL rules, the OctaneRender® for Blender® plugin consists of two parts:
- The full Blender – OctaneRender edition®
OctaneServer® is the server for getting the TCP/IP render-commands and scene data from the client, rendering the scene, and returning the rendered image to the client.
The Blender – OctaneRender® edition is the special compilation of Blender®, which includes the internal OctaneRender® module. The module collects the Blender® scene data and communicates with the OctaneServer® as the client by sending the data to the server, getting the rendered image from it, and showing that image to you.
Such a way GPL is not violated by OctaneRender® for Blender Plugin: as the source-code of Blender – OctaneRender® edition (which is under GPL) is available for users of the Plugin, and the source-code of Otoy‘s proprietary closed-sourced OctaneServer® does not need to be published, as OctaneServer® is not linked to Blender and works with render-clients through TCP/IP communication.
Interpretation - Agree or Disagree:
Agrees: I understand, that this can be interpreted as GPL compatible in the sense that - using the wording of the Free Software Foundation - both the closed-source OctaneServer and the "Blender - OctaneRender edition" developed by OTOY communicate "at arms length" over a well-known socket / communication protocol. They could, thus, be considered a mere aggregation.
Disagrees: On the other hand, however, both Blender and OctaneServer exchange what could be considered "complex internal data structures": the Blender scene data. (as stated in the quote above). That, in turn, would make them a single, combined work according to Free Software Foundation.
Which of my interpretations is correct?
If that constellation is fine, why is OTOY using a completely own Blender version when they could - technically - also just distribute a Blender plugin instead? I know, your answer might be "ask OTOY", but I am interested in: Do you see any legal reasons that would make it more reasonable to modify the complete software instead if using a plugin (which itself, would be a derived work of Blender)?