magneto Posted November 16, 2013 Author Share Posted November 16, 2013 Thanks Edward, that's a good point, I will test both versions then. Though when I did a quick compare yesterday, I found that it was easier for me to get good accuracy on distance using VDBs than standard volumes where I had to really increase the Max Axis parameter and the volume got much dense. Is this normal? I will do a more detailed test and post my results Quote Link to comment Share on other sites More sharing options...
edward Posted November 16, 2013 Share Posted November 16, 2013 No, I'm not sure what you mean by "much dense". You're comparing SDFs volumes vs SDFs vdbs right? For SDFs (either volumes or VDBs), the voxel values are the same thing. 1 Quote Link to comment Share on other sites More sharing options...
magneto Posted November 16, 2013 Author Share Posted November 16, 2013 (edited) Thanks Edward, yeah I am comparing those. I just did a test and you are right. They seem to give similar results. I just thought standard SDF volumes also had voxels outside the sphere within the bounding box of the sphere, while VDB SDFs didn't have any voxels for these areas. I set the exterior band voxels to 1 since it doesn't allow 0. But now what I also found is standard SDFs are able to create a much smoother sphere from a primitive sphere, while VDB SDFs create a volume where the sides are angular, so the sphere volume is not very smooth using the same number of voxels. It seems to automatically convert the geometry to triangles. Do you know what would be the best way to get a perfectly smooth sphere from VDBs? NURBS seem better than primitives but maybe there is a more direct way to do this? Of course creating a heavy geometry also takes time cooking wise, so it would be nice if VDBs could create a perfect sphere from a primitive sphere just like standard volumes, as much as the voxel resolution allows. I assume standard volumes recognize these shapes and create a mathematical volume based on the shape rather than converting to triangles? Edited November 16, 2013 by magneto Quote Link to comment Share on other sites More sharing options...
Solitude Posted November 16, 2013 Share Posted November 16, 2013 VDB does indeed require quads or tris I believe, and will do this for you when you input geometry. Otherwise, a particle or using a vop/vex for making the sphere would probably be the cleanest way. 1 Quote Link to comment Share on other sites More sharing options...
magneto Posted November 16, 2013 Author Share Posted November 16, 2013 Thanks Solitude. Do you know how to create a volume sphere using VOPs/VEX? I just tried but I see nothing in the viewport. Slicing the volume shows values fine though. I don't know if this is a display issue or I am doing it wrong? I compared particle VDB to using metaballs on points and then VDB from Polygons, and VDB from Polygons was much faster. So the particle method is not as effective as I expected. Quote Link to comment Share on other sites More sharing options...
edward Posted November 17, 2013 Share Posted November 17, 2013 VDB From Polygons will convert non-polygon geometry to polygons first, before generating the volume. The "angular" look you're seeing it probably due to a not high enough default LOD used when converting the primitive sphere to polygons. If you want a more "perfect" sphere, then create a polygon sphere, and up the resolution on it before feeding to VDB From Polygons. Instead of VDB From Particles, there is Volume Rasterize Particles and Volume Rasterize Points.I haven't used these before though so YMMV. All this talk about a sphere is kind of silly though because the most efficient way to deal with a sphere to treat it like a sphere instead of something else. 1 Quote Link to comment Share on other sites More sharing options...
magneto Posted November 17, 2013 Author Share Posted November 17, 2013 Thanks Edward. Can you also confirm that standard Houdini volumes know if you are for example using a primitive sphere, and therefore instead of rasterizing from polygonal geometry of a sphere, it creates the volume mathematically? Not sure if that makes sense. Increasing the resolution works fine, but the problem is when I copy these higher-res spheres onto points, then it takes a lot of time just to copy and then convert to volumes. I agree with you about treating spheres like spheres but I am trying to find an efficient way to check if points of a geometry are within the radius of other points, and if so how far to the closest point That's why I wanted to use SDF volumes, because then I only have to loop through the points once to get the result, instead of once per point in your primary group of points. Is this a good idea? If not, can you please tell me a more efficient way? Quote Link to comment Share on other sites More sharing options...
edward Posted November 17, 2013 Share Posted November 17, 2013 Thanks Edward. Can you also confirm that standard Houdini volumes know if you are for example using a primitive sphere, and therefore instead of rasterizing from polygonal geometry of a sphere, it creates the volume mathematically? Not sure if that makes sense. From what you see, I'd be almost certain of it. I agree with you about treating spheres like spheres but I am trying to find an efficient way to check if points of a geometry are within the radius of other points, and if so how far to the closest point Do you have varying radii? If not, you could consider generating a single VDB sphere and then using Volume Stamp. Quote Link to comment Share on other sites More sharing options...
magneto Posted November 17, 2013 Author Share Posted November 17, 2013 (edited) Thanks Edward, no the radius is fixed all for points. I only tried turning the copied geometry (spheres) into an SDF volume of both types (VDB and standard) and copying a single sphere SDF volume of both kinds onto the points using the Copy SOP. I also tried VDB from particles. Is Volume Stamp more efficient than Copy SOP in terms of copying volumes? I will try this today I think it would also make a good RFE to have the same code for VDBs to preserve quadric primitive shapes. Edited November 17, 2013 by magneto Quote Link to comment Share on other sites More sharing options...
edward Posted November 17, 2013 Share Posted November 17, 2013 Yes, please request it on the OpenVDB forum Quote Link to comment Share on other sites More sharing options...
magneto Posted November 17, 2013 Author Share Posted November 17, 2013 Oh that's right, that should be implemented by those guys. Less work for SESI the better Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.