I am using a texture, in the usual way the OBJ references the mtl file which in turn defines a material which specifies the texture image. That all works. I can change the mtl file to point to a different texture, I do this with the SaveData node. It works because the obj, mtl, and texture image are all located in the composition directory.
The problem comes when the composition is built into an application. The OBJ, (original) mtl, and texture image are in the resources of the package, but SaveData writes to the same location as the application (or to a location one chooses but for an application going to a third party machine that is a problem). Currently I change the OBJ reference to the mtl file to be in the users home directory and write my mtl file there also. But I hate it when applications write stuff randomly in my file system so would rather not do it myself.
One solution would seem for Vuo to provide a way of getting the path to the applications resources directory, but I don't think there is a way of doing that currently.
I am displaying an OBJ file which has a single textured mesh, the texture is accessed by the OBJ as an mtl file which in turn references the texture image.
I change the texture image and to get the obj to reflect that I create a new mtl file, saved using the SaveData node.
Until I save the composition as an application. The mtl file gets created in the directory the application resides but the OBJ file references the mtl file in the resources of the application package.