Tips for new Unity users

Been here on the forums for a while, and I’ve noticed a few trends with new users. Here’s some tips to help you be successful in getting started, saving a bit of frustration, participating here on the forums, and having fun with Unity. They are in no particular order.

1) When running tutorials, use the version of Unity which the tutorial was written for

The tutorial was written using a specific version of Unity, and every new version of Unity will have changes which may slightly (or significantly) change the steps of the tutorial, or worst case require a new API or workflow to achieve the same results. There is nothing wrong with using a version of Unity which isn’t latest/greatest, and the skills you learn in earlier versions of Unity will still translate to newer versions, even if the exact steps aren’t identical or a menu option has been moved.

It will be very frustrating when you are trying to walk through a tutorial and hit an unexpected error or can’t find a menu option the tutorial specifies. After you have experience, you’ll be able to get around these kinds of issues with ease, but not a good idea when just getting started. You can have installed as many different versions of Unity as you need at the same time, which is actually completely normal even for experienced Unity users.

2) Make regular project backups

Any project you don’t have fully backed up, is as good as lost. Backup your project folder on a regular basis, especially after making significant progress, and always before you are about to make a significant change. This includes before you import a third party asset, and especially before you move your project to a different version of Unity. Unity doesn’t support later downgrading your project’s Unity version, so it is generally a one way trip and can result in unexpected issues in your project.

You can just zip up your entire project folder, but you don’t actually need the library folder and a few other files. You can search for threads on this specific topic if you’re trying to minimize what files you save.

Consider using version control instead of zip files for this purpose. Version control systems, such as Git or SVN, are the software industry standard way of doing backups and help in many additional ways which zip files are weak at. At first they seem an unnecessary hassle, but once you have to revert changes a few times or investigate when a bug first popped up you will change your opinion.

3) Only use Unity versions with an “f”, no “a”, no “b”

As a new Unity user, there is likely no good reason for you to be learning Unity on an alpha or beta version of Unity. Alpha or beta versions will have major feature breaking bugs, or might be missing important functionality. Other than using the same version as a tutorial, you should be jumping on either the latest tech release or the latest LTS release.

Alpha releases have an “a” in the version, betas with a “b”, released versions of Unity (and I believe release candidate builds) will all have an “f”.

4) When asking for help on the forum ask a specific question and provide context

There are lots of people who are more than happy to help with your struggles here on the forum, but you have to ask a question which can actually be answered in a forum post, and provide enough information in order for that to be possible. Asking a general question which would require an entire tutorial series to answer, is just wasting everyone’s time. Asking a very specific question, explaining what you are trying to do, showing the code you have, and what is happening that is unexpected, is very likely to quickly get you a helpful response.

When posting code onto the forums, make sure you use CODE tags. There is a sticky thread at the top of the scripting forum explaining how to do that, or you can just quote any other post which includes code to see how it is done.

When you are running into some suspected problem with Unity itself, it is often helpful to specify exactly what Unity version you are using.

5) Don’t bother asking questions on Unity Answers, just ask on the forum

Unity Answers is slow to get a response, if it is working that day at all. Just ask your question here. Just make sure you post your question in the correct sub forum.

6) Your first project should be a single player game

You’ll have a hard time learning Unity on a multiplayer game, especially involving networking. Those games are very complex and time consuming, and you’re unlikely to be successful unless you already have the fundamentals of creating a game in Unity in the first place. Make your multiplayer game a later project, and start with a single player game, preferably something of very small scope.

7) Just because Unity released a new version, that isn’t a reason to upgrade your project

Once your project reaches a significant level of progress, you should be planning to lock down your project’s Unity version. From that point on you should only take a new Unity version if it has some must have bug fix or needed new feature, and only after careful consideration.

Whenever you change a component in your project, you should retest everything that component touches, and since Unity touches everything, that means you need to retest everything. Like any complex software, a new Unity version can introduce new issues, and these can negatively impact your project. I’ve seen far too many threads here about people complaining that their released to the public game has been broken by upgrading to a new Unity version just because Unity released it, publishing the new build to the public without testing, and some critical functionality in their game is broken for their customers without a clear way to quickly resolve the problem.

Edit: Please post your own additional tips!

52 Likes

Also want to add:
When posting a thread asking how to solve an error your script is throwing, please post the entire error message and stack-trace as well.

Without that, we can only make assumptions.

12 Likes

point #5 is the best one for saving time when you run into a bug.

4 Likes

"there is likely no good reason for you to be learning Unity on an alpha or beta version of Unity. " - GNU/Linux users have almost no choice there… :S

4 Likes

This is very useful. TYVM!

6 Likes

i agree, bloodwolftico.

2 Likes

Hello guys for Filipino out there I have tagalog unity tutorials kindly subscribe for more videos thanks

2 Likes

Very well explained the topic.

1 Like

That’s fantastic stuff @Joe-Censored . Unity Technologies should add that to the Unity download page (and maybe in the hub “while you’re waiting for installation… READ THIS”). I would say put as sticky here but doubt anyone would see it.

8 Likes

I’ve been guilty of 7 a whole lot. I love tinkering with new toys. But I actually know what I’m doing + version control so there’s that…

Great set of tips!

5 Likes

Game making is art. Every art form has its own set of rules. Newbies usually should not break those rules. Once you mastered the craft and you know the rules, you can start to break them when you know which rule you’re breaking, for what purpose and when. Or you need to be incredible lucky.

8 Likes

Thanks! Good advice!

1 Like

Hi everyone—I am the ULTIMATE Noob when it comes to Unity–so forgive me for the ridiculous questions I am about to ask. Hoping someone can point me in the right direction. My company recently hired a vendor to crate a VR training module. The module was created for use with an HTC Vive Focus. We have the source file for the training module. Is there a way to import the training module into Unity and republish for use with Oculus instead of the HTC Vive Focus?

1 Like

And it would be good to learn basic debugging skills! At a minimum, place numerous Debug.Log statements before and after the location of the code in concern which will show in the device logs. Write out all your variable values at run time when running on your Android device, don’t guess. So you don’t know how to capture device logs for Unity games? Google it! (search tip “capture device logs for unity”). Even better Unity - Manual: Debug C# code in Unity This might help too

9 Likes

I would add that if you want to install multiple unity versions do not install unity 5 in the same folder as Unity 2017 or up.

More recent versions can be installed side by side but unity 5 may conflict/break files. Learned this the hard way, had to completely uninstall/erase several versions, cleaned all unity related files from appdata ecc, because I’ve put unity 5 in the same folder as the recent versions.

Do Not open projects created with older versions using new versions of unity.

First backup everything if you need to do it, but if you are not really forced for some reasons to upgrade the project better avoid this. You will most certainly have a bad time with errors hard to debug or impossible to fix.

3 Likes

Thanks for the advice!

1 Like

This! I’ve been pulling my hair out for 2 days. Sadly, using the latest version on the download page and which is in the range of the recommended version for https://learn.unity.com/tutorial/2d-game-kit-walkthrough (2017.3 - 2019.2) does not work and leads to the exact situation you describe.

I wish they’d include a specific version used to create the tutorial, with a link to the download archives for that exact version. Tons of frustration just to get the menu option “Kit Tools” to appear, only to get to the second step and that step doesn’t work either.

6 Likes

Thanks for this video

2 Likes

Thanks for sharing.

2 Likes

For me, this post is just the right instruction, as for a beginner. The information is clear. Thanks to the author.

5 Likes