With V-Ray 6 Update 1 we’ve introduced a new intermediate format for scene submission to Chaos Cloud. This format gives the following benefits:
This format is used automatically when a scene is submitted to Chaos Cloud. You don’t have to do anything but upgrading to V-Ray 6 Update 1 when available to benefit from it.
There are other improvements due to this new format but they are harder to quantify and list as a simple bullet point. If you want to get some sense for them continue reading this post.
Deep Dive
In a series of forum posts I aim to share more in-depth information about the workings of Chaos Cloud for the technically inclined among you. I will always try to include a simple summary like the one above so that one could get the point even when they don’t want to read a wall of text.
Although the change of scene format has been mentioned in change logs already I think it warrants a bit more attention.
The V-Ray Scene (.vrscene) Files
In order to understand what the change is I would have to give you some context about how Cloud submission works in the first place. Don’t worry, it won’t be long or particularly complicated!
When you are rendering on your local machine everything is straightforward. You have your scene loaded in the software of your choice (such as 3ds Max, Maya, SketchUp, etc.) and at some point you want to render it. Then V-Ray kicks in and uses the files on your computer in order to produce an output image.
But what happens if you want to render this same scene in Chaos Cloud? Or on any other remote machine for that matter (because as you know “the cloud” is nothing more than “someone else’s machine”). Then you have to somehow transfer your scene and any accompanying files to this remote machine so V-Ray could use them while running there.
With Chaos Cloud this process is automatic. “V-Ray for X” and the Chaos Cloud software work in tandem to find out which files have to be uploaded and then do that for you. But how do they do that? Everything in this post revolves around this interaction.
Since day one Chaos Cloud has been using the V-Ray Scene files for this. I will also use just .vrscene for brevity from now on. The V-Ray running on your machine exports the scene in a .vrscene file which is then picked up by the Chaos Cloud software in order to upload the scene in its entirety. This includes the .vrscene file itself but also any other files mentioned in it. Other files may be mentioned explicitly but also implicitly. Remember that, it would be important later.
One could say that the .vrscene file is native to Chaos Cloud. The cloud back-end software uses it directly on our servers to produce your output images.
This works great but is not perfect. We could do better!
Version 2 V-Ray Scenes
So we did! With V-Ray 6 Update 1 we’re rolling out a new version of the .vrscene file (e.g. “Version 2”). It aims to make transferring scenes on a different machine easier. I will explain the main differences between the old .vrscene files and the new.
Binary Data
As you may know, the .vrscene file is a text file. But it also includes data such as geometry, materials, shaders and others. This data would be most efficiently stored in a binary format. But with “version 1” of the .vrscene files it is encoded in text format instead. Which causes .vrscene files to be much larger than strictly necessary in the ideal situation.
With the “version 2” of the .vrscene format this is improved. Such data is stored in binary format in a separate file. The .vrscene file itself only includes references to parts of the binary files where its data is stored. This change is the main driver behind the scene size reduction of the new scene format.
While at it we made another change aimed at reduced size. Previously the same piece of data could be repeated in the .vrscene file again and again. Imagine a 10MB geometry repeated for every frame in an animation, for example.
With the “version 2” this has been changed so that only one instance of the data is stored in the binary file. The .vrscene file could include as many references to it as it likes but the actual data is stored only once. The effects of this change varies from scene to scene. For some it may reduce the overall size spectacularly but for others it may have no measurable effect.
Explicit File Listing
Previously the Chaos Cloud software had to infer which additional files it needs to upload by reading the .vrscene file itself. Which meant that if there are some new features exported to it, the Chaos Cloud Client application had to be updated so that it knows about any new files needed for correct rendering. Bugs could easily be (and sadly were) introduced.
The “version 2” format fixes all of this by explicitly listing every file which is needed for correct rendering. This way any new features are “transparent” to the Cloud software. From your point of view this means that you will be asked to update it less frequently.
To achieve this we had to go through all of the V-Ray plug-ins and make sure they are ready for the new format. And this was no easy task considering how many of them there are.
As a result of this change some previously unknown bugs were resolved. So scenes which use the “version 2” format are already more accurate overall.
Limitations
Currently the Version 2 .vrscene file is only accessible when submitting to Chaos Cloud.
Not absolutely all scenes could be exported to the “Version 2” .vrscene format. There is a small number of plug-ins (nodes) which prevent exporting to it. This is temporary and they would be updated with time. In case a scene has any of the plug-ins in question then it would be submitted to Chaos Cloud in the old “Version 1” format automatically.
Examples
All of the above is a lot of words. I want to show you some examples! They are the most exciting stuff, right?
Scene Size Comparisons
I will export some scenes from chaos.com/getting-started to versions 1 and 2 of the .vrscene and compare them. Note that I will compare the .vrscene file of the old format to the .vrscene + binary file + explicit file list of the new format. Any additional resources required for rendering are the same between the two.
The “Tool Cabinet” scene went from 98 MB (v1) down to 44 MB (v2). This is 55% file size reduction.
The “VFMax City” scene went from 41 MB (v1) down to 32 MB (v2). This is 21% file size reduction.
The “VFMaya Character” scene went from 66 MB (v1) down to 46 MB (v2). This is 30% file size reduction.
The “VFSU Interior” scene went from 6.2 MB (v1) down to 2.9 MB (v2). This is 53% file size reduction.
Rest assured that the scenes are not hand-picked in order to produce good results. They were the easiest for me to measure as I already had them lying around on my machine. The reduction is very representative of what we’ve seen in the wild. It also holds true for very large scenes. I don’t have such a big scene on hand to include in the examples but if previously you had to upload 100GB I will not be surprised if with the v2 scene format this is reduced to 50GB or less.
Post (1/2) - Apparently you cannot post more than 5 images and the forum software is tricky with longer posts anyway.
- More accurate rendering on Chaos Cloud. Many differences between local rendering and Chaos Cloud have been fixed due to intrinsic properties of the new format.
- Reduced data size to upload to Chaos Cloud. The minimal reduction is around 24% for non-trivial scenes. But significantly better reduction was observed for many scenes.
This format is used automatically when a scene is submitted to Chaos Cloud. You don’t have to do anything but upgrading to V-Ray 6 Update 1 when available to benefit from it.
There are other improvements due to this new format but they are harder to quantify and list as a simple bullet point. If you want to get some sense for them continue reading this post.
Deep Dive
In a series of forum posts I aim to share more in-depth information about the workings of Chaos Cloud for the technically inclined among you. I will always try to include a simple summary like the one above so that one could get the point even when they don’t want to read a wall of text.
Although the change of scene format has been mentioned in change logs already I think it warrants a bit more attention.
The V-Ray Scene (.vrscene) Files
In order to understand what the change is I would have to give you some context about how Cloud submission works in the first place. Don’t worry, it won’t be long or particularly complicated!
When you are rendering on your local machine everything is straightforward. You have your scene loaded in the software of your choice (such as 3ds Max, Maya, SketchUp, etc.) and at some point you want to render it. Then V-Ray kicks in and uses the files on your computer in order to produce an output image.
But what happens if you want to render this same scene in Chaos Cloud? Or on any other remote machine for that matter (because as you know “the cloud” is nothing more than “someone else’s machine”). Then you have to somehow transfer your scene and any accompanying files to this remote machine so V-Ray could use them while running there.
With Chaos Cloud this process is automatic. “V-Ray for X” and the Chaos Cloud software work in tandem to find out which files have to be uploaded and then do that for you. But how do they do that? Everything in this post revolves around this interaction.
Since day one Chaos Cloud has been using the V-Ray Scene files for this. I will also use just .vrscene for brevity from now on. The V-Ray running on your machine exports the scene in a .vrscene file which is then picked up by the Chaos Cloud software in order to upload the scene in its entirety. This includes the .vrscene file itself but also any other files mentioned in it. Other files may be mentioned explicitly but also implicitly. Remember that, it would be important later.
One could say that the .vrscene file is native to Chaos Cloud. The cloud back-end software uses it directly on our servers to produce your output images.
This works great but is not perfect. We could do better!
Version 2 V-Ray Scenes
So we did! With V-Ray 6 Update 1 we’re rolling out a new version of the .vrscene file (e.g. “Version 2”). It aims to make transferring scenes on a different machine easier. I will explain the main differences between the old .vrscene files and the new.
Binary Data
As you may know, the .vrscene file is a text file. But it also includes data such as geometry, materials, shaders and others. This data would be most efficiently stored in a binary format. But with “version 1” of the .vrscene files it is encoded in text format instead. Which causes .vrscene files to be much larger than strictly necessary in the ideal situation.
With the “version 2” of the .vrscene format this is improved. Such data is stored in binary format in a separate file. The .vrscene file itself only includes references to parts of the binary files where its data is stored. This change is the main driver behind the scene size reduction of the new scene format.
While at it we made another change aimed at reduced size. Previously the same piece of data could be repeated in the .vrscene file again and again. Imagine a 10MB geometry repeated for every frame in an animation, for example.
With the “version 2” this has been changed so that only one instance of the data is stored in the binary file. The .vrscene file could include as many references to it as it likes but the actual data is stored only once. The effects of this change varies from scene to scene. For some it may reduce the overall size spectacularly but for others it may have no measurable effect.
Explicit File Listing
Previously the Chaos Cloud software had to infer which additional files it needs to upload by reading the .vrscene file itself. Which meant that if there are some new features exported to it, the Chaos Cloud Client application had to be updated so that it knows about any new files needed for correct rendering. Bugs could easily be (and sadly were) introduced.
The “version 2” format fixes all of this by explicitly listing every file which is needed for correct rendering. This way any new features are “transparent” to the Cloud software. From your point of view this means that you will be asked to update it less frequently.
To achieve this we had to go through all of the V-Ray plug-ins and make sure they are ready for the new format. And this was no easy task considering how many of them there are.
As a result of this change some previously unknown bugs were resolved. So scenes which use the “version 2” format are already more accurate overall.
Limitations
Currently the Version 2 .vrscene file is only accessible when submitting to Chaos Cloud.
Not absolutely all scenes could be exported to the “Version 2” .vrscene format. There is a small number of plug-ins (nodes) which prevent exporting to it. This is temporary and they would be updated with time. In case a scene has any of the plug-ins in question then it would be submitted to Chaos Cloud in the old “Version 1” format automatically.
Examples
All of the above is a lot of words. I want to show you some examples! They are the most exciting stuff, right?
Scene Size Comparisons
I will export some scenes from chaos.com/getting-started to versions 1 and 2 of the .vrscene and compare them. Note that I will compare the .vrscene file of the old format to the .vrscene + binary file + explicit file list of the new format. Any additional resources required for rendering are the same between the two.
The “Tool Cabinet” scene went from 98 MB (v1) down to 44 MB (v2). This is 55% file size reduction.
The “VFMax City” scene went from 41 MB (v1) down to 32 MB (v2). This is 21% file size reduction.
The “VFMaya Character” scene went from 66 MB (v1) down to 46 MB (v2). This is 30% file size reduction.
The “VFSU Interior” scene went from 6.2 MB (v1) down to 2.9 MB (v2). This is 53% file size reduction.
Rest assured that the scenes are not hand-picked in order to produce good results. They were the easiest for me to measure as I already had them lying around on my machine. The reduction is very representative of what we’ve seen in the wild. It also holds true for very large scenes. I don’t have such a big scene on hand to include in the examples but if previously you had to upload 100GB I will not be surprised if with the v2 scene format this is reduced to 50GB or less.
Post (1/2) - Apparently you cannot post more than 5 images and the forum software is tricky with longer posts anyway.
Comment