Announcement

Collapse
No announcement yet.

Rendertime proxy scattering

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

  • Rendertime proxy scattering

    Didn't wanted to post this into the wishlist section, because I think the chaos guys have enough work already, this is just something theoretical, and for some mental fun.

    Rendertime primitive generation is a great thing to have, can make almost impossible scenarios renderable. Vray can handle almost infinite amount (tested billions, couldn't really test infinite though... ) of polygons with the proxy system, if the proxies fit nicely into the ram. The bottleneck is usually max. Even with a few thousand objects, the performance drops badly, not to mention cases where you would need at least several hundred thousand objects. Like plants, rocks, on a large meadow, but this is only one example.

    Rendertime proxy scattering would be a system like the current vrayfur. It would be a system used to randomly scatter geometry over a surface or in a volume, but could use any mesh, or an already created proxy as a source. It could be a base of a complex system used to create massive vegetation, immerse number of random stuff, or anything you can think of. The principal is that the placement of the instances is calculated during rendertime. There is almost no additional scene setup time, no need for max, or any application to handle many objects, etc... All the object creation would be on demand. Adittionally, the system would allow disk caching of scatter data in a block readable format, pretty like the proxy now, this could be considered as a recursive "proxy". You've got a dataset containing placement, transformation, and additional function (like random materials, etc...) information, that can be accessed fast during rendertime, and from this information, proxies are created. This method could be further expanded. You could scatter clusters of scatter data in multiple iterations to get a fractal placement of zillion objects effectively.

    Upon a core like this many cool features could be developed, like random shader assignment, collision detection, just the usual user friendly and handy stuff.

    I know this all is just pretty lame theory, but I thought I post it here so it might give some ideas. However, this all is so obvious, I don't think I was the only one who though about it.

    best regards,

    A.

    PS.: What happened to all the Render theory threads? Did they get archived or something?
    credit for avatar goes here

  • #2
    Well, it is certainly an interesting idea (the subject has been brought up already), so we'll see what happens.

    About the Render theory threads, they are there but by default the forum only shows threads modfied in the last 30 days (there is an option at the end of the page to show older threads as well).

    Best regards,
    Vlado
    I only act like I know everything, Rogers.

    Comment


    • #3
      Sounds great!

      Thank for the answers! I still got to get used to vBulletin.

      best regards,

      A.
      credit for avatar goes here

      Comment


      • #4
        Hi,
        I think it would be best to implement this for ParticleFlow. Then all the little gimmicks can be coded there.

        Best regards,
        Dieter
        --------
        visit my developer blog

        Comment


        • #5
          My first try to scattering large amounts of vegetation was with particle flow. Since VRay and the proxy system proved to be extremely flexible, when it comes to large numbers, it seemed quite obvious to drop a PF node into my scene, pick a proxy and, whoops... first disappointment. Second was when I tried the same thing with an ordinary mesh. But using a particle system like PF to drive placement in the first place seems pretty evident to me.

          best regards,

          A.
          Last edited by Aldaryn; 05-12-2007, 11:30 AM.
          credit for avatar goes here

          Comment


          • #6
            Actually I would prefer this as mentioned first: like vray fur. This would make deformation based on fur shape possible ( I seem to remember someone posting about deforming models archived as rib through lattices\ffd modifiers somewhere on this forum), but would require Vlado to add fur "orientation" vertically into the system so to randomly rotate the objects z\growth axis.
            This would be very handy. To top things off, converting the whole vrayfur object into a modifier instead would be quite nice too.
            Signing out,
            Christian

            Comment


            • #7
              The modifier approach is bothering me somewhat because it makes working with materials somewhat more complicated and unnatural, since the fur or whatever would need a separate material than the main object.

              Best regards,
              Vlado
              I only act like I know everything, Rogers.

              Comment


              • #8
                Multisub Material with mat id toggles in the vrayfur interface?
                Just a thought
                Signing out,
                Christian

                Comment


                • #9
                  Well, not that it cannot be done, but the fur is not a part of the object as such (it is not even a regular mesh) and things would quickly get complicated if you want different fur on different parts of the object (the user would have to keep track of what ID was assigned to which fur modifier), and if the object itself has material IDs you'd need to make sure they are different from the fur ones... sounds too much trouble to me

                  Best regards,
                  Vlado
                  I only act like I know everything, Rogers.

                  Comment


                  • #10
                    Well what i would wish in this case ,

                    rather was a sort of new Vray material, comparable to those in Vue6. a material with the option to pose your vray-proxys by a map, with a random scale and rotate parameter, and also with the possibility to react to the scale, hight and so on of the objects.

                    if only vue would use vray... but the idea behind the vue ecosystem is real great and charming.

                    this together with a paint proxy utility would be what i would need...


                    Tom

                    Comment


                    • #11
                      Originally posted by vlado View Post
                      Well, not that it cannot be done, but the fur is not a part of the object as such (it is not even a regular mesh) and things would quickly get complicated if you want different fur on different parts of the object (the user would have to keep track of what ID was assigned to which fur modifier), and if the object itself has material IDs you'd need to make sure they are different from the fur ones... sounds too much trouble to me

                      Best regards,
                      Vlado
                      Well I never even considered multiple fur modifiers, but as far as keeping track of mat ids, I personally prefer assembling multi-sub materials for models even if they are composed of separate meshes, as it just keeps my materials cleaner, and instancing stuff goes a lot faster through the map tree-browser thingy. (This of course wouldn't be a problem if that nodejoe guy bothered to compile a max2008 version ).

                      But no biggie. My main thought was the placing proxies and deforming them through the same system as the fur currently uses.
                      Last edited by trixian; 10-12-2007, 08:36 AM.
                      Signing out,
                      Christian

                      Comment


                      • #12
                        I second the deformation, but I prefer the Fur the way it is now, as an object.

                        Deforation based on the fur shape would be great to have. I think this is supported by the hair system currently in max, but all these systems fail, when it comes to output geometry. Such complex and clever looking systems, yet they do the dumbest thing when exporting geometry, they just dump the whole dataset into the memory as one big pile of khm, ... mesh.

                        best regards,

                        A.
                        credit for avatar goes here

                        Comment


                        • #13
                          Hello!!

                          I just want to stress that the possibility to use vrayfur as a scatter tool is a must in my opinion.

                          I use ParticleFlow to scatter proxies.
                          I use a little script to create a point for each particle and then another little script to replace them with the actual proxies.

                          The problem is that the simple act of selection 40000 points (a little fraction of the total instances I need) is painfully slow.
                          Is this normal by the way...I'm renaming the points with the rename tool and it's been busy for half an hour now

                          The real problem is that max can't handle this kind of numbers, even if the object is just a point or a proxy with in box preview mode.

                          I really think that vrayfur have the essencial for a good scatter tool, at least for vrayproxies and since there's nothing that can scatter proxies at rendertime...

                          Do you think something like could be available soon Vlado??
                          Last edited by RSF; 27-12-2007, 11:44 AM.

                          Comment


                          • #14
                            Originally posted by RSF View Post
                            Do you think something like could be available soon Vlado??
                            I say, good thing come to those who wait. Vlado already said that this is an interesting idea. And as far as I know, everytime he said something like that, well, you know.

                            Best regards,

                            A.
                            credit for avatar goes here

                            Comment


                            • #15
                              I'm currently working on support for animated proxies, we will see about the scattering...

                              Best regards,
                              Vlado
                              I only act like I know everything, Rogers.

                              Comment

                              Working...
                              X