Isotropix Forums

Streamed map workflow

Clarisse related tips and tricks

Streamed map workflow

Unread postby nico » Fri Apr 14, 2017 12:00 pm

Hello everybody,

I'm currently looking for a nice way to work with streamed map files.

The following topic has also been very useful for thinking about this: viewtopic.php?f=5&t=2851&p=11565

Especially when one would deal with big scenes, having all textures in streamed map file-nodes (or perhaps even anything) could lead to hiccups in scene performance, due to the streamed map file requesting data again from the server/storage when navigating your camera. So the way I'm looking at it now, is that ideally an artist doesn't have any streamed map files in his/her scene, right up to the point where it's being sent off to render.

Thus I'm considering using Python to have the artist easily swap the file nodes types (and file-paths) based on whether he/she wants the streamed map files or the regular map files. That way, the artist can work with lower and fixed resolution images (perhaps something like png's) and have a scene without the data loading overhead.

I have a few questions regarding this;
- If one would store a non-tx or non-tiled file in a streamed map node, does it then function (and perform) the same as a regular map file node?
Perhaps for this to be the case, I should also set the mipmap-mode on the streamed map nodes to None?

- If every texture in the scene is a streamed map file during rendering (so I swapped them all from the low quality png's to the full quality tx files), would this create an undesirable effect on performance?
I'm unsure whether having relatively large textures (1024x1024) on far-away objects would be detrimental to rendering performance compared to the perhaps 64x64 the tx-file would stream for the same texture if mipmapping is enabled.

What I can get from the way Arnold works, is that they prefer converting everything to TX (This might be an assumption though, based on some quick googling and this doc page: https://support.solidangle.com/display/ ... -+settings

Thank you for your time and consideration,
nico
 
Posts: 4
Joined: Fri Nov 04, 2016 12:34 pm

Re: Streamed map workflow

Unread postby sam » Fri Apr 14, 2017 1:39 pm

Hi,

Stream Map file are streamed during the evaluation. If you want to reduce the network stress then increase dramatically the Stream Texture Cache value in the Preferences which defaults to the low value of 4 GiB. This way there will be a lot less texture trashing as textures will likely be kept in memory. The other thing that you are omitting is that the Map file first load the textures at the highest resolution possible unlike Stream Texture Cache which will pull only the mip map level it needs and use more RAM. Ultimately this is more efficient as the renderer is not waiting for a large texture to load entirely before continuing its rendering. Futhermore via Stream Map File, the renderer uses the memory it actually need. So instead of waiting for all the textures to load (and eventually generate mip maps), textures are loaded progressively and at the right size required by the renderer.

Cheers,
Sam Assadian
Isotropix
CEO/Founder
User avatar
sam
 
Posts: 937
Joined: Sat Jan 26, 2013 12:33 am

Re: Streamed map workflow

Unread postby nico » Fri Apr 14, 2017 2:49 pm

Hello Sam,

Thank you for your response. The stream texture cache size is definitely something I will keep in mind.

Is that value only used during interactive sessions? Or is that cache size also used when rendering on a rendernode with crender?
nico
 
Posts: 4
Joined: Fri Nov 04, 2016 12:34 pm

Re: Streamed map workflow

Unread postby sam » Fri Apr 14, 2017 5:48 pm

Both, and this value is stored in the config file so if the rendernode uses the same config file, it will use the same value.
Sam Assadian
Isotropix
CEO/Founder
User avatar
sam
 
Posts: 937
Joined: Sat Jan 26, 2013 12:33 am


Return to Tips and Tricks