While developing the game, I need a method that changes the rendering type of the material, but the corresponding method is in the internal class StandardShaderGUI, which I don't have access to. I wanted to just copy the code, but I saw the Unity Reference-Only License, after reading the text of this license I still don't understand whether I can copy some code from the repository if I change it a bit or not?


License - https://unity3d.com/legal/licenses/Unity_Reference_Only_License

1 Answer 1


The licence seems to me pretty unambiguous when in s1 it says

For clarity, while display, performance, and reproduction on the Repository Service through its functionality is allowed, no other distribution or modification of the Software is permitted.

So you're not allowed to copy some code from the repository whether you modify it or not. As I read it, this software is source-visible but non-free, and should be avoided.

  • Thank you for the answer, how can I avoid using this code if there is only one way to perform the operation I need?
    – UNICODE_
    May 23 at 12:02
  • 3
    As long as you haven't read the licensed code, just rewrite it. If you have, the safest way is the clean room reimplementation - you (having read the licensed code) write a functional specification of what it should do, then give that to another project member (who hasn't seen the licensed code) to implement.
    – MadHatter
    May 23 at 12:21
  • Now it became clear to me, thank you!
    – UNICODE_
    May 23 at 12:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.