As this question closely matches our recent professional experiences I thought Iād add my 2pā¦
We started with LWJGL (well, obviouslyā¦) and there werenāt any other libraries about, at all, so we were forced to do our own things, and it was at around that point we realised that 2D was much much easier to ādoā than 3D for all sorts of reasons.
Most of those reasons are actually still valid in Java, and thatās why for our first foray into 3D we went with Unity. Unity makes some of the things that we traditionally have a problem with much easier. Those things are what games developers elististically call the ācontent pipelineā (which to you and me means getting the things artists make to appear in the game), the issue of deployment to consoles, and of course the whole 3D engine thing which is a ton of work to do yourself.
What it hasnāt made any easier is making a game. In fact making a game is kinda harder in Unity. Firstly because itās C# which despite everyone wanting to sound reasonable and unbiased and level headed and not at all fanboyish⦠is not nearly so well thought out as Java in so many little ways. Secondly because although the 3D engine and asset pipeline is largely sorted for you, you have to do about 10x more work to actually fill it with anything worthwhile. So youāve simply traded a bunch of problems in one area, and got a whole bunch of new problems in another area. But itās worse than that⦠it genuinely does take 3x as long to do anything in 3D as 2D. You canāt just make a coffee table in an office. No, you need to have maybe a randomly placed mug on the table. And a mug isnāt just an 8x8 pixel sprite any more, itās a whole 3D model. The whole move towards further realism within the brain that 3D brings means you need exponentially more detail in order not to break the illusion. Then you discover that stuff such as textures which look OK in 2D suddenly need rather a lot more detail in 3D for when they get viewed closer up. And probably normal maps as well. Oh and bog standard Unity is great for making bog standard graphics and effects but as soon as you wander from the beaten path it gets just as hairy as any other crazy programming stuff. You need to learn Unityās shader language. It goes on.
So thatās my counter-argument to Kev there
Itās not a belief, itās the reality! It really does take much, much longer to make proper 3D games than 2D games.
That said⦠2D is hard too. You need to get quite clever with style to make it visually appealing. But at least you donāt have to rely quite so massively on the generation of content.
Cas 