I see we have different opinions regarding the work mode of the OVP license. To clarify, mine is like so:
It might be OK to create a kind of "glue-DLL" that gets loaded by Orbiter and implements all the callbacks and function callers to be forwarded to a white-room implementation of a renderer DLL, since you can hardly argue that the interface itself is under GPL. I just don't see a point in such an undertaking, though. The purpose of this could only be to circumvent the GPL's requirement of making the code publicly visible. And I see no reason for that, especially with volunteer work.
A different thing is of course USING a closed source rendering engine (DX itself is such a thing IMHO)! But you would have to code a whole bunch of glue for that, anyway (and TBH, D3DxClients are nothing but glue code to the DX interfaces).
But as said in the beginning: this is only my opinion. In the end it is Martin's call, as he still is the OVP project leader AFAIK.
regards,
Face
- The OVP project itself - including the interface stubs to orbiter_ng - is under GPL V2+ (+ meaning V3 is also permitted). This is different to the core Orbiter project that is using Martin's proprietary license.
- D3D9Client is part of this project, at least since the first "official" SVN revision. It is also not a "normal" add-on like OrbiterSound or one of the DG/XR vessels.
- GPL does not allow closed source to link to GPL binaries, this even includes dynamic linking. Well, actually it just talks about derived work, but the FSF showed often enough that dynamic linking is still "derived" enough for them. A rule of thumb is: if your program is nothing without that GPL'ed lib you link to, you are violating the GPL if making it closed source. If you don't believe me, google "loadable kernel modules GPL" - strong opinions ahead!
It might be OK to create a kind of "glue-DLL" that gets loaded by Orbiter and implements all the callbacks and function callers to be forwarded to a white-room implementation of a renderer DLL, since you can hardly argue that the interface itself is under GPL. I just don't see a point in such an undertaking, though. The purpose of this could only be to circumvent the GPL's requirement of making the code publicly visible. And I see no reason for that, especially with volunteer work.
A different thing is of course USING a closed source rendering engine (DX itself is such a thing IMHO)! But you would have to code a whole bunch of glue for that, anyway (and TBH, D3DxClients are nothing but glue code to the DX interfaces).
But as said in the beginning: this is only my opinion. In the end it is Martin's call, as he still is the OVP project leader AFAIK.
regards,
Face