Terminology, and more specifically labels, are a real problem. The problem is that what they actually mean often becomes distorted over time. I recently read a whole thread on the word “decimate”;

The core design decision when using MLAPI is who has the responsibility for updating the data, is it the Server or the Client? …

Today I was following the basic setup tutorial for the Mixed Reality Tool Kit (MRTK). However, I hit a problem, I didn’t see any controllers and the little ‘Hello World’ cube was just stuck on the screen.

Boss with Nested Objects

My Xevious Boss is an object with five child, or nested, objects. To convert this into an MLAPI object I added a NetworkObject to each node, i.e. one for the root Boss and one each for the nested objects. When I instantiate the boss, or in MLAPI terms Spawn the…

German Tunic

A typical way of creating a character for your game is to take a 3D model of a person and craft the clothing onto it. That works well. However, it can be a little expensive if you want to create variations. …

Today I was slapped in the face by MLAPI.

I have been happily testing Xevious using each individual level since essentially the levels contain the different types of enemies I need to make “network-ware”. However when I tried a complete run-through of the game it did NOT work.

Levels & the hierarchy


Orange Bomb Target

In my previous article I wrote about synchronising the bullets. Xevious has a secondary fire, a bomb that is dropped onto a bomb target. I.e. when you drop a bomb there are two objects created, a target and a bomb. Both of these must be synced between the players. Previously…

Who gets the points?

In my previous article I talked about how you can achieve better performance by creating projectiles locally when compared with creating a server instance and keeping them synchronised with the clients. But what happens when the projectile actually hits something, who gets the points associated with killing the enemy?

Projectile Ownership


In my previous articles and video I demonstrated how to synchronize the enemy between the co-op players. Essentially it is about the Server using MLAPI Network Object and Network Transform.

Simplified Enemy Network Sequences

This works well for the enemy because the majority of the logic (firing, moving, etc.) is all held within the…

Recently I was reading a plea for help where someone was getting a, “your file is too large to upload” style error message from Git. That made me question, are we using Git correctly?

What is Git?

Whilst Git came from Linux as a source repository it has now taken on a life…

Paul Marsh

Unity, VR, Enterprise and .Net 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