Poll of the Day > The pain of working with Unity/Unity devs

Topic List
Page List: 1
Whiterun_Guard_
08/04/23 2:16:11 PM
#1:


I'm a long-time .NET user and I know the C# language and framework inside out. It's a beautiful language that's very efficient and well-rounded, the worst aspect is how much less used it is than other languages.

Move to Unity, and all that clean and elegant framework is replaced by a weird re-implementation of C# itself, which works sometimes and sometimes it doesn't. Sometimes Nuget packages work. Sometimes they don't. Copy over more random DLLs. Pray.

Why is it done this way? Spare the excuses, it's because Unity developers failed to do it the right way, and are pushing off fixing it for as long as possible.

The Unity game engine breaks every single C# naming convention. The whole thing is designed by an amateur. It uses reflection to find a public method called "Update()" to call instead of doing an override. It enforces lowercase public fields for everything. It refuses to serialize properties. It uses a built-in Newtonsoft.Json and no other library is treated this way. It will randomly throw an error if you use the real Newtonsoft.Json. When confronted about these things on forums, the developers re-iterate some low-level internal mechanisms that "prevent" those changes, as if they can't simply rewrite these things entirely.

Unity devs on the other hand, are special. Public static fields are used in half the classes (god, anywhere else, don't ever do this). Most classes are made MonoBehaviors for no reason other than the developer doesn't know how to make a class without it. And worst of all, all developers are waaay more confident in their code than they have any right to be.

Talking to a veteran Unity dev who dissed a whole framework because the whole thing "lazily rendered to two polygons". That's... how everything on a computer is drawn. GPUs don't render squares. We went back and forth on this for a while.

Basically, there are devs who are in it to get things done, and devs who are in it because they want to see a beautiful and efficient system. I am not the "just get it done" guy. The "just get it done" guys will wade through trash and make pathways to and from what they need to do, not caring about the disgusting mess around them, since no one will see it anyway. Unity is just that philosophy from start to finish. And that... is why Unity produces the most finished indie games.
... Copied to Clipboard!
Whiterun_Guard_
08/04/23 2:40:31 PM
#2:


Thanks for understanding PotD.

Btw Unity's set to fix the Mono situation in 2024, I know that. But still, god damn. .NET has been open source for a decade.
... Copied to Clipboard!
Lokarin
08/04/23 8:42:00 PM
#3:


cout

---
"Salt cures Everything!"
My YouTube: https://www.youtube.com/user/Nirakolov/videos
... Copied to Clipboard!
Topic List
Page List: 1