Why is Unity reputed to be the best engine for beginners? (for programming side)

I do 3d art, but like anybody else I started with an interest in making my own games. Unity was purported to be the most beginner friendly platform, so that is where I started. I did the basic tutorials, learned a little c#, but then got into art full time. Initially I had some interest in Unreal because it seems to be the professional standard, but everybody said it was much harder to learn so I avoided it.

After getting a bit underway learning 3d art, I started to dabble with Unreal if only for the purpose of realtime rendering models. Contrary to what I had heard, I found Unreal extremely user friendly and intuitive (as much as a game engine can be anyway). But of course, this was only dealing with the graphics sides of things – shaders, lighting, importing and manipulating assets, etc.

At some point in the future, I’ll want to learn a bit of coding, enough to make some of my own very simple games. In my brief experience, making things look nice is easier, faster, and more powerful in Unreal, but I understand that’s only a small portion of game making. Anybody, preferably programmers, care to share what aspects of each engine they took into consideration and what ultimately led them to choose unity? Not looking for fanboy praise or vilification, just useful considerations people actually made and why.

I understand Unreal used to cost money, so that is probably a big reason why a lot of people got started on Unity. Then, I suppose, once you know an engine and a scripting language, why make a big change? But I have a feeling there is some more practical reasons as well, but almost all the debates I’ve read on this topic usually have somebody saying, “Unreal can do this,” and somebody replying, “Unity can do that, but you have to be a master of the engine to know how.” Again, if we can avoid the tit-for-tat and just stick to our own experience and knowledge, I think we, or at least I, might pick up some useful knowledge.

1 Like

Unity uses c# which is why it makes programming much easier to pick up. Personally, I feel not shipping a visual scripting system was a great choice because it forces people to do things properly.

Does “properly” = better end product? Or is this a “back in my day we did math with an abacus. If you can’t do it that way, how are you ever gonna learn properly?” Either way, I don’t find the lack of an additional option to be a useful selling point. Like, a bike with no wheels would force me to get good at running, which is another way to travel, but that’s kind of beyond the point of getting the bike in the first place.

Also, if it is possible to explain in non-programmer, simplified terms, why is c# easier to learn than c++?

1 Like

Well with unreal everyone begins with visual scripting. Then their game gets big so maybe they think, how about putting this to code so it is organised. That’s when they get a rude awakening.

With unity it is c#, all you need to know is it is much simpler. You can get by on 3 beginner tutorials, the rest is just searching.

Let me know if you need any help.

Just to note you also have the ‘bolt’ visual plugin (bit expensive IMO) which seems most popular nowadays but you might as well begin the right way and that’s to get stuck into code. I just got sublime text snippets set up on my mac.

What do you use for your 3D is it blender?

Something I just found:

https://www.upwork.com/hiring/development/c-sharp-vs-c-plus-plus/

From that and some very minor previous experience I have, C++ is more low-level and thus gives you more control. This means that you may have to do more to accomplish some of the same things (i.e. header files), and you have more power so you can do more damage to the computer itself if you don’t know what you’re doing.

Plus, Unity used to have Unityscript, a modification of Javascript, even more high-level and simple to work with compared to C#.

1 Like

Don’t derail!

I use Maya LT, Zbrush, Substance Painter, Photoshop, Marvelous Designer

1 Like

Oh OK I apologise if I was derailing the topic, well it is very similar, and easy to set up animations and trigger them by code. You can send me a private email and I will help you get started.

I use Blender, armorpaint, blender sculpting with bmesh for retopo and of course affinity photo for texturing. . . oh and cloth weaver 2.0 addon for clothes!

Just for clarification, you found Unreal 4 to be extremely user friendly and intuitive, correct? Because my experiences with Unreal 3 were the exact opposite (UE4 had yet to be announced) and led me to choose Unity. If UE4 had existed it would have likely gotten evaluated first and I might never have chosen Unity.

Thanks for that. A quick glance over the article and I feel like the final suggestion to post your project and ask experienced developers whether or not the demands of the project would necessitate c++ over c# is a pretty good idea. I’m sure with time and dedication I could learn enough in either to get done what I want, so it’s really a question of what the specific applications performance demands are.

2 Likes

Yes, but I am working solely on importing and editing 3d assets, as well as basic scene look-development. For instance, in Unity, to do anything fancy with my materials, I have to know enough about c# to write custom shaders. But in Unreal, I can easily find lots of tutorials showing me how to use a noodle graph to do the same things (and sometimes more things). It’s the same kind of graphs I use in other 3d texturing apps, so it’s a pretty easy thing to jump into. Also, Unreal has a ton of conveniences that allows me to do a lot of final look-dev work inside the engine, rather than jumping back and forth between my DCC apps.

It’s all polish and convenience stuff, really. Not a solid reason to choose one engine over another. But as of right now, I don’t have enough game dev experience or programming knowledge to discern the things that are really important to somebody developing a complete game.

1 Like

IMO you don’t need shaders to make something look good, the standard shader is more than enough.

Most people use shaders for special particle effects etc, lava perhaps

You just can’t help yourself!

1 Like

Oh I’m sorry, can you explain what type of materials or shaders you intend to create and I can assist you into making a better decision as to whether you need shader graph or something?

From a purely programming perspective all of the major engines on the market now have excellent languages and features to work with. Like I was hinting at in my previous post this wasn’t always the case. Unreal 3 had a terrible programming language unless you had the budget to afford the six to seven digit license.

Back then there were multiple indie engines on the market (usually priced similarly to Unity Indie which was $400) but very few of them offered everything you could get with Unity. You often had to choose between one with a good programming language and one with a full editor experience. Getting both was unheard of outside of AAA engines at the time.

2 Likes

Thank you for the insightful and on-topic response. I am confident that in this matter, if the two of us were to assume titles, yours would be teacher and mine would be pupil, and that it would not be the other way around.

1 Like

Yeah that’s why you see a lot of beautiful WIPs in the unreal forums but hardly any complete games. Compare that to the completed game section in unity, there’s no contest.

1 Like

Do you understand what on topic means? Did you read anything anybody wrote beyond the first sentences? Stop with the foolishness!

1 Like

I feel it is a pertinent point considering the topic about programming and game completion, wouldn’t you agree? I guess that’s why you’re on unity forums no? :slight_smile:

If you can make a ten to thirty minute youtube video detailing how to make a shader in Unity that will allow me to multiply the AO and normal channels, as well as adjust the diffuse brightness, specular falloff, roughness; and additionally apply subsurface scattering and adjustable dithering to the alpha channel; and do all of this with convenient slider bars in the editor interface, then I will admit that you are a genius and you aren’t ruining my thread.