Trello card: get Unity help or source code access -possible Unity causing garbage collection issues?

0x6A72320x6A7232 US Join Date: 2016-10-06 Member: 222906Members
https://trello.com/c/2Mp2XNn5/6262-get-unity-engineering-help-and-or-source-code-access


I kind of suspected this was coming down the pipe for a while. UWE seems pretty (read: really) competent, and the issues that they can't seem to nail down don't make sense.

Here's hoping there's something under the Unity hood that can be adjusted / fixed to reconcile the problems.

Comments

  • garathgarath Texas Join Date: 2017-02-08 Member: 227730Members
    A quick Google search on Unity Garbage Collection returned this page:

    https://docs.unity3d.com/Manual/UnderstandingAutomaticMemoryManagement.html

    It seems to indicate code can be written in such a way that the automatic garbage collection in Unity will occur much more often and cause performance issues.

    Another Google search returned the information that you *can* get access to the Unity source code. But, in general, you shouldn't need it.

    Yet another Google search returned results that folks have decompiled the Unity DLL's to gain access to the source code without purchasing it. :)

    I was really surprised to hear Unity does automatic garbage collection. I has always (incorrectly it seems) assumed all game development was done in languages like C++ that supported (required?) manual memory management so the developer had 100% control over when garbage collection occurred.

    In any event, I hope they can resolve the performance issue. Subnautica is a GREAT game, and I would love if the developers all make millions off it.

  • TarkannenTarkannen North Carolina Join Date: 2016-08-15 Member: 221304Members
    I wanted to chime in regarding Unity coding for game design. While I know practically nothing about coding myself, I know that HearthStone from Blizzard is designed by Unity as well. HearthStone was originally conceived as a pet project that blossomed into a popular card game, that Blizzard has pushed development on for over three years now. But more to my point, a lot of players have the opinion that while exceptionally fun, the game seems to have been poorly coded, due to the fact of how card interactions are nested and how the game operates visual effects. (Don't get me started on how terribly optimized the game was until recently for Android as well...) :smirk:

    However! Team 5 has learned from their mistakes and has slowly improved how HearthStone runs and operates under the hood... in fact, this recent update (Ver 8.0, "The Jungles of Un'Goro") has implemented long-requested QoL updates and finally optimized it to not take up tremendous space on Android devices. My point is while Unity isn't the best coding platform for games out there, there's always ways to clean up the code; and if Team 5 can improve the Unity experience on HearthStone, I'm positive that UWE can improve the Unity experience on Subnautica as well. :smile:
  • cdaragorncdaragorn Join Date: 2016-02-07 Member: 212685Members
    @Tarkannen I'm a software engineer that dables in building games, and I agree with pretty much everything you said.

    Pre-built engines like Unity are awesome for letting almost anyone actually build a video game, but they're terrible when it comes to performance. Part of the problem is just that you can't get the same performance out of a generic engine that you can out of one custom built to meet your games needs, but a lot of it is also caused by what @garath hinted at. The fact that Unity chose a garbage collected language might make things a little easier for devs, but it absolutely kills performance.

    I firmly believe that they will be able to improve the performance of Subnautica a lot over time, but I'm also certain that we will never be free of some issues that seem like they should have been able to fix.
  • 0x6A72320x6A7232 US Join Date: 2016-10-06 Member: 222906Members
    cdaragorn wrote: »
    @Tarkannen I'm a software engineer that dables in building games, and I agree with pretty much everything you said.

    Pre-built engines like Unity are awesome for letting almost anyone actually build a video game, but they're terrible when it comes to performance. Part of the problem is just that you can't get the same performance out of a generic engine that you can out of one custom built to meet your games needs, but a lot of it is also caused by what @garath hinted at. The fact that Unity chose a garbage collected language might make things a little easier for devs, but it absolutely kills performance.

    I firmly believe that they will be able to improve the performance of Subnautica a lot over time, but I'm also certain that we will never be free of some issues that seem like they should have been able to fix.

    If they get their hands on the Unity source code, I don't see why not...
Sign In or Register to comment.