Live data from Hacker News

What Unity Is Getting Wrong

garry.tv

141–150 of 306 posts

Re: What Unity Is Getting Wrong

#141
post #118

I'll just sit back and eat popcorn as I work with my custom handmade game engine. None of this is a concern for me, and it has been refreshing to work directly with the graphics pipeline and in lower level languages that give me direct control. If something is wrong, it's my own damn fault. For those who want to get away from being totally dependent on third-party frameworks and tools, check out Handmade Hero. It was…

> I'm not really sure why more people don't do their own thing. I've certainly considered it, but one thing holds me back: cross-platform targeting. I'd love for my game to eventually run on the Switch, to say nothing of more basic targets like MacOS, Windows and Linux. Targeting those platforms would be a herculean effort.

Yeah the cross-platform ease and great VR support is what keeps me there. I've done my own game engines in the past and really enjoyed it, but that was when I was purely focused on PC gaming.

Re: What Unity Is Getting Wrong

#142
post #36

There are two main reasons to avoid Unity: 1) As your project grows, it becomes unmanageable because the resource pipeline is hidden and you want to be able to improve that. 2) Skin mesh animation, which is the main point of using Unity in the first place, uses a compute shader which means they send all meshes from the CPU to the GPU every frame! On the other hand Unreal takes 5 hours to compile and even Godot takes…

I compile Godot in ~3 minutes. -j 8 on a 4770k (? 2015 cpu)

Re: What Unity Is Getting Wrong

#143
post #3

Unity has gotten so painful I've sworn off ever taking another Unity project. Since mid last year I am 100% exclusive on Unreal Engine. Unity wants you to think this instability is temporary. It is not. Unity has been unstable since at least 2014 when I first worked with it. Every year there is a new-new thing, "please stop using the old-new thing". Meanwhile those upgrades are always painful, not sometimes painful,…

Are you working in C# with Unreal Engine? How is it?

I am tempted to switch over as well but there is no way I'm going back to C++.

Re: What Unity Is Getting Wrong

#144
post #88
post #38

I got stuck into a few unity projects recently, and I've been surprised how poorly documented and undiscoverable things can be. Why is the whole rendering pipeline stuff such a mess? I've bumped into far too many unexpected gotchas because a pipeline doesn't support a particular feature, or it renders stuff in such a way which isn't clearly documented. And whats worse is there is no real easy way to debug it since th…

Unity does have built-in debug tools for rendering, I'm not sure what leads you to affirm the contrary? Or do you consider the exisiting tools to be unsufficient for your needs?

My main issue at the moment is they don't work in webgl, where the rendering is sufficiently different enough that it differs from what generally happens when you run in the editor.

The built-in "Frame Debug" tool for me is very glitchy and doesn't really give very good information.

So 99% of the time for me, it's basically as good as having no tools.

Re: What Unity Is Getting Wrong

#145

Earlier quoted context omitted.

I think it comes down to power in the company. Unity was extremely simple and small before, once they got John Riccitiello it become a management/business focused company over engineering leaders in terms of power and direction. Unreal has Tim Sweeney, and old school guy that understands how to make a game engine and has done it over and over. They learned alot from Unity, and are now doing it better than them once t…

this is very interesting -When Unreal 4 swapped out UnrealScript for C++ it went into overdrive in terms of performance and clean. why do you think this happened? why was C++ so much better

C++ is very common in gamedev largely for the performance, less learning another language and more direct. UnrealScript in previous Unreal versions was simple but so is the necessary C++ for Unreal 4. Developers can make pure C++ games, or they have a simpler way using Blueprints that you can add into C++/Blueprint mixed games [1][2], or purely Blueprint that helps for non programmers though they are slower. There was lots of work to keep UnrealScript synced with the engine. Without that middle layer of a DSL, going direct is also important since everything needs to perform on mobile but also be native/AOT compiled. Helps for consoles, desktops and web as well.

