Announcement

Collapse
No announcement yet.

Optimizing my scene using vray proxies

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Optimizing my scene using vray proxies

    I've got an exterior "still" shot that I've populated with almost 100 xFrog trees (maybe 5 types of tree instances). This project is almost unbearable to open up and manuever around in the viewport, let alone rendering it. Infact, the scene has just got to the point where it crashes when I do try to render it. I'm Running 4 Gigs memory with 3 gig switch enabled on a single core xeon 3.0.

    So I've just tried using the Vray proxy feature for the first time. I made proxies of all the xfrog plant objects and deleted the old objects leaving nothing but the proxies. The scene will atleast now start renderign the shot, but that's about it, still painfully slow. Are there any other tips and tricks for cleaning up memory requirements for scenes like this with lots of 3D geometry? Was it smart to use instances of the trees for duplication? Perhaps it was the render settings I chose?

    I set the render up for 5000x3500res Qmc/Qmc, QMC sampling 2/5, 2 global subdivs, .001 noise thrsh and I'm spliting it over multiple machines accrossed the network.

    Thanks for any advice in advance - Dave

  • #2
    your best bet would be to create a proxy for each unique type then instance them around your scene. Also keep in mind, that while proxys can help with memory issues, it will most likely slow your rendertime down, possibly alot.
    ____________________________________

    "Sometimes life leaves a hundred dollar bill on your dresser, and you don't realize until later that it's because it fu**ed you."

    Comment


    • #3
      Wow, didn't realize about the performance hit using proxies. Do you think that using proxies for a still shot is worth it? Wern't proxies meant for improving animation performance more then stills?


      So what I'm gathering here so far is that I'm pretty much screwed unless I beef up my system specs and go 64 bit so I can use more memory?

      Comment


      • #4
        If it's a still, I'd look into strip renderings with backburner

        Comment


        • #5
          I've just heard a rumor that tons of opacity mapped objects don't render very well in Vray, is this the case? I also heard a rumor that if you move the opacity map to the refraction slot and make the IOR 0, that it might help the performance? Any thoughts?

          Thx - Dave

          Comment


          • #6
            Proxies were design purely to use lower memory usage at rendertimes, and also to improve the viewport performance to an extent ( a fairly good extent mind you)
            So, my rule of thumb is if you can render your scene without have memory problems, dont use proxies. If you are having memory problems, or foresee them in perhaps a huge scene then use them wisely.
            As Percy said, one proxy per tree variety then instance those around. IF you just select all the existing trees in your scene and make one big proxy, then you will KILL the render time and your memory usage will be basically the same.

            Opacity maps can cause problems, but if you drop the bitmap blur to 0.01 and turn of filter you will improve the render time quite abit from my experience. As for the refraction slot trick, I dont know if that holds any creditibility anymore.. but you could easily find out in a simple tests scene in a matter of minutes.

            There are quite a few threads around for help lowering memory usage, including some good info on the spot3d pages.
            Couple quick points, if you have displacement stick with 2d for lower memory usage in general, dont use HUGE displacement maps. And dont oversize your textures.

            Comment


            • #7
              Thank you daforce,

              What are you aloud to do to proxies after they are created? Can you atleast scale them? (FFD deformations?) How about improving their viewport visibility enough to check for interferances when placing them around?

              I really feel like this scene I have shouldn't be this memory intensive. The whole time I'm working on the scene, the resource manager barely breaks 1 gig. It seems like when it comes to render time, the memory goes throgh the roof.

              Comment


              • #8
                After they are created you can definitly scale them, but im not sure about FFD... but I dont see why not.

                In terms of improving their viewport visibilty, well in their initial state they show a much lower poly version of the original mesh which is all you generally need to place things properly. If you needed a more details version would would need to make that yourself and align and attach it to the proxy I guess... if that would even work.

                You could perhaps use some replacement script to put a dummy at the bottom of each of the current mesh trees. Then use the same or similar script to then instance the proxys onto those dummys. That way they should be in the same place and rotation

                Comment


                • #9
                  Also note: once created, you cannot Clone->Copy a proxy, you may only Clone->Instance

                  ^ Gave me problems earlier before I found out.
                  Colin Senner

                  Comment


                  • #10
                    there are a number of modifiers you can use on proxys. noise for instance, being one of them, while bend being one that you can't. I dont think anyone has composed a list of modifiers that work yet.
                    ____________________________________

                    "Sometimes life leaves a hundred dollar bill on your dresser, and you don't realize until later that it's because it fu**ed you."

                    Comment


                    • #11
                      Hello there,
                      Maybe it´s too late for this but, as for the opacity map problem, we use a max blend material instead. Just put your material (without opacity map) in material 1's slot, none in material 2, your opacity map (inverted) in mask slot and activate the "use curve" option. Renders much faster than with the opacity map.

                      sorry if my english isn´t quite clear,
                      Gustavo
                      Best regards,

                      Gustavo

                      Comment


                      • #12
                        Espaco, are you using the 1.5 vray blend material for that or standard blend material?

                        Thanks - Dave

                        Comment


                        • #13
                          The standard one. Never tested with the vray one, it´s in my todo list.

                          Gustavo
                          Best regards,

                          Gustavo

                          Comment


                          • #14
                            sorry, but i´ve forgot to say if you use this blend material with onyx trees you have to clean the multimaterial originated by the treestorm plugin before generating the proxy so it only have the used materials in it , otherwise the blend material doesn´t render the mask correctly. i usually do this after converting the tree to a editable mesh, before creating the proxy. i suppose if you have a blend material in a multimaterial, even if it´s not from treestorm, you´ll have to keep it clean too.
                            Best regards,

                            Gustavo

                            Comment

                            Working...
                            X