Relative Paths don’t always work the way I would expect them to…
Consider this situation:
- I want to use a Sand world, but then use it in several other worlds
- I want a Rocky world that also uses Sand
- I want an Island world that also uses Sand
I have two separate setups for folder structure that I tried.
{one} - This one is more flexible and ideal for modularity
My Depo:
C:\Dev\WorldMachine
My Rocky World
C:\Dev\WorldMachine\WorldA\worldA.tmd
My Sand
C:\Dev\WorldMachine\WorldB\output\height.tif
In WorldA, I want to use and output from WorldB …
[ul][li]when I use a input node, and point it to the height.tif from WorldB I get an absolute path:[/li]
[li]C:\dev\worldmachine\WorldB\input_maps\height.tif[/li][/ul]
What I would expect as a relative path: …\WorldB\output\height.tif
Relative paths can usually be up and down the filetree?
{two} - this one allows for downstream cascading only, far less modular
C:\Dev\WorldMachine
C:\Dev\WorldMachine\Composite\WorldA
C:\Dev\WorldMachine\Composite\WorldA\WorldB\output\height.tif
In WorldA, I want to use and output from WorldB …
[ul][li]when I use a input node, and point it to the height.tif from WorldB I DO get a downstream relative path:[/li]
[li]WorldB\output\height.tif[/li][/ul]
There are a couple of issues and problems with this workflow,if you are trying to build modular and automate world building:
[ol][li]Data portability: If I copied the c:\dev\worldmachine folder to another drive like D: the path is no longer valid, as it’s absolute instead of relative. Think build machines, source control, multiple users, workspaces and depot mapping … this will eventually be encountered. [/li]
[li]Modularity: I have to always order reuse in a downstream way. Eventually this will be a mess and become inflexible.[/li][/ol]