Unity to High Fidelity Scene Exporter


Give the blender exporter a shot and stretch out using the UV map instead of the repetition setting


Oh man, this is so awesome. Exactly what I was looking for when I came to High Fidelity. Using a closed-source, proprietary game engine to create my worlds.

With this available, who even needs Sansar anymore?


The nature of it is a bit experimental to see if users find converters like this useful, especially given that so many people are comfortable with Unity and have made scenes/worlds already.

I think people who would like to use scenes that they have already invested time making in Unity will find it has some utility.

I’m interested to know though if people actually like using it setup up their scenes in Hifi, but there are definitely changes coming in Edit and we just added different edit handles that a bit closer to how Unity’s works as well.

I also suppose if you always import the Unity scene at /0,0,0 with a uniform orientation as well then that could have some interesting layering results.


That is correct, terrains aren’t currently supported, and thank you for pointing that out as it was a good reminder to add some of the not-supported features to the current readme.

We are, however, doing some current exploratory on adding the terrain export feature and trying to assess the limitations and find workarounds.

@kellanhiggins might have more to add on depending on what he finds.


@Theanine lol, you can think of it like that, but you can also think of it as just giving users more options to skin a cat.

That just leaves the more important question of why are we skinning cats?


@Theanine hasnt probably seen the Blender Open Source method to skin a cat that I’ve been pushing


I just saw this : https://www.youtube.com/watch?v=_FKwW6x6WqQ&feature=youtu.be

Super interesting stuff!


Whats the licensing requirement? much of peoples scenes are built using bought objects in the marketplace, is there an implicit rights granted to use outside of unity?


Wouldn’t it be better to create a unity plugin that could inject the High fidelity server and network stuff into Unity? then we could just ‘use’ Unity. See Photon server or SmartFox etc… for integration pattern.


Hi @whyroc! Thank you for the insightful responses.

Regarding the licensing, that really is more a question to be answered between Unity and the end user on what content they are bringing in. You probably should check their EULA if you have any questions on using items from their Asset Store.

I also think you have a really good point on the integration into Unity directly. It’s difficult to say if that approach is technically easier for us as we leveraged @kellanhiggins past work he did to create the FBX exporter for his Unity building project.

This was definitely a much lower hanging fruit with a decent ROI for our users. He was, however, able to do most of the heavy lifting in terms of mapping Unity to Hifi, so something like what you mentioned is for sure possible without as much headache from scratch.

Our current approach is to get a better feel for the limitations with some real-world feedback by users and see if this is something that people even find useful before putting further resources into. I would definitely like to see something like that on the roadmap personally.


For myself, I am using the Unity exporter because I am already familiar with Unity (my first ever VR projects were created using Unity!!) and because of the ease of placing/moving/prototyping objects. I am not yet comfortable with High Fidelity’s built in “Create” menu.


Lol transparent textures not working as expected.

Not sure what’s causing this one.

Meanwhile, in Unity: image


If you are on a Mac, transparent can look like that. Otherwise, I don’t know.


or maybe it uses an opacity map (not supported in HF)
Use instead the alpha set on the diffuse map directly (albedo)


Looks like it was actually using a custom shader to create the transparency! I’ll try to find that setting in the default aldebo material :slight_smile:


@Menithal Oh, I saw your plugin, the day you posted it even. I respect and appreciate the work you’re putting in to it.

But like all hobbyists making things in their free time, one day you will get bored of it and abandon it. And then it will inevitably break after an update, with no maintainer to fix it. Which is why it needs to be something officially supported by High Fidelity Inc for it to matter in the long run.

I just find it baffling that High Fidelity was willing to put money and resources into interoperability with a closed platform like Unity - an engine with proprietary code and restrictive licensing that is known to constantly send “analytic” information without your consent. Where is this mythical crowd of Unity users that were clamoring for HiFi support? The answer - it doesn’t exist. If this is another attempt at trying to attract VRChat users here, this is not going to do it. They don’t care about open source, it is not a selling point to that crowd. If it was, they wouldn’t be using Unity in the first place.


Generally speaking most of us have been trying to push High Fidelity to contact blender experts, blender foundation, or get a good flow for blender among others in many, many community meetings in the past and present or to accept my worklist items. I got sick of waiting so damn long because they keep focusing on content instead of tools for content creators to make the process painless. And I am stubborn as an fOx.

So in short, the current work in progress version of the blender add on is my fastball pitch to what is needed. Discussions are under way, but its quite passive right now, the more features I bring and the more people use it the more this will activate.

I am planning a ‘professional’ (open-source != free product) version which I will keep non-essential, refined ui, and utility features (Zone generation, ambient light probes, evee support, animation rigs) that Ill be planning to sell as a package via blendermarket or have donation tiers via Patreon but this relies on a big factor:

The community is tiny and this sorta thing is sorely needed, so the version I am currently working on will be for free to promote growth, with experimentals or radical ideas saved for the version that will be for sale.

If High Fidelity decides to buy into my plan, and maintain it and give it out for free, that’ll be great, though less for long term product if hifi does succeed. Time would decide


I don’t know about anyone being attracted because of Unity support, but hey, it’s useful to me :slight_smile:

and @Menithal, I really appreciate the work you’re doing in this community. Your plugin has already been helpful to me.


I suggest you pass the files through a url encode before you store them in the json.

Unity has a habit of numbering objects with ‘#’ s so they wont work if the file name is used directly.

I might make a pull request for it in a bit, but got other things going on atm.


Can you give me an example of a URL encode. Do you mean having spaces in the object name?