Announcement

Collapse
No announcement yet.

(Open, Fixed, Resolved) [HOU-2211] [HOU-2210] [HOU-1845] Open subdiv on alembics

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

  • (Open, Fixed, Resolved) [HOU-2211] [HOU-2210] [HOU-1845] Open subdiv on alembics

    Hi,

    When using the Open subdiv option in the VRay object properties, I'm not being able to get the mesh subdivided when using an alembic that is loaded using the "Alembic Delayed Load Primitives" option.
    The Open subdiv is only working when we set the alembic Load as option to "Unpack Alembic Delayed Load Primitives", unpack it, if we use it native houdini geo, or packed Houdini geo.

    See attached images and example scene.

    If this is normal, and you can't subdivide alembic geometries that are packed, what would be the recommended way to subdivide geometries on render time? And that would not impact the vrayscene sizes when exporting the scene.


    Best,
    David.
    Attached Files
    David Anastácio // Accenture Song - VFX
    https://www.accenture.com/us-en/serv...visual-effects

  • #2
    Hello david.anastacio , currently the only way to subdivide an alembic on render time is to use V-Ray Proxy Import SOP, there is a "Subdivide all meshes" toggle under "Alembic" tab. Hope this helps you. I've also added request if this can be done automatically on export HOU-1845 is issue's tracking number in our system.
    Last edited by chakarov; 03-05-2020, 12:16 PM.
    Georgy Chakarov | QA
    www.chaosgroup.com
    georgy.chakarov@chaosgroup.com

    Comment


    • #3
      Hi,

      I was aware of the V-Ray proxy import but I really don't wanna go that route. Using the proxy to load geo we don't get access to any parameters and we can't make assets that can work both in VRay and Mantra. By using the alembic loader we can switch from V-Ray to Mantra with a couple of switches and keeps everything more streamlined, also to use the proxies would make write out the models every time a change was needed instead of just pushing a version up on the asset HDA.

      By the way, if the open subdiv doesn't work on alembic inputs, what is it good for? You never want to have live geo in your network because that will be baked to your vrayscene on export so you should always cache out that geometry to alembic, and since bgeo and bgeo.sc are not supported they also baked to the vrayscenes. So when would you actually be able to use the open subdiv option without causing the vrayscenes to get huge?

      So what we would really like to see is the open subdiv in the geometry level work when alembics are used inside it.
      For now the only way I see it is to bake the subdivisions to the geometry and try to use a low poly model for viewport, not ideal. Would really like to see this addressed.

      Best,
      David.
      David Anastácio // Accenture Song - VFX
      https://www.accenture.com/us-en/serv...visual-effects

      Comment


      • #4
        Hey, david.anastacio ,

        do you insist on OpenSubdiv or would any form of subdivision do the job ? It's currently possible to add V-Ray Displacement Properties (on the obj node) or use a Displacement VOP (in the material) with the "Render as Subdivision" enabled and "Render Displacement" disabled. The downside is that creases (the creaseweight vertex attribute) are not supported when using Delayed Load alembics.

        There's also the possibility to make the OpenSubdiv toggle on the Object Properties do the same as the "Subdivide all meshes" toggle on the Proxy Import SOP.

        The question is whether V-Ray's subdivision will work for you, or you want OSD for a particular reason (e.g. creases).

        Cheers!
        gosho.genchev@chaosgroup.com

        Comment


        • #5
          Hi, Gosho.Genchev and thanks for looking into this.

          OpenSubdiv is not a absolute requirment for now, but would be neat in the future. For now I would be happy with just having subdivision level control and UV division options.
          The V-Ray displacement works but you have no control over it, how many subdivisions is it using, is it pixel based? The V_Ray documentation doesn't clarify this unfortunatly.

          When you say that "There's also the possibility to make the OpenSubdiv toggle on the Object Properties do the same as the "Subdivide all meshes" toggle on the Proxy Import SOP." would this work using the Houdini Alembic loader. Would this make the subdivision be applied on the alembic SOP import? What would happen to other SOP nodes in the tree?
          The displacement "Render Displacement" option seems to to the work, would just like to get some options over it and maybe that could also be an option in the object properties.

          I attached a small test scene were I go through an asset setup and were we would like to use subdivisions, I think this will help to clarify our needs.

          Best,
          David.
          Attached Files
          David Anastácio // Accenture Song - VFX
          https://www.accenture.com/us-en/serv...visual-effects

          Comment


          • #6
            Thank you for the scene, it helps a lot!
            Regarding the disappearing textures with Object UV mapping - I believe the support team have sent you guys a lengthy explanation as to why this happens. The transform matrix specifying the size of the object is written differently when rendering the alembic versus live (unpacked) geometry. IIRC we sent you a workaround for this - you can use a UVW to Texture VOP to scale down the UVW data coming from the Object mapping and plug it into an Explicit VOP.

            The V-Ray displacement works but you have no control over it, how many subdivisions is it using, is it pixel based? The V_Ray documentation doesn't clarify this unfortunatly.
            With the Displacement VOP and the Displacement Properties (those are the same thing under the hood), View Dependent controls whether the Edge Length parameter is in Screen Space pixels or World Space units.

            When you say that "There's also the possibility to make the OpenSubdiv toggle on the Object Properties do the same as the "Subdivide all meshes" toggle on the Proxy Import SOP." would this work using the Houdini Alembic loader.
            Yes, the idea is for this to work with Delayed Load alembics. Every primitive in Houdini has intrinsic attributes which can tell us whether it's a packed alembic or regular poly geo so it should be possible to handle other SOP nodes in the tree. I'll ping the devs, hopefully it won't be too hard to implement. I'm thinking we could even allow control on a per-primitive (packed alembic primitive, e.g. @ path) for all those settings if that would be useful to you ?

            All the best!
            Last edited by Gosho.Genchev; 04-05-2020, 05:35 AM.
            gosho.genchev@chaosgroup.com

            Comment


            • #7
              Hi again Gosho.Genchev, really cool stuff.

              Texture with Object UV mapping - yeah I remember that e-mail now, thanks. We are getting around this by always baking the scale fix into the model, so there is no difference from packed vs unpacked which is better than making a seperate shader for unpacked geo. This was just a quick thing and I forgot that.

              Displacement Render Subdivisions - Well I think that actually makes the Render as Subdivision even better that OpenSubdiv (except for the lack of crease support), since you can have the amount of subdivisions adapt to the camera distance

              Per-Primitive control - This would be great, @ path is nice, as would be just to apply to all of the object. As you can see we are already splitting several parts of the model either for applying shaders or rigging having on more for objects that need subdivisions is ok.
              Would a selection by group or another parameter be possible? After the Alembic import adding some "subD" group and then using that same "subD" group on the subdivision parameter would be also neat. You could even use the osd_scheme in the primitive attributes to drive it, some nice vendors some times leave those extra attributes when we get models delivered to us.

              Best,
              David.
              Attached Files
              David Anastácio // Accenture Song - VFX
              https://www.accenture.com/us-en/serv...visual-effects

              Comment


              • #8
                Gosho.Genchev , is there any update/development on this?

                Best,
                David.
                David Anastácio // Accenture Song - VFX
                https://www.accenture.com/us-en/serv...visual-effects

                Comment


                • #9
                  Also interested in this topic.

                  Comment


                  • #10
                    Hi again,

                    Dubbie99 ​​​​​, l​ooks like this was addressed already.....but no communication/reply was given.

                    Found this this in the long changelog of update 2:

                    Click image for larger version

