My experiences building immersive worlds with Microsoft Mesh✨ Mesh is now in Public Preview!
I've been building worlds in Microsoft Mesh for half a year in the private preview! Now it's finally time for me to share my experiences! 🤩
Microsoft Mesh has just been released into Public Preview! I've had the possibility and the pleasure to work on Mesh for almost half a year already in the private preview stage, and I'm so excited to finally get to share with you all of the awesome things possible with Mesh! 🤩
What is Microsoft Mesh?
Microsoft Mesh is the company's new "Metaverse" platform, that customers can build custom world experiences on top of. You can access the worlds on either a PC or a Meta VR-headset. One thing I applaud Microsoft for is not forgetting us PC users, but rather embracing the fact that many of us will be accessing these 3D worlds through a 2D screen. You can also join "Immersive meetings" in a 3D space right from Microsoft Teams, with literally just 2 clicks!
How do you create worlds in Microsoft Mesh?
Building custom experiences for Mesh is probably what many users (and nerds like me) are interested in. Especially since the sunset of AltspaceVR, many companies and communities have been waiting eagerly to start creating for Mesh. Here's the brief:
- The world creation for Mesh is done in the Unity game engine.
- Mesh has its own API's and packages that are distributed through the Mesh Toolkit.
- You can add interactivity to your world with Cloud Scripting in C# and use all the features of .NET core.
- You can also use Unity's Visual Scripting engine to implement interactivity without writing code!
- Mesh also has shared physics engine that you can use to add realistic mass and other features to items.
- Mesh worlds get deployed to the cloud and are managed in it's own online portal, fully secure.
My experiences working with Mesh 🏗️
Building worlds with Unity
To be completely honest, before Mesh I didn't have any experience with Unity. Sure, I had completed the "roll-a-ball" tutorial like 6 years ago but don't remember any of it. I hadn't worked with AltspaceVR, so I was really starting off fresh. And for another confession, I'm not really a 3D artist. I have tried to learn Blender on multiple occasions, but just can't grasp it compared to simple CAD modeling. However, with Mesh I still could do something. My first worlds (and honestly my worlds to this day) aren't pretty, but I'm more focused on the interactions and scripting!
Mesh Scripting
Like I mentioned, you can use scripting to add interactivity to your worlds. This in my opinion is what really unlocks the full potential of Microsoft Mesh. Scripting in Mesh exists in two forms:
- Mesh Cloud Scripting
- This is C#/.NET code written by you, which then gets pushed into an Azure App Service and is run in the cloud centrally for all users.
- Cloud scripting allows you to achieve almost anything, like access external data sources and APIs, move and enable objects, edit text and a lot more.
- You'll benefit hugely if you have previous experience with C# programming (or programming in general like I did), otherwise this will have a learning curve to utilize all of the features properly.
- Mesh Visual Scripting
- This is a scripting engine utilizing Unity's Visual Scripting, meaning you don't have to actually write code! Visual scripting is run locally in the client, meaning that it has some possibilities that couldn't be done with Cloud Scripting.
- Visual scripting is an easy way to enter the world of developing for Mesh, and you can easily learn how to use it from the Mesh 101 tutorial and example world!
- Even though visual scripting is "the easier option", it is plenty powerful. You can create amazing worlds and experiences just with visual scripting!
Managing worlds and events
When you're done with creating your world, you'll have to publish it to Mesh. That is done with a tool that packages your world and pushes it to M365, where your Mesh worlds reside. This is great, because you can be sure that your worlds and their data is safe in your own M365 environment. In the portal, you can manage your spaces and of course create events from them.
When creating an event, you can choose which people to invite, when the event will take place and a lot of different options. Mesh can support up to 16 people in the same space, after which people will be dropped into separate "shards" of the same world. However, if you're a presenter in the event, your avatar will be seen and heard in all of the shards!
What really makes Mesh the go-to platform for enterprises and companies is that it's built with the same security and compliance principles than all Microsoft services. Log-in gets handled with Entra ID (Azure AD), your data is safe in the cloud, and you have full control over it. You can easily decide which users get to join events and what permissions they have in them, so you can effortlessly host your own get together or all-hands event in Mesh!
Summary
So in general, Mesh seems to be an awesome platform to create and develop for. I was pleasantly surprised by the variety of possibilities given to developers working with the platform, literally the sky is the limit for what you can create with Mesh.
Be sure to stay tuned for more content on Mesh in this blog and my YouTube-channel. Also if you want to support me, you can buy me a coffee 🙂