Fun fact: Unity was going to go to C++ in 2013 during the Apple blocking Flash and other JIT tools, Unity thought they were going to be blocked from mobile publishing. [3] Since you can't run interpreted code Unity was going to go C++, I wish they had with C# as a scripting language maybe. Instead Mono had AOT compiling around that time but since the Mono license was expensive they built IL2CPP which takes byte code and makes C++ from it. About a year later Mono was bought by Microsoft and it would have been free for Unity to integrate. Though I still wish they would have went C++ with C# scripting that creates C++, would have been an easier route. I believe much of their problem is all these complicated legacy/translation systems at the base of the engine, which just going direct C++ would be easier with scripting on top of that that directly converts to C++.

Godot you can also use C++ and other languages including C#, GDScript. [4]

Early days of Unity you could use C#, Javascript, Boo (Python flavor) or anything that Mono supported.

[1] https://docs.unrealengine.com/en-US/Resources/SampleGames/AR...

[2] https://docs.unrealengine.com/en-US/Gameplay/ClassCreation/C...

[3] https://blogs.unity3d.com/2010/07/02/unity-and-ios-4-0-updat...

[4] https://docs.godotengine.org/en/stable/tutorials/plugins/gdn...

Re: What Unity Is Getting Wrong

#146

Earlier quoted context omitted.

One of my on-boarding tasks at my first tech job was to evaluate the merits of upgrading to a newer version of unity. I installed the new version, imported our code base, fixed a few bugs, and everything worked. We gained a few niceties, we could remove some of the hacks we had to program in to bypass unity weirdness, and we could start keeping our product up to date. I gave a presentation, we went over the pro/con l…

We are a tiny dev team using Unity on a non-gaming project and we basically have to dedicate 2-4 weeks of the year to updating Unity and all the mess that it entails. But if you don't update then you have to spend even more time the next year catching up. Then we end up being too scared to use their new features cause they aren't supported well or cause bugs. Its lose-lose.

Just get to the LTS release and stay there.

Re: What Unity Is Getting Wrong

#147

Earlier quoted context omitted.

> Unity is focused on small mobile game developers Someone remind Unity of that.

They really do need that reminder. The people making money from Unity-based games are primarily mobile/F2P devs, and smaller indie developers. They need stability and ease-of-use/very-rapid-development much more than they need performance or the latest shiny high-end graphics features.

I thought I remembered there being some bigger games, but looking at a list[1], they are all pretty indie, or at least small. Not sure I saw a AAA game on the list (which doesn't mean there aren't any, but they seem rare). The equivalent list for Unreal Engine[2] does contain quite a few big titles (along with a plethora of less well known ones).

I'm not sure if that's cause, effect or marketing. It could be that using Unreal Engine results in a smoother process and is more likely to result in a AAA target game being AAA. It could be that AAA studios area already predisposed to use Unreal Engine. It could be both. It could be that Unreal Engine is just better at marketing to larger studios given their pedigree.

1: https://en.wikipedia.org/wiki/List_of_Unity_games

2: https://en.wikipedia.org/wiki/List_of_Unreal_Engine_games

Re: What Unity Is Getting Wrong

#148

I'll just sit back and eat popcorn as I work with my custom handmade game engine. None of this is a concern for me, and it has been refreshing to work directly with the graphics pipeline and in lower level languages that give me direct control. If something is wrong, it's my own damn fault. For those who want to get away from being totally dependent on third-party frameworks and tools, check out Handmade Hero. It was…

[deleted]

Re: What Unity Is Getting Wrong

#149
post #138
post #65

Earlier quoted context omitted.

It apparently already builds for Switch: https://www.reddit.com/r/NintendoSwitch/comments/cixsoy/jona...

Let me clarify: Unity gives you high-level APIs for things like graphics, audio, input, networking, that work across all supported platforms automatically. There may be some platform-specific quirks, but roughly speaking, you can just click "build for X" and get a working X build. There's a huge gap between compilation and that.

I don’t know how Jai will do this. But my gut feeling says that the meta programming capabilities will could help doing this sort of thing. My understanding is that it enables one to say „build my program in this particular way“ expressed within Jai itself.

Please correct me if I‘m completely off.

Re: What Unity Is Getting Wrong

#150
Lol that Unity ECS ends up in a 'getting wrong' article considering that ECS style programming has been the direction that game development has been moving for a good while now.

At some point sooner than later people will be complaining about how they can't do ECS in Unreal.

Post reply on HN