Is the Unreal Engine 4 license compatible with the Original BSD license?

Is the Unreal Engine 4 license (20$ a month) compatible with the Original BSD license? The 4 Clause BSD is NOT compatible with GNU licenses, which is a bug or a feature depending on who you ask (I hate copyleft), although that has nothing to do with this question, it’s one reason I prefer the licesne over the 2 or 3 clause BSDs. It was mentioned in the UE4 license that the MIT and BSD licenses are compatible.

I ask about the 4 clause specifically because he Original BSD license has been disavowed due to incompatibilities with the GPL (which is what enabled Microsoft to use their network stack without giving them any credit), so I wonder if it was taken into consideration when the UE4 license was wrote. Even though it’s been “disavowed” (mostly just to shut-up Richard Stallman) anyone can of course still it, it is often still used by those who would like nothing else but “credit” for their work (another reason I like the license). If you are not sure, here is a link to the license.

https://spdx.org/licenses/BSD-4-Clause

Bleakwise -

I’ll paste in the relevant section of the EULA here:

You may not combine, Distribute, or otherwise use the Licensed Technology with any code or other content which is covered by a license that would directly or indirectly require that all or part of the Licensed Technology be governed under any terms other than those of this Agreement. Code or content under the following licenses, for example, are prohibited: GNU General Public License (GPL), Lesser GPL (LGPL) (unless you are merely dynamically linking a shared library), or Creative Commons Attribution-ShareAlike License. Code or content under the following licenses, for example, are allowed: BSD License, MIT License, Microsoft Public License, or Apache License.

Epic knows that licensees may want to use third party software in connection with the engine; in fact, Epic uses a lot of third party software in the engine as well. But it’s important that any third party code used in connection with the engine not be copyleft. Specifically, the EULA prohibits using any third party software with the engine which is covered by a license which, by its terms, would require that the engine by governed by terms other than the EULA.

It’s OK to use third party software covered by a BSD license with the engine. That includes the original 4-clause BSD license.

However, just to be clear, the engine itself is covered by the EULA and cannot be redistributed under any other license.

I understand all that, but what does “the engine itself” mean. Obviously that covers the source code produced by Epic, and obviously one can’t just re-license it and give it away but…

To be clear, I’m not talking about using 3rd party libraries (which for obvious reasons can’t be GPL), nor am I talking about re-distributing UE4 sources created by Epic, I’ve read that part of the EULA and that’s not my concern. I’m talking about software that I wrote that links to UE4 sources, a custom Actor class, or a custom Slate Widget, which would require people to obtain the UE4 engine through this website to really use them.

It is in a way similar to a 3rd party library, but there are some differences. A 3rd party library wouldn’t be linking any UE4 code, whereas code written for use within the Engine’s framework would. Say I create a source/header file with the following lines of code…

if (GEngine->IsValidLowLevel())

or

class MyActor : public AActor

My question is, does UE4 itself have any copyleft provisions (I don’t believe it does, but I don’t speak lawyerese)?

I ask because I’m writing a book that will have code examples showing how to write games within the UE4 framework. I won’t be showing a single line of Epic’s UE4 code, only usage (aka linking). I wanted to license those tutorials with a BSD or MIT license so that business people could feel secure about reusing the code in my book without fear of a troll publisher coming after them with a lawsuit. I preferred BSD and MIT over say, Apache or Microsoft Public License because their academic nature goes well with the intent of the book/code. I considered the 4 Clause BSD because I always wanted my name to appear in a game’s laundry list of credits.

PS: I don’t plan to distribute any pre-compiled binaries with UE4 in them either, or if I do I’ll be glad to pay Epic their 5% (which I plan to do even if writers/authors aren’t legally bound to).

Not a lawyer, but… You can interface with the engine in whichever way you want, either via static linking or via dynamic linking, a “linking clause” is not necessary because the Epic EULA is not a copyleft license. Due to the fact that the EULA is not a copyleft license calling into the engine in your own code does not mean your code is now owned by Epic.

However, if you decide for some strange reason to copy a source file (or part thereof) from the engine into your own project then you are not allowed to re-license that source file as it remains covered by the EULA, and you may not distribute that source file to anyone who is not an UnrealEngine licensee. The rest of your project can still be licensed however you want so long as it’s not under a copyleft license.

When I said “linking clause” I meant one working the other way (not an exemption), as in that I didn’t see any copyleft in it. I agree though, an exemption wouldn’t be needed (it’s not copyleft).

The thing that struck me as odd, was that when you create a class through the Editor there is a comment saying

/* Copyright Epic */

In an otherwise blank file (other than a skeleton class and an initialization list). It left me unsure about who owns what. I don’t mean to nitpick at things, and I think Epic is very much reasonable, but the legal side of this business isn’t to be taken lightly.

If you’re referring to the same copyright as in this question:

That was a bug with our class wizard, and has since been fixed. The next release will not insert the Epic copyright into code created via the class wizard.

Bleakwise -

All of the examples you described are fine to release publicly under a BSD license.