I would like vray to allow to create vdb stuff like conversion from fog to mesh and mesh to fog.
shape construction, noise modulation, advection.
I would like basically to be able to create a shape in poly convert it to fog, carve that fog tridimensionally using procedural noises and then convert the result back to mesh (or just render it like we can do already).
Is this stuff that should be implemented directly in max by autodesk? well probably but they it will probably take them years to do when I guess Vlado can do this in one day!
Yes I have Houdini but not all your customers have it and I prefer to do stuff in one app so I don’t need to do conversion. When I do production work for commercials there is no time for conversion. If one day I work on 300 hundred million $ holywood movie production for years maybe I can afford to do conversions. But for now, or I switch to Houdini entirely (probably my goal in the long run if I succeed at reproducing my entire pipeline) and then I need to aks for vray for Houdini or I stay in max and ask for the coolest features I find out in Houdini that you could maybe add to vray for max.
The main feature that would allow us to do a lot more would be the ability to convert mesh into fog and carve fog with procedural textures.
But having the vray volume grid is really great already!
And having features like Bercon noise and more VDB features inside vray is more easy and powerful than relying on other apps and it’s also cheaper for your customer. But I understand they are not the top priority, but once you made all the top priority maybe you could think about those.
And yes the Houdini way with the node system is the best way to make a 3D app and they will always be in advance in front of others but that doesn’t mean all other apps should stop adding features…
Well, try to make ur own procedural with OSL and map it to vray fog (geo gizmo + fog mapping). It already can modulate volumes. U have to code some procedural noises. That shouldn’t cost much. OR you can even ask some help here
Also, there’s smth like nodes in max 2016 now
Btw - phx can read vdb and you also can make it convert mesh to fog and fog to mesh
I know there a many ways to do do it (I think the phoenix way you are talking about doesn’t work for what I want) the magma/frost way is the best in max to date). But I just found out the most efficient and fast way to do it (by open vdb in an integrated solution like houdini) and I will try to ask those I pay thousands of dollard for their softwares (autodesk and chaosgroup) if they can make it integrated in their software to help me and all other customers save time and money. And no coding it myself is not an option. having it in vray or max is a great plus cause it becomes something every max and vray user has access to. Then we can sell the assets in places like Turbosquid etc.
Also on the open VDB about page, you can see many other amazing features that would be awesome to have in vray or directly inside of max: I don’t do programing but I thought since it’s open source it must be easier to integrate for professional programmers than creating something from scratch, or maybe I’m wrong?
Features and Tools
Efficient Data Structure
OpenVDB represents high-resolution sparse volumes compactly both in memory and on disk, via a novel hierarchical data structure that offers an effectively infinite 3D index space and via a custom, lossless codec for fast file I/O.
more
Fast Voxel Access
OpenVDB features fast (constant-time) random and sequential access to voxels. This is the result of a new, CPU-like caching scheme and compact, hierarchical bit mask iterators.
1 2 3
Conversion Tools
OpenVDB volumes can be generated robustly and efficiently from polygonal meshes or particles, and can be converted to adaptive meshes, point clouds, signed distance fields or fog volumes.
img img more
Level Set Tools
OpenVDB includes a large selection of level set operators, including multithreaded advection, smoothing, filtering, surface tracking, offsetting, resampling, rendering and near-real-time Boolean operations.
img img 1 2 3 4 5 6
Filters
OpenVDB’s suite of filters for smoothing and applying noise to volumes forms the basis for DreamWorks Animation’s feature film cloud modeling toolset.
img
Morphological Operations
OpenVDB features fast morphological operations like dilation and erosion, which are essential when dealing with dynamic volumes, for example during level set interface tracking.
img
Topological Operations
OpenVDB’s fast topological operations (union, intersection and difference) are the foundation for many of its sparse algorithms, in particular ones for masked filtering and meshing.
Geometric Transforms
OpenVDB includes tools for advection of level sets or point clouds through vector fields, with the option to constrain points to surfaces, and tools to reshape, resample and segment volumes, highlighted by fast, seamless volumetric fracturing
Well, money-wise - when this become available to everyone, you won’t have any advantage among the others So, to just do a lil coding is I think a better way.
And you can convert, boolean, smooth, resample, add noise using phx and some simple scripting (like filling grid with data, tho you can fill it with operators available, H is doing the same stuff, but merged to one single op for your pleasure). Lemme ask you an example of smth, you can’t do with phx or max atm ? Just to be sure, I’m following.
take a volume like a cube, carve it in 3d with a procedural 3D noise. convert the result to mesh. render it in real time in the viewport and under 5 second for the final. An do the setup in maximum 5 minutes.
interesting… is that done with a procedural map cutting the volume, or geometry? the overlap in the foreground two hole intersection is wierd. is that an isosurface or a simple mesh? id be interested in any way to render isosurfaces faster in vray.
EDIT: i assumed this was vrayvolumegrid as the interface is very similar, but ive now noticed you were using phoenix, so comments below may not be valid…
ok been playing, you used geometry to cut a simple cube vdb? and the errors show you cannot use intersecting geometry to cut. or procedural textures.. so its not really possible, despite vray rendering the surfaces, to modify them in any reasonable way.
as a side-note, i could only recreate a similar result to you using the isosurface rendering mode.. with mesh mode it did really weird things with the cutting geometry.
ideally for me, you would have a basic “fill volume” option in vrayvolumegrid, to fill a specified mesh with a grid at a specified resolution, and the option (as well as cutter geometry) to use procedural textures to modulate the grid, as per jstrob’s request.
i also note, that although vraymetaball also does isosurface rendering, and -can- use procedural textures in this way, it *seems* to use a very different engine to generate the isosurfaces, as it is mindbendingly slow, and this volumegrid, seems quite fast.(although my comparisons are not currently fair, as im testing a very simple volumegrid, with no lights or gi)
on another related note, i tried loading some of the vdb files from the openvdb website..simple 1 meg icosahedron was fine, i then chose a medium detail one ( the dragon) but it gave errors about the grid having too many cells, and having to resample it down.. it then crashed max.
Yes vray is a plugin but it’s a plugin many max users and now maya users already have. It’s also really not a problem selling asset on turbosquid with the vray plugin.
Cool! I’m looking into this! that would be a replacement for this particular vdb feature. I’m just wondering if we can then convert it to mesh for further processing?
With just an area light it’s rendering in 30 seconds here. The most interesting with this method (the texture surface of the vray volume grid) is that the edges are really sharp! The downside is that we can’t convert this to mesh to add other modifiers or to sculpt it in zbrush.