Name:	Screenshot 2020-11-01 at 12.38.25.png
Views:	612
Size:	46.4 KB
ID:	1090197

                    Best,
                    David.
                    David Anastácio // Accenture Song - VFX
                    https://www.accenture.com/us-en/serv...visual-effects

                    Comment


                    • #11
                      Hey,

                      Gosho.Genchev.

                      There's a problem with the implementation of the OpenSubdiv, when using it on an object inside a subnetwork that object renders without the subdivision. See attached scene.

                      Click image for larger version  Name:	Capture.JPG Views:	0 Size:	59.7 KB ID:	1090201

                      Best,
                      David.
                      Attached Files
                      Last edited by david.anastacio; 01-11-2020, 06:15 AM.
                      David Anastácio // Accenture Song - VFX
                      https://www.accenture.com/us-en/serv...visual-effects

                      Comment


                      • #12
                        Hey david.anastacio , Dubbie ,

                        Looks like no message was posted here when the new feature was implemented, Even worse, I haven't even seen the notification where I've been tagged in the post up there. I'm really sorry about that - we're taking extra measures to reduce the frequency of such cases. I sincerely hope it didn't cause any inconvenieces for you!

                        We're looking into the problem above. As a side note from the developers - please consider using the V-Ray Subdivision in place of OpenSubdiv - it performs better with V-Ray and crease attributes are also supported there.

                        All the best!
                        gosho.genchev@chaosgroup.com

                        Comment


                        • #13
                          Hi Gosho.Genchev

                          Originally posted by Gosho.Genchev View Post
                          hope it didn't cause any inconvenieces for you!
                          No invovinience caused, was just suprised reading through the changelog and finding ou that this topic was addressed. And this added to some other bug fixes that were also fixed and I only found out when I went and tested them in VRay, would definitly help if the communication on the bug fixes was more clear.
                          Originally posted by Gosho.Genchev View Post
                          please consider using the V-Ray Subdivision in place of OpenSubdiv - it performs better with V-Ray and crease attributes are also supported there.
                          You mean the Subdivisons in the Displacement properties. That's what we've been using for quite a while already, but it has it's issues in terms of workflow as users might set displacement on the shader than another user comes and adds Displacement properties to the objects and disables displacement and enables subdivision, and now the original displacement is gone, it's a bit strange this method. Would be great to have the opensub div working, as it is only one thing that it's not working.
                          And in case of the "V-Ray Subdivision" it's odd to have that propertie in the displacement properties, should't it just be an object propertie like the opensubdiv and independant from displacement.

                          Best,
                          David.
                          David Anastácio // Accenture Song - VFX
                          https://www.accenture.com/us-en/serv...visual-effects

                          Comment


                          • #14
                            Hey david.anastacio ,

                            Under the hood, both the V-Ray Subdivision and Displacement are coupled together. Simply put, one replaces the other, and both support displacement textures for changing the appearance of the mesh.

                            han another user comes and adds Displacement properties to the objects and disables displacement and enables subdivision, and now the original displacement is gone, it's a bit strange this method.
                            Yeah, that doesn't sound right. I'll check with the devs - while technically they are coupled together, for the object properties/shelf buttons, I suppose we can isolate one from the other which should resolve the workflow issue.
                            I'll message back when we decide on something to check with you if it sounds reasonable.

                            Best regards!
                            gosho.genchev@chaosgroup.com

                            Comment


                            • #15
                              Hi again
                              Originally posted by Gosho.Genchev View Post
                              Under the hood, both the V-Ray Subdivision and Displacement are coupled together.
                              Yes, that all good, but from a user point of view displacement is usually coupled with the material and subdivisions usually with the object.

                              Originally posted by Gosho.Genchev View Post
                              I'll message back when we decide on something to check with you if it sounds reasonable.
                              Awesome thanks, in the meanwhile a fix to the opensubdiv not working inside subnetworks/HDAs would be great.

                              Best,
                              David.
                              David Anastácio // Accenture Song - VFX
                              https://www.accenture.com/us-en/serv...visual-effects

                              Comment

                              Working...
                              X