• nyankas@lemmy.ml
    link
    fedilink
    English
    arrow-up
    47
    arrow-down
    1
    ·
    5 months ago

    Although I’d love to see that happen more frequently, this is simply not realistically doable for most commercial games.

    Almost all of them use licensed third-party libraries which are integrated deeply into the game’s code base, but which can’t legally be distributed as part of an open source project. So in order to be able to open source a modern commercial game, you’d have to put in quite a lot of work finding all of your code integrating with commercial libraries and either replacing or removing it. And if that’s not enough, you’d probably have to have your (expensive) legal team check the entire code base for any infringements just to be on the safe side.

    All that work for no monetary gain just isn’t a very good business case. So, unfortunately, I wouldn’t expect a lot of modern games to be open sourced any time soon.

    • pkmkdz@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      21
      ·
      edit-2
      5 months ago

      And assets, don’t forget assets. If you use any bought assets from assets stores (Unity / Unreal, heck even textures from textures.com), the licenses don’t allow you to redistribute those in raw form.

      Even if you’re using only things you have copyright to, it’s still not a good idea to license it under same terms as code. Code licenses =/= art licenses

          • Cyberspark@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            5 months ago

            That’s usually not the case. Most assets are entirely cosmetic. It’s why when things get messed up you tend to see purple floor, wireframes or checked test planes. As far as coffee is concerned art assets are usually just “what do I make this look like”. As far as physics and interactions goes it’ll do exactly what it was supposed to before. That’s not too say it’s not valuable, but whoever gets the code can by the pack, put in the right asset references in the right places in the code and be exactly where they were before.