How does asset hosting work?


I’ve had a curiosity for some time, and thought that a thread might satisfy it for myself and others who are wondering. Like I said previously, one thing I love about Hifi is its open nature, and the fact that (unlike Second Life) both the client and the server software are open sourced, with functionality and logins not centralized to a specific server.

There does however seem to be an exception from this rule so far: Assets. Last I checked, you need to contact one of the project admins if you wish to upload a new model (such as an avatar) to use in Hifi. I also couldn’t find any information on how you can include your own images, sounds, etc. I imagine this might already be possible, so I hope I’m not asking something obvious here.

I was wondering how this is going to work in the end, if there are any plans for a final system at this stage. Will the asset server software also be opened up, so users can host their own content with and for their worlds? I hope that Highfidelity doesn’t plan to leave everyone dependent on the official data server(s) alone, and give them the ability to host their own models / textures / sounds on personal servers.


You can host your content on any http server that can be seen by clients. I host mine in a folder on the server at my ISP that holds my personal web site. A HTTP server on your home machine will do fine too (I lack the upstream bandwidth for that). Just FTP your content to somewhere public-facing and use the “load from URL” option (not the ‘load from file’ one) in interface (names may be slightly off what my memory thinks they are, but you will find them in a pop-up menu from the buttons on the right of the screen).


You can upload in Interface via the “Upload Entity Model” but it becomes public for anyone to access.

If you wish to host something, but free there is always - The only down side is that others can access it easily via your github account, like to view the contents.

As long as you can make the fbx (convert it via autodesk fbx converter), you can load it into HiFi, as @glenalec said, with the “load from URL option.”


Thanks for the info. Places to host stuff are not the problem, though Github is indeed the best nowadays. Was mostly wondering about how the system itself works.

And what I was actually hoping for was precisely a possibility to work with files from direct links, via http and ftp. I was separately going to ask if, for example, I could put an image on the surface of a wall using a direct link from Imageshack or Tinypic. Sounds like it though :smile: Can avatars attach external content to themselves directly, and would it work on any world they visit in this case?

What about including files from your local drive? Does the server software allow you to place files in a directory and use them in the world from there, without having to set up a web server separately? Are such files usable only on regions hosted by this server, or anywhere in the Highfidelity universe as long as your server is online and the files can be accessed through it?


The easiest way I can say is look into how an fbx file works and handles images. Right now HiFi works based on fbx files and it stores files either inside and extracted at the viewing end or hosted in the same location as the fbx file. That is the structure that defines how stuff is displayed in HiFi but someone that deals more with it would have to explain in deeper detail.

As for hosting the images yourself, you could in theory if you had a web server running on the same server as your hifi stack but it would again have to be built around the hierarchy of the fbx files.


@Coal So only the fbx model format is currently supported? That is good to know. A bit worrying since I hear it’s a proprietary format, so I hope that won’t affect the open nature of hifi or working with Blender 3D.

I was hoping that you could separately put images on the surfaces of voxels, in which case jpg / png / tga / dds files could be used directly. In the case of sounds, directly using wav / ogg / mp3 files.


@MirceaKitsune Actually a lot of folks use Blender and export via fbx. It is not as proprietary as some think because a few different programs can export to fbx. There is also the Autodesk FBX Converter where you can input other formats and get an fbx.

As for sound format, you can use sounds with javascript like for scripted items in world and even scripts that run on your Domain Stack. You can trigger a sound on someone clicking, coming in contact with an object etc.

Javascript and FBX is the key right now in HiFi, but both are open enough to a degree where you can use them from a multitude of programs and export it.


@Coal Thanks, that clears things up some more. What about texturing voxels or procedural surfaces directly, since I assume fbx only applies to fixed meshes. For example, will metavoxel constructs allow an image to be referenced via direct link?


As I understand it, plans for the asset storage and distribution are currently undecided. However, from feedback, I understand the system may eventually end up being based on something like this:

  • davedub