Unity3D and open source project

Started by
6 comments, last by frob 9 years ago

Is it possible to use Unity3D for an open source project? I think Unreal Engine forbids using it if you release your code under GPL or something like that.

Advertisement
You can make your stuff as open sourced as you desire, but you can't enforce this for anything you are using (Unreal Engine/Unity/Assets/...).
I guess the problem about the Unreal Engine is the code already related to an "empty" project you would "reuse" in your game. You can't publish it with an open source license if it's not you stuff.
Regarding Unity, all you have in your Unity project folder is whatever you added yourself to the project and automatically generated files (meta files, project and solution files, temporary files, ...). As long as you only use something compatible with your desired license, you should be able to do something open source.

(Keep in mind: It's more like an assumption what the reason related to the UE could be. I could be mistaken about this one as well.)

My idea is to make the code I write open to let others learn from my work. Also, our art would be CC. Of course, I dont demand the same for engine code.

I'm sorry if my post was a bit misleading. I didn't want to accuse you of demanding openness of the engine. But if you would need to upload (Git/SVN/...) something related to the engine, i. e. the engines source code or standard scripts/assets, in order for your project to be executable, you would implie these files to be open source licensed (and thus demand the engine to be open source).
You still need to follow the conditions of the assets license(s), which could disallow you from uploading them.
If this is not a problem, you would still need to list exactly what licenses apply to what files.

Making your project openly available is not a problem, as long as you don't publish something you're not allowed to publish.

No need to excuse, I know what you mean, maybe "demand" is wrong. What I say is that I have to agree that the engine is off limits. Thanks for your clkarifications, I will study what Unity includes in the project and see if it is compatible with releasing my code.

I think GPL is out because of its infectious nature.

There are other libraries, like the LGPL or MIT License, that may satisfy the requirements. Unity uses several components under those licenses and handles them in a different manner so they can be followed.

You would just need to be extremely careful about what and how you release. If you are using items from the standard assets such as pre-built controllers, or textures or animations, or anything you downloaded from the internet through tutorials and guides, then you need to be absolutely certain you have proper legal clearance on those.

One of the difficulties of publishing online is that anybody can do it but they are held to the same legal standards often created for large corporations. You still have the legal hoops to jump through like rights clearances and licensing, and you are potentially liable if you misappropriated anything, even tiny code snippits from StackOverflow or similar sites.

For example, if you use source code from an answer from Stack Overflow in your code, their license requires that you give attribution with a clear visual indication or text blurb, a hyperlink directly to the original question and to the profiles of the authors, include the Stack Exchange author names in your source code or documentation, and properly document that the code snippet is under the CC Attribution Share Alike license.

I've been in multiple workplaces where people were written up (multiple people), demoted (one person I knew about) and even fired (about ten people I've known about) for using source code they found online. One of those cases required publication of a large portion of a previously published title's source code, which the lawyers handled by placing well-buried inside the web site until the product was deemed at End Of Life.

Be very, very careful about exposing your code online. Ensuring that all of it really is your own code is surprisingly difficult, and making your code open to inspection makes it that much easier for someone to find and identify somewhere that you did something wrong.

I get the point. I guess that, unless you are a genius (Im not), you have to learn from code published online. The problem is that I often modify that code, and mix it with other, to the point that I cant longer say from where did I got it. Im planning to create all that I need from scratch, but Im not totally sure that I wont need any Unity3D code or asset.

To be clear:

It is not a problem to publish your individual files and your own code snippits. Post your individual files that you wrote all you want under whatever license you want.

The problem is trying to release your entire code base as a cohesive game. You are very likely to accidentally pull in resources you do not own.

This topic is closed to new replies.

Advertisement