ProBuilder for Unity is now Free

probuilder-free

The title says it all. It is pretty exciting news and if you are working on a VR title, then you definitely need to check it out because it makes creating rooms really simple.

You can watch me create two rooms and a hallway in just a couple of minutes in this week’s video:

Microsoft Still Wants Your Feedback

I’m back in Seattle writing another blog post talking about how Microsoft wants your feedback.

I’m attending the Microsoft MVP Summit. To attend this summit, you have to be a Microsoft Most Valuable Professional (MVP).

I was fortunate enough to receive this award from Microsoft back in 2009, and I’ve been given the award every year since then.

Originally, I received this award for DirectX and XNA. Then I was awarded for ASP.NET / IIS and now I’m a Windows Development MVP that focuses on Mixed Reality.

One of the big benefits of being a Microsoft MVP is that you get to meet the product teams at Microsoft and provide feedback. I’ve been spending my time between Windows and ASP.NET sessions.

Being able to provide feedback to the product teams is a great perk of being a MVP, but…

Here’s a secret…

You don’t have to be a MVP to provide feedback.

Sometimes it can be easy to think of Microsoft as this massive faceless company that only cares about the bottom line.

As somewhat of an insider, I get to meet the actual product team members that make the great software and products we get to use.

It isn’t a faceless corporation. It is a company made up of tens of thousands of employees who are dedicated to creating great experiences for their customers … you and me.

One way they can do that is by knowing which things they are doing well and which things can be improved.

The feedback forms in many of the applications go to the actual teams that make the product.

You can let your voice be heard by simply providing feedback through the app.

It’s a great privilege to be able to come out to Seattle every year and meet with the product teams. I’m hoping I’ll be fortunate enough to be able to attend next year.

Every year, a theme I hear from the different teams is they want to know how they can improve and what they can do better.

So take the time to let your voice be heard. You don’t have to be a MVP to get Microsoft’s attention.

I made a companion video to this blog post, which you can watch here:

Change Unity Default Script Templates

If you are constantly changing your MonoBehaviour classes to have the curly braces start on a new line then this little trick will save you some time.

Browse to your Unity installation folder and then go to the Editor\Data\Resources\ScriptTemplates folder.

e.g. C:\Program Files\Unity\Editor\Data\Resources\ScriptTemplates

Find the file with NewBehaviourScript in the name. For example:

81-C# Script-NewBehaviourScript.cs.txt

Open it in Notepad++ (to easily overwrite the file, but you can open it in any editor)

Make the modifications you want and save the file. If you can’t save it in the same folder, save it somewhere else and then copy it over.

You can see me do this in a super quick video:

Mixed Reality Toolkit Reflection Extension Method

I received a question a few weeks back about getting the Curved VR Keyboard to work on the HoloLens.

The error message appeared to be a reflection issue. UWP has some issues working with reflection because UWP is not managed. It is native and has a projection that allows us to write JavaScript apps or C# apps (and other languages) and it does the projection. This is really nice because we can write code using the language we like and deploy it to the Windows Store.

However, this means that some of the reflection APIs don’t quite work.

In particular, trying to call GetProperty or the like can cause issues. Fortunately, when it comes to Unity this is solved by the Mixed Reality Toolkit. There is a handy extension method that was created on the system’s Type class. The GetBaseType extension method will return the correct base type for UWP as well as when the code is running in the Unity Editor.

This is done using compiler directives (like #if UNITY_WSA && !UNITY_EDITOR ).

If you are trying to use a Unity Asset Store asset, like the Curved VR Keyboard, on the HoloLens or an immersive headset to run in the Windows Store, then you’ll want to avoid using reflection, or if it is needed, make sure you grab the appropriate base type.

Here is a video I created as I blindly tackled the problem.