Hello out there gamedev land!
This is a place for me to post useful things using Linux, so that if others want to use Linux for this course they may have a preview of what to expect. I use the Linux operating system exclusively, I have nothing else. I know that Linux is not a supported OS for the course but I am doing it anyways. I plan on using this thread as a place to post how I have done it and what glitches I come across while doing so.
Preliminaries
My Linux box:
Linuxmint 18.2, which is based on Ubuntu, which is based on Debian. (Linux people will know what that means). So any system that is Debian based should have similar results to mine.
GPU: GeForce GTX 550 Ti
Linux specific Unity3d:
I am using Unity 2017.1.1xf1
Its found here, near the bottom of page 1. try searching the page for “2017.1.1xf1” to find it easily
https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/
Visual Studios code:
using version 1.18 as of writing, but this is updated frequently
.deb (debian install file) found here:
Extract Method Functionality
“Extract Method” is introduced in Section 2. To get it working you may need to update your MonoDevelop. The mono-project is sponsored by Microsoft. It is an open source version of the .NET framework. Mono version 5 or above should get “Extract” working. Check your Version of Mono with this command:
$ mono --version
You can install or update to the most current mono here:
http://www.mono-project.com/download/
Initially, I was using mono version 4 and VS code kept throwing me an error on start (but it would start). Updating mono should fix any Visual Studio code errors that you find. It did for me.
No Intellisense / Autocomplete
Occasionally, Visual Studio Code intellisense does not work for me. If this happens do the following:
- Close Visual Studio Code
- From Unity: Assets > Open C# project
This re-starts Visual Studio Code with intellisense working. Simply restarting Visual Studio Code doesn’t seem to fix it, I have to do it via the Assets menu in Unity.
Version Control:
Using standard git via the Terminal
Snipping/Clipping Tool
I use Shutter. It is probably in your Linux distribution’s Software Manager/Repository
Kazam is another good one. I use it for recording my Desktop/Window:
Or, from your debian based terminal:
$ sudo apt-get install shutter
$ sudo apt-get install kazam
Good Luck out there!
Section 1: First Steps
Everything has run smoothly with all areas of Section 1. Nothing to Report.
Section 2: Terminal Hacker
Regarding the provided Terminal assets for Terminal hacker: while testing in play mode I had no delete or backspace functionality. They simply did nothing at all. However, when the game is built and run the backspace works just fine. A quick search of Udemy and these forums for “backspace” returned zero reports that were similar. So I assume it’s a Linux only bug.
Everything Else works smoothly, game builds and runs just fine.
Section 3: Project Boost
Version Control Install
The Kraken Version Control noted in the course supports Debian Based Linux. I will be using git from the terminal for my source control. You can find it in your Distro’s repository or:
$ sudo apt-get install git-all
or read here:
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
Linking to GitHub
If you have a GitHub account and you want to push you local files to it with git then you will need to authorize your computer to talk to GitHub. I do this with SSH keys. You can find out how here:
https://help.github.com/articles/connecting-to-github-with-ssh/
This will also come in handy for pushing your 3_Project_Boost to GitHub for the first time.
https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/
Git Helpful Commands
$ git status
$ git diff
$ git --show-color
$ git log
$ git add .
$ git add -A
$ git commit -m
$ git push
Yeah… Thats enough on that…
Project Boost Completed
Finished this section without any Linux related issues.
Section 4: Argon Assault
Updating Unity
I am updating the Linux Unity Editor to version 2017.2.0f3, which is currently the final build of 2017.2. It can be found here, post #54:
https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/page-2
Issues found:
- No fly through after update - This was simply an issue with new default settings after updating Unity. The scene view defaulted to isometric mode. The Fly Through keys (right mouse with WASD keys) did not work.
** The Fix** – Change the text under the Scene Gizmo to “persp”
Lecture 81 - Waypoint Utility Scripts
- Issue found - There is no “Utility Package” under the Assets > Import Package Menu, and there is no Unity Down Load Assistant for Linux Unity.
** The Fix ** – The Standard Assets packages by Unity is available from the the Unity Store. Search for it and import as usual.
Lecture 94 - SendMessage()
- Issue found - Rename Tool does not appear to work to change both the class and file name at the same time. After renaming the Class I used the Quick Fix menu (ctrl + . ) to change the file name to match the class. Selecting “change file name to PlayerController.cs” did nothing. No changes were applied so I did it manually from the Unity Editor.
Lecture 103 - Back-pedaling WIth Version Control
Useful terminal commands for Stash:
$ git stash list // lists the stashes $ git stash show -p // shows the difference between the stash and the current state $ git stash apply // restores changes from the last stash $ git stash pop // restores changes from the last stash and then deletes that stash $ git stash clear // deletes all stashes
Useful terminal commands for branching:
$ git branch newBranchName // creates a new branch with the specified name $ git branch --list // lists all branches $ git checkout branchName // change to the desired branch to make changes to that branch $ git reset --hard commitNumber //rest your current working branch to a specified, prior, commit. $ git log // list prior commit changes and their commit numbers/code
Lecture 110 - Possible Lighting Bug
At the very start of my level, during play testing, the scene suddenly restarts with a change in lighting. It did not appear when using the waypoint scripts. It seems to have manifested after using Timeline. Feels more like a coincidence than a cause though…
UPDATE - When play testing game from the splash scene, the lighting bug goes away. When the the game is built and run the bug does not return.
Argon Assault Completed with no real Linux issues
Section 5: Realm Rush
Completed. No linux problems.