Shared Network Server Example
This example seeks to illustrate some of the "whys" a shared Art Server is the the appropriate way to set up your Art Server. It also briefly describes how HeroEngine parses the location of resources (textures, meshes, etc.).
- Local Area Network Art Server (Art Server): This is stored in a hard drive on your machine or a network machine. This is where you have your textures and exported models from Max or Maya or whatever tool you are using.
- Remote Art Repository: This is what the Repository Browser explores and is where HE gets its resources from to use in the game.
- That you understand exporting from 3D Studio Max to the Art Server and then use the Repository Browser to move the assets from the the Art Server to the Remote Art Repository.
- You understand that the main thing is that the folder setup must match between the local and the remote art repositories. It looks something like this:
How HeroEngine parses the paths to resources
C:\Art\HE\ (local hard drive example) \\ArtServer\GameContent\Art\HE\ (networked drive example)
Notice that both examples end in \HE\ This defines the root of the file structure and every folder inside this root MUST match with a corresponding folder in the Remote Art Repository. Otherwise, the engine will not be able to find the textures and exported meshes.
- NOTE: The exact string (\HE\) used to identify the root is configurable on a per-universe basis. A clean engine version of HeroEngine will use \HE\ as a default, however your team can (and may have) changed this to match your game title or other convention. For example, in our Hero's Journey Reference server, it is /HJ/. Please check with your team lead for the exact string. See: Editing client configuration values. The
ArtDirectoryclient configuration string determines the path used.
HeroEngine uses the root (defined as \HE\ above) to identify where the file structure in the Remote Art Repository is. So, when HE opens and tries to reference a mesh file or a texture, it will trim off everything previous and up to "\HE\" before requesting that resource from the Repository. For instance, if a mesh file references a texture, it will look something like this inside the engine:
This matches exactly where you have that texture on C drive when the mesh was created in 3D Max. HeroEngine searches for a match on \HE\ and strips out everything before it and including the \HE\. After trimming, it will end up looking like this in the engine....
It's at this point that HE can successfully request the texture from the remote repository. When you look at the remote repository, this texture would be stored in that exact path ("Textures\brickwall.dds"). The folder Textures will exist at the root level of the REMOTE art Repository.
We highly recommend that you use a mapped drive letter that resides on a shared network accessible server that all artists can access....not because the engine requires it, but because it will make it easier for artists to share their work among each other.
Artist A stores their art in the following root path on their local machine:
Artist B stores their art in the following, different root path on their local machine:
Both export their art and then use the repository to move it over to the Remote Art Repository. They look at their art inside the game. It looks good, and the engine shows it. All appears to be well in Denmark.
Later, Artist A moves on to another project and Artist B inherits Artist A's art.
Artist B copies over Artist A's work into their art folder.
However, when Artist B opens Artist A's art in Max, it won't show textures, because Max expects to find it in C:\Art\CoolGame\HE\ but Artist B keeps her art in D:\MyArt\CoolGame\HE\ .
The moral of this example: This means that Artist B must re-create the Artist A's folder structure or re-link the textures and re-export all of Artist A's files. However, if both Artist A and B worked in a common networked drive, using the same mapped drive letter, they can both work on each others file without having the hassles mentioned above.
So, the bottom line is we recommend all your artists work from a shared network drive.