CODEX

Setup a 3D and Video Studio on Ubuntu Linux for Free

Unity and Blender for 3D game development, modeling, animation, and video editing using robust free tools with Ubuntu

Jason Sturges
Jan 21 · 7 min read
Image for post
Image for post

In this walkthrough, I’ll start with some common developer bits for those pursuing game development; otherwise, jump to the 3D or Video section.

As well, I’ve put together a video demonstrating these steps:

But first, let’s start with some general app.

General Applications

Before diving in, I’ll mention a few apps that people may not realize are available in Ubuntu.

Personally, I’m not a huge fan of Firefox that comes packaged with Ubuntu desktop. It’s a matter of preference — some use Chromium, but note that Google Chrome browser is available.

File sharing integration with Dropbox on Ubuntu is pretty slick, but note there are limitations with selective sync in terms of “online only” features you might find on PC or Mac.

Development

There are some developer bits that will come in handy we need to install before getting to our apps.

Install a base set of packages for building, that includes libraries, compilers, and some utilities. Execute the following in a terminal:

sudo apt-get install build-essential

Install git for distributed version control, tracking changes to files by executing the following in a terminal:

sudo apt install git

Some software will require curl (Client URL) to transfer data via the command line, but this is also a great utility for developers. Execute the following in a terminal:

sudo apt install curl

Likewise here, some software will require wget (GNU Wget) to transfer data. Execute the following in a terminal:

sudo apt install wget

Node.js runtime built on Chrome’s V8 JavaScript engine is nice to have, but a little tricky to find the installers, which are offered by NodeSource.

On Node’s download page, look for the Installing Node.js via package manager to find the Debian and Ubuntu based Linux distributions instructions.

This will redirect to you NodeSource’s Binary Distributions GitHub repo. Find the Debian and Ubuntu based distributions installation instructions in the readme, which will update your sources list and install node:

curl -sL https://deb.nodesource.com/setup_15.x | sudo -E bash -
sudo apt-get install -y nodejs

We’ll want both the .NET Core SDK and runtime available from Microsoft.

On the downloads page, find the Linux group and select Install .NET which will take you to Microsoft’s Install .NET on Linux documentation. Under Ubuntu, select the version, 20.04 LTS in this case.

First, update your: package repository:

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.deb

Install the SDK:

sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-5.0

Then, install the runtime:

sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-5.0

To manage dependencies or variations between multiple develop environments, Docker is an invaluable tool. It’s not per-say relevant to what we’re trying to accomplish and can therefore be skipped, but I’ll mention it as an integral part of a development environment.

Installation is a little obtuse, so find the Install Docker Engine on Ubuntu installation documentation and scroll down to the Install using the repository section of the guide.

First, add some dependencies

sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common

Add Docker’s official GPG key:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Add the repository, x84_64 / amd64 for most people:

sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"

Update, and install Docker engine:

sudo apt-get updatesudo apt-get install docker-ce docker-ce-cli containerd.io

Start the service:

sudo service docker start

And finally, add your user to the docker group to prevent for ease in managing the instance. Otherwise, you might find a variety of security issues and constant sudo operations down the road.

sudo usermod -aG docker [username, as in: jason]

This change should take affect after logging out and back in again; although, I’ve found the need to completely reboot for this to work. Reboot the machine and login back in to test the instance.

While we’re on Docker, this would be a good time to add Docker Compose — a tool for defining and running multiple Docker applications.

Find the Install Docker Compose documentation, and select Linux under Install Compose, and execute the following in a terminal to download docker-compose and give it executable permissions:

sudo curl -L "https://github.com/docker/compose/releases/download/1.28.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-compose

For those who’d prefer a GUI over command lines for git operations, I really like GitKraken, a free git client with robust features.

Simply go to the downloads page, and select the .deb package. After your download is complete, double-click the .deb file to install it through Ubuntu Software.

Editors

Microsoft’s Visual Studio Code is a lean, fast, brilliant editor that’s extremely capable across multiple platforms.

Select download and chose the 64-bit .deb package. Once downloaded, double-click and install it through Ubuntu Software.

My personal favorite of code editors is JetBrains IntelliJ IDEA, which is available for free as the Community edition; or, fairly priced via Ultimate.

Installation is available as a snap package — execute the following in a terminal:

sudo snap install intellij-idea-ultimate --classic

For game development with Unity, JetBrains Rider offers an extremely robust and competent integration with Unity for editing C# scripts.

It’s also available as a snap package — execute the following in a terminal:

sudo snap install rider --classic

3D

Finally on to the good stuff! Whether you are interested in 3D visualization, game development, or animation, Unity and Blender are a powerful duo on the Ubuntu operating system.

Recently Unity launched their editor for Linux — it’s still a little primordial, and odd to install. Certainly I would imagine that will change soon.

Image for post
Image for post

But for now go to the Unity Editor for Linux announcement in the Unity Blog.

Scroll down to the How to get it section and go to the Unity Hub link.

Oddly, this is a forum post that lists links to the installer. Note the link has been updated since the first post — you’ll want to navigate to here to install the app image.

An App Image is a fully contained Linux application than can run anywhere.

In our case, move it to /opt and give it executable permission.

sudo mv ~/Downloads/UnityHub.AppImage /opt
sudo chmod +x /opt/UnityHub.AppImage

Then, simply double-click to run Unity Hub to manage Unity editor installs and projects.

From Unit Hub, goto Installs to add an instance of the Unity editor:

Image for post
Image for post

To integrate JetBrains Rider with Unity as the code editor for C# Unity Scripts, goto Edit Preferences, and under External Tools chose Rider 2020

Image for post
Image for post

For 3D modeling, 2D grease pencil, and animation work, Blender is a leader in open source 3D creation.

Image for post
Image for post

On the download page, chose Linux to install as a snap package. Execute the following in a terminal:

sudo snap install blender --classic

Launch the app:

Image for post
Image for post

Checkout all the sample projects from Blender Cloud.

Image for post
Image for post

Video

Finally, some video tools for post production and transcoding.

Utility that I really like is HandBrake — a tool for converting video from nearly any format to a selection of modern, widely supported codecs.

From the downloads, under Linux, Ubuntu deb I’d recommend installing as a PPA. Add the repository and install by executing the following in a terminal:

sudo add-apt-repository ppa:stebbins/handbrake-releasessudo apt-get updateapt-get install handbrake-gtk

Professional video editing software, DaVinci Resolve is truly amazing, offering video editing, color correction, visual effects, motion graphics, and audio post production.

Image for post
Image for post

Scroll down to the Download button and select DaVinci Resolve Studio 16 for Linux. You’ll be prompted to enter some personal information to registry before you are able to download.

Once complete, you’ll end up with a zip file containing a PDF of installation instructions, and a .run installer file.

Double-click the ZIP and press extract.

Once extracted, add executable permissions to the .run installer and launch by executing the following in a terminal:

chmod +x ./DaVinci_Resolve_16.2.8_Linux.run
sudo ./DaVinci_Resolve_16.2.8_Linux.run

This will launch an installer — follow the steps to install the software.

CodeX

Everything connected with Code & Tech!

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store