On my previous article, I have tried to explain some main optimization topics in Unity. In this article, I will be focusing on Optimizing the UI. You might be surprised how UI might slow down your game with an unproper design. The main reason is that UI system does not have the functionality to update a single entity within the Canvas.

As Unity suggests :

Because of the way Unity handles UI rendering, a canvas element that changes its position, scale, or rotation forces the canvas to rebuild. …

On my previous article on Unity Profiler (click here), I have provided some basic optimization examples. Before moving on, please do not forget that unused scripts and methods are bag of load for your project and you should eliminate them.

In this article, I will be presenting additional suggestions for optimizing your game mainly by scripting.

Caching

While caching an element, make sure to cache the one that you want to access to. For instance, if you want to change the color of a game object, you will need to access to its material via Renderer. However, if you cache the…


On my previous article, I have tried to provide a brief layout for using the Unity Profiler. Before moving further on, I have noticed that I needed to have a better understanding regarding memory allocations. We want the GC Allocation value low, of course we want minimal garbage in our project, but I really wanted to know how we are creating these garbages and the way these garbages effect our games.

Before getting into detail Unity’s memory management system, we need to understand the memory management concept in brief. …


When it comes to optimization, Unity once again comes with a ready to use tool which is quite easy to use: Profiler.

Unity Profiler provides us a complete performance sketch of our project including its every aspect. By using the Profiler tool, we can easily determine the parts that needs to be improved. In this article, I will try to briefly explain the basics of Unity Profiler. For detailed information, I highly recommend you to take a look at Unity’s own article on this topic:

Profiler Window Summary

First we need to open the Unity Profiler Windowby clicking Window — Analysis — Profiler.


Yesterday, I have spent some hours in searching the optimal way to guide my AI game objects along a curved path. First, I have tried to manually set a curve variable, which I optimized along the path to get a smooth AI run.

Secondly, I have tried setting some waypoints (transforms within empty game object) and updated the script to move with Vector3.MoveTowards(target).

Both of the solutions work but, I was not happy with the way I am doing it. Additionally, I was only able to observe the results during run time. If I notice a slight mismovement, I needed…


Closing to 120 day line on my journey, I have slowed my pace on the program and started to build & destroy some game prototypes. It only remains a week for the 120th day, and I am more than happy with the progress I have made since then. The great thing is that, there’s still much to learn!

This build & destroy workout has been working great so far. It is really helping me to find out my weakness and strengths on this field. …


Here’s the explanation of Asset Bundles by Unity:

An AssetBundle is content that is stored separately from a main game or application and loaded (or downloaded, in the case of mobile and online apps) at runtime. This helps minimize the impact on network and system resources by allowing customers to download and install only the parts they need. AssetBundles can also be used to update or add to content post-release.

So you got the point, it is a good thing :) As of 2018, Unity introduced Unity Addressable Asset System which provides an easier way to handle the assets according…


On the last 2 days, I have started on building a new game. This will be the first game I am going to publish (hands crossed) — and I hope I will be sharing some progress reports soon enough. Anyway, back to the AR Application.

If you are not familiar with my recent updates, I was working on a AR application in which we you can check my previous articles on it. You can check my previous articles for more information regarding the application.

Now, it is time to bring our horse model in! As the target image, I have…


As I have stated on the previous article, rather than the Main Camera, we will be using AR camera. By selecting GameObject — Vuforia Engine — AR Camera; an AR Camera will be added to the scene. Once it is added, we can delete the Main Camera as we will not be using it.

In order to use the AR Camera, we will need to assign a target image. Once the camera detects the target image, it will enable the AR experience.

In its asset set you have imported from the Unity Asset Store, Vuforia has provided some images that…


To develop applications with AR in Unity, we are going to use Vuforia Engine. Vuforia Engine is the most commonly used program for developing AR applications for different platforms including PC, mobile, eyewear. By using Vuforia, we can build AR applications on Windows, IoS and Android platforms.

To enable Vuforia Engine in Unity, click on File — Build Settings — Project Settings and click on the XR Plugin Management on the left side. Then, simply click on “Install XR Plugin Management”.

Once I have installed it, it gave out an error :

error CS0117: ‘BuildPipeline’ does not contain a definition…

Ali Emre Onur

Unity Developer

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