PDA

View Full Version : Converting a Volume primitive item shape to a VDB volume?



prometheus
05-27-2019, 11:41 AM
Anyone tried and know if it is possible with the VDB tools to convert a volume item shape to a vdb file?

Why trying this?
Well..I want to use all the glory of Ligtwave procedurals and try to make a cloud volume that can be exported to letīs say Blender.
In pure ignorance I was trying to connect some of the VDB nodes and the VDB saver to make it happen, but so far zippo..no file is created.

Thought I should add a null vdb and from there add shape to volume and with that setting the null volume item as target then feeding to the saver, I tried some variants but nothing so far.

Marander
05-27-2019, 01:21 PM
Anyone tried and know if it is possible with the VDB tools to convert a volume item shape to a vdb file?

Why trying this?
Well..I want to use all the glory of Ligtwave procedurals and try to make a cloud volume that can be exported to letīs say Blender.
In pure ignorance I was trying to connect some of the VDB nodes and the VDB saver to make it happen, but so far zippo..no file is created.

Thought I should add a null vdb and from there add shape to volume and with that setting the null volume item as target then feeding to the saver, I tried some variants but nothing so far.

Hello Prometheus

Saving a Level Set VDB out of LW works fine (see attached pics of export and import).

Saving a Volume VDB out of LW results in an immediate crash of LW.

145084

145085

Ma3rk
05-27-2019, 05:57 PM
Haven't played with it myself but perhaps of interest...

https://origamidigital.com/dokuwiki/doku.php?id=odtools:od_createvdb

Marander
05-27-2019, 11:17 PM
Haven't played with it myself but perhaps of interest...

https://origamidigital.com/dokuwiki/doku.php?id=odtools:od_createvdb

That is just a scripts that creates the basic nodes, converting a mesh into volume (Mesh to Volume node).

I created a Null as OpenVDB object and the corresponding nodes to affect another object (Sphere - which I hide from the render) to apply noise filter and then save it.

prometheus
05-28-2019, 09:29 AM
Hey guys, thanks for jumping in..but I am not sure you have understood what I needed?

I didnīt see any volume item shape in your descriptions marander, that seems to be a sphere polygon and not a volumetric item (new hypervoxels)

I want to turn a volumetric cloud with itīs fractal texture in to a vdb to export to blender for instance, I suspect it may not be possible ..Yet.

XswampyX
05-28-2019, 11:21 AM
Hey guys, thanks for jumping in..but I am not sure you have understood what I needed?

I didnīt see any volume item shape in your descriptions marander, that seems to be a sphere polygon and not a volumetric item (new hypervoxels)

I want to turn a volumetric cloud with itīs fractal texture in to a vdb to export to blender for instance, I suspect it may not be possible ..Yet.

It works here.

145090

Have a look.

Edit to add. You have to double click on the saver node and click save to create it.
Cheers!

prometheus
05-28-2019, 12:30 PM
It works here.

145090

Have a look.

Edit to add. You have to double click on the saver node and click save to create it.
Cheers!

Yes I know how to save ..and yes, that is the very first (node) setup I made myself when I tried it, but how does your shape to volume node setup look like? ..did you target it to a volume item shape? I see some kind of primitive item shape shown in vpr not a volume item shape...So I donīt think you are following me yet, meaning you are making a volume vdb from a primitive shape item..and display it in vpr..that is not what I need here, I need to convert volumetrics(new hypervoxels 2019) to a vdb volume, not a primitive shape.

I think we would need a volume to volume node in the vdb tools, extracting from the primitive type volumetric to VDB volume, but we only have mesh to volume and shape to volume.
Such a vdb tool would allow for being able to use all the Lightwave procedural glory and how it can texture a volume item, then send to blender or maybe even vue and perhaps soon terragen to render with full sky glory but with special designed clouds from Lightwave.

I realized that I initially named my request a bit wrong, it should only be volume primitive item, not volume primitive item shape.

prometheus
05-29-2019, 12:54 PM
Did you guys understood what I was after?..and do you recognize that it can not be done?
In such case we need a feature request.

05-31-2019, 09:06 AM
From what I've read, everyone here has answered your question.

Why is it you don't accept the answer?

Swampy gave the answer, "How to save an exported vdb for use elsewhere." Since vdbs are "effectively infinite 3D index space, compact storage, fast data access", we don't really save level- or volumes -- those are filter-derived, as it were. .


It can not be done any other way. Once exported in this way, vdb tools would need to be used on it to get it to its next desired incarnation.

Someone correct me as needed.
Thanks.

XswampyX
05-31-2019, 10:54 AM
From what I've read, everyone here has answered your question.

Why is it you don't accept the answer?

Swampy gave the answer, "How to save an exported vdb for use elsewhere." Since vdbs are "effectively infinite 3D index space, compact storage, fast data access", we don't really save level- or volumes -- those are filter-derived, as it were. .


It can not be done any other way. Once exported in this way, vdb tools would need to be used on it to get it to its next desired incarnation.

Someone correct me as needed.
Thanks.

It seems prometheus wants to take an old hypervoxel and convert it into a VDB. It can't be done.

05-31-2019, 11:21 AM
That's ... an absurd notion.

Edit: Was there anything made to make hypervoxels "real"? I want to recall something for that but it would be to an object of some kind. (Can't find a mention on google, though.)
From there, yeah, jump the vdb hoops.

prometheus
05-31-2019, 11:26 AM
It seems prometheus wants to take an old hypervoxel and convert it into a VDB. It can't be done.

No I donīt ..as I said previously, I want to turn the New Hypervoxels to a vdb file,(not the old) and yes..I do not believe it can be done currently, the question is then..could it be possible and implemented, we would need something that can read these
2019 volumetrics and convert, just as mesh to volume or shape to volume..but I reckon it must be difficult to do if not impossible.
I donīt know enough about the underlying tech in order to decide wether or not itīs worth to file a request, then again I could just do that and let the LW team bother about the rest :)

- - - Updated - - -


That's ... an absurd notion.

Edit: Was there anything made to make hypervoxels "real"? I want to recall something for that but it would be to an object of some kind. (Can't find a mention on google, though.)
From there, yeah, jump the vdb hoops.

What do you mean absurd notion?

prometheus
05-31-2019, 11:31 AM
From what I've read, everyone here has answered your question.

Why is it you don't accept the answer?

Swampy gave the answer, "How to save an exported vdb for use elsewhere." Since vdbs are "effectively infinite 3D index space, compact storage, fast data access", we don't really save level- or volumes -- those are filter-derived, as it were. .


It can not be done any other way. Once exported in this way, vdb tools would need to be used on it to get it to its next desired incarnation.

Someone correct me as needed.
Thanks.


Why should I accept the answer.?..when the answer isnīt correct and Only after my last post swampy did realize what I wanted.,,but swampy didnīt give the answer, though he dedicated explained converting from a mesh..but that I already knew
...It was never about doing vdb from mesh or shapes, I should have replied you this first...but I explained it in the above post, and i do not understand why you didnīt read what I posted about converting volume item to vdb.

the new volumetrics is also referenced as hypervoxels in the lightwave help docs, it should have been called something else or been given a release number, even though itīs a new system.

Check post 7 and you see it is described well.

05-31-2019, 12:17 PM
Absurd - illogical.

What you speak of has been spoken of since the first hypervoxels were implemented. If it isn't available now, no one has been abundantly motivated to create it. Perhaps it is known that there are better tools for such a task. Or perhaps, doing this task is too gargantuan for the compensation for doing so.

Now that I truly understand the question, it is doubly absurd.

Good luck with the feature request.

prometheus
05-31-2019, 12:27 PM
I am not sure if Terragen is able to do that soon, If Iīm not wrong, it is supposed to be able to export vdb from terragen clouds.
https://planetside.co.uk/forums/index.php/topic,24626.0.html

Now...IF..they can manage it, why would that be totally impossible for Lightwave?

When you now so brilliantly managed to understand my question, then you must be a wiz when it comes to VDB and volumetrics and the underlying tech..or am I wrong?
Please ellaborate why it is so absurd if you donīt mind to enlighten us.

I can understand houdini and lightwave exporting out from within simulated vdb tools or fluids, if that is built on VDB from scratch, but I donīt think terragen clouds does that so what gives.

Your logic refering to ..if it hasnīt been made yet, ergo it canīt be done, I am highly sceptical too...itīs about the underlying technique, not wether or not they have been able to do it yet or not..though that could be the case, but really..that as the deciding factor for it to be impossible?

To conclude, you are not sure yourself, you say "perhaps..and someone not motivated enough etc", so how do you the conclude and connect that to the task at hand being illogical and absurd?

05-31-2019, 02:02 PM
Hi,
Nah, shan't attempt to explain my response to your liking.

But, to the gist of the thoughts you shared: there are so many available tools that what you seek probably can already be done. Seems, after being told it ain't happening, that you would do the right thing, put in your feature request and let it go at that.

The dead horse that is "this can't be done" won't get up no matter how much you continue to kick. And this is an OLD DEAD HORSE.


I understand... hope springs eternal.

Good luck with that.
Robert

prometheus
05-31-2019, 02:21 PM
Hi,
Nah, shan't attempt to explain my response to your liking.

But, to the gist of the thoughts you shared: there are so many available tools that what you seek probably can already be done. Seems, after being told it ain't happening, that you would do the right thing, put in your feature request and let it go at that.

The dead horse that is "this can't be done" won't get up no matter how much you continue to kick. And this is an OLD DEAD HORSE.


I understand... hope springs eternal.

Good luck with that.
Robert

:D

You donīt have to answer in attempt to my liking, just make it clear about the technology behind it and why it would be absurd to think it can be done, if you do not know the tech behind it..you shouldnīt talk about it in vague forms, or I Simple just canīt make any sense from it..and probably so for many others as well.

You mentioned there are tools out there that can do what I want etc...that is up the charts wrong, it doesnīt matter if it is houdini or blender that can do that, I Want Lightwaves cloud procedurals and how I work with those clouds to be the end product, NOTHING else currently anyway.

And..I know it was a question about hypervoxels to objects many many years ago, but this is different, this isnīt volumetrics to mesh, or mesh to volumetric ..this is volumetrics to volumetrics in VDB form, and it will not be derived from old hypervoxels either, and it will be in consideration that those many years ago, we didnīt have Any vdb tools in there, it started with 2018 and advanced with new VDB tools in lw 2019.

wether or not the LW team is skilled enough and motivated enough is one thing, and if it is purely technical possible another thing, I only care about knowing if it may be technically possible..the rest is up to the lw team and the community to
work on if that is so.

Would be great to design your hero clouds with Lightwave procedurals and then send it to terragen, currently that is not in the schedule for terragen so far, but they are working the other way around..getting Terragen clouds out as VDB, Vue on the other hand ..now has import of VDB, so any vdb made cloud can be sent to VUE for rendering in there, from what I can see..these showcased samples of VDB clouds looks better than any metacloud and fractal together, at least for hero clouds etc.

Personally I feel that vue took the better step here, implementing VDB import so you can custom design your clouds and render in vue with full glory, rather than like Terragen focusing on Cloud export from Terragen to another main app.
Both options would be great but I prefer the first mentioned method.

Currently I can get Blender smoke fluids in to Lightwave for clouds, or explosions or fire etc, and I can make geometry in Houdini and applyc cloudFX, or use cloud rig noise..or paint the clouds with an airbrush and then send all those types of clouds to Lightwave with VDB converting.
What I need now is a way to export any type of volumetrics (mostly clouds) through VDB exports to either blender or Terragen, or vue.


https://www.youtube.com/watch?v=d7Nwuvpkdyo

https://www.youtube.com/watch?v=NAPa-k99Ac0

erikals
11-20-2019, 07:29 PM
just discovered this thread, but, yes, it is possible. Takes quite a lot of work tho...

you have to bake the HyperVoxels onto polygon planes.
these vidz won't explain it, but do touch on that subject >
https://www.youtube.com/watch?v=7evT_WgxuhQ
https://www.youtube.com/watch?v=eTOUlmw-csA
you will then have to convert those baked image planes into geometry,
once done, use this technique > https://docs.lightwave3d.com/lw2019/reference/simulation/openvdb

this is how you manually "convert" HyperVoxels to VDB

prometheus
11-20-2019, 09:47 PM
just discovered this thread, but, yes, it is possible. Takes quite a lot of work tho...

you have to bake the HyperVoxels onto polygon planes.
these vidz won't explain it, but do touch on that subject >
https://www.youtube.com/watch?v=7evT_WgxuhQ
https://www.youtube.com/watch?v=eTOUlmw-csA
you will then have to convert those baked image planes into geometry,
once done, use this technique > https://docs.lightwave3d.com/lw2019/reference/simulation/openvdb

this is how you manually "convert" HyperVoxels to VDB

No itīs not possible really...what I originally started this thread for, that was for 2019 lightwave and the newer hypervoxels with a so called primitive item set to volume mode, and that new technology doesnīt allow for baking as the old hypervoxels did.
So the links you refered to isnīt at all what I ment.

And I doubt you could use any of the old techniqes to convert to a vdb volume properly, the last link in the doc is describing volume to mesh, mesh to volume or particles, but there is no way to take a primitive volume and turn it to a vdb..not that I know of.

I donīt see how you would be able to convert the old hypervoxels to VDB format anyway..though that is not what I wanted to solve, the links you are refering to is something different.

The main target was to have an option for creating clouds with all the wonderful fractals we have in Lightwave and the easy setup with primitive item and nulls and the volume, save it out as vdb, import to blender foremost for rendering with GPU and together with its fluid engine when that may be needed, but not utilized as such from within the fluid engine.

erikals
11-20-2019, 09:51 PM
the trick above should work, while it is far-far away from straight forward.


And I doubt you could use any of the old techniques to convert to a vdb volume properly,
how good the conversion would be, not sure. Might be ok, might be bad. Also it would in the end create a Very polygon heavy object. Perhaps 200MB+
it is a bit hard to explain the whole process, and it might not work 100%, and verifying it would take me many hours.

I'm saying, it should be possible to program, but would take lots of time. (I presume)

https://i.imgur.com/QS5J6ck.gif

prometheus
11-20-2019, 09:59 PM
the trick above should work, while it is far-far away from straight forward.


how good the conversion would be, not sure. Might be ok, might be bad. Also it would in the end create a Very polygon heavy object. Perhaps 200MB+
it is a bit hard to explain the whole process, and it might not work 100%, and verifying it would take me many hours.

I'm saying, it should be possible to program, but would take lots of time. (I presume)

https://i.imgur.com/QS5J6ck.gif

I donīt get it here erikals, you refered to that cookie with nodes and polyplanes nodal fractals, that has nothing to do with hypervoxels and can not be baked.
and the refering docs as I said..is just for converting other items, not a null.
How would you convert those flat planes to true 3d geometry? and besides, that is not the point...it has no relevance to converting hypervoxels the old system, or anything with converting a primitive volume item.
So I am completly lost on what you mean.

prometheus
11-20-2019, 10:31 PM
So..itīs these primitive item volume mode-clouds I would like to have made in to VDB, but not possible.


https://forums.newtek.com/attachment.php?attachmentid=146305&d=1574314231


146305

erikals
11-20-2019, 10:56 PM
well, it wouldn't be a "true" conversion, in the end it would produce a huge point cloud file.
but i can't explain it in more detail, without actually showing it / doing it. and that would take too long. Again, hard to explain.

edit; actually just did a mini-test, and Modeler can't handle the data, it is simply way to dense.
so it should be possible to code, but might take forever to both code and run the conversion.
doing it in Modeler was simply a no-go, couldn't get a fraction of the resolution i wanted.

so for now, i guess, it is possible, in theory, but not at all in a practical way.
I should've left this subject alone I guess...  https://i.imgur.com/HYeVv8P.gif oh well https://i.imgur.com/bcwLfNX.gif it was a good idea, possibly.  https://i.imgur.com/bcwLfNX.gif

prometheus
11-20-2019, 11:21 PM
well, it wouldn't be a "true" conversion, in the end it would produce a huge point cloud file.
but i can't explain it in more detail, without actually showing it / doing it. and that would take too long. Again, hard to explain.

edit; actually just did a mini-test, and Modeler can't handle the data, it is simply way to dense.
so it should be possible to code, but might take forever to both code and run the conversion.
doing it in Modeler was simply a no-go, couldn't get a fraction of the resolution i wanted.

so for now, i guess, it is possible, in theory, but not at all in a practical way.
I should've left this subject alone I guess...  https://i.imgur.com/HYeVv8P.gif oh well https://i.imgur.com/bcwLfNX.gif it was a good idea, possibly.  https://i.imgur.com/bcwLfNX.gif

We would need Newtek Lightwave Magic, to use a seperate vdb null, from where you add a Volume to fog..and extract the volume data from the primitive item and then convert it to volumeVDB node..or something like that.
The use of it would be to export to for instance blender, or houdini, but it may also be used to take a singel volume cloud with all itīs noise glory, turn it in to vdb..and then actually have it dynamicly change as fluid smokewhen you move a collision object through it.

So the main construction of the cloud is built up with the noise functions..just as any primitive item in volume mode, and not by fluid dynamics, but it would be dynamicly able to change form by other forces or collision objects.

That is sort of possible to make dynamic behavior if you use mesh to volume and advection velocity or perhaps just use gas solver on some items, but today you just can not combine the fractal texture noise created volume clouds with any form of dynamic collision.

The other feature I would like to see, that is after you have designed a cloud based on a modeled shape, with the current mesh to volume, a better way of adding noise and fractals for the addition of turbulent whisps, today
you do that process by advection velocity, not advection noise, though we do have that option but it will only change the texture within a volume, not the whole volume itself, and here is what it differs from how
Houdini does it, you just apply your noise, and even secondary advection noise, it doesnīt have to be passed through simulation with velocity.

Marander
11-21-2019, 02:02 AM
I agree with Prometheus it would be great to convert the procedural volumetrics / noises generated with the Null to export as VDB which is currently not possible in LW.

Other applications can do that, by the way VUE can both export and import VDB. Terragen not yet (only partly export in a Linux beta).

I think this would be a great addition to LW2020, having an internal conversion and appropriate nodes(s).

Without this functionality exposed in the SDK, I don't see how this can be coded.

prometheus
11-21-2019, 02:34 AM
I agree with Prometheus it would be great to convert the procedural volumetrics / noises generated with the Null to export as VDB which is currently not possible in LW.

Other applications can do that, by the way VUE can both export and import VDB. Terragen not yet (only partly export in a Linux beta).

I think this would be a great addition to LW2020, having an internal conversion and appropriate nodes(s).

Without this functionality exposed in the SDK, I don't see how this can be coded.

Hi Marander,
Exactly..though it may come across as if lightwave couldnīt export and import VDB, which Lightwave can..but only from what is available in the VDB toolset, and that toolset doesnīt include using the primitive item volume mode with all itīs fractals, But vue Is capable of handling that kind of conversion, though I rather see it would be Terragen handling that...along with lightwave.
Such tool to process the primitive item volume to a VDB volume, would allow for cloud creations based on the noise functions, but to be dynamic if we also could push the whole cloud and affect with various forces, superawesome I would think, as long as it could maintain decent quality and decent simulation speed.

Itīs then just a matter of throwing in your favourite star trek ship in there to swirl the clouds or similar....though this stuff can be made with the VDB tools in some ways, and with turbulenceFD, itīs not the same approach in terms of basic cloud creation, where you need to simulate the cloud formation first with fluids or vdb tools only, with this kind of new implementation, you only do the simulation at force impact.

Marander
11-21-2019, 04:17 AM
By the way this is a very nice Blender addon I recently got:

https://blendermarket.com/products/nebula-generator

It creates 2D and 3D nebulas, with a good GPU setup very nice to use, modify the node parameters and see the result in Eevee (specially the 3D ones).

However Blender hasn't (yet) got a proper VDB implementation.

Marander
11-21-2019, 04:39 AM
... though this stuff can be made with the VDB tools in some ways, and with turbulenceFD, itīs not the same approach in terms of basic cloud creation, where you need to simulate the cloud formation first with fluids or vdb tools only, with this kind of new implementation, you only do the simulation at force impact.

Yes right, with TFD, appropriate settings and simulation time modifications (so that a TFD simulation is speed up to have the buoyancy calculated in a short frame range), single clouds or fogs can be created.

I have used this with good results by exporting as VDB with the TFD converter. The VDB channels are nicely exported. Rendering them in Redshift took seconds.

Then I used these rendered frames with rgb and alpha to composite in Fusion with the other rgb layers.

Advection using collision meshes would be possible too, as you said, spaceship through the clouds, hmm maybe I'll try that.

However to create multiple puffy clouds in one simulation using multiple emitter objects was not so great, the clouds looked too similar to each other, even when using different emitter meshes. Also the density was not easy to control and in the center of the exported VDB's you could see more density where the original mesh was.

Your way of using procedurals would also be my preferred way to do it in LW, export as VDB and render externally.

prometheus
11-21-2019, 01:33 PM
Yes right, with TFD, appropriate settings and simulation time modifications (so that a TFD simulation is speed up to have the buoyancy calculated in a short frame range), single clouds or fogs can be created.

I have used this with good results by exporting as VDB with the TFD converter. The VDB channels are nicely exported. Rendering them in Redshift took seconds.

Then I used these rendered frames with rgb and alpha to composite in Fusion with the other rgb layers.

Advection using collision meshes would be possible too, as you said, spaceship through the clouds, hmm maybe I'll try that.

However to create multiple puffy clouds in one simulation using multiple emitter objects was not so great, the clouds looked too similar to each other, even when using different emitter meshes. Also the density was not easy to control and in the center of the exported VDB's you could see more density where the original mesh was.

Your way of using procedurals would also be my preferred way to do it in LW, export as VDB and render externally.


You need additional noise turbulent force to break up the uniformity, or use textured fluid emission from the different meshes to give them a varied starting density shape, it of course takes a little time to learn to control nicely.

I also use two textured layers with different fractals, one alpha layer set to subtract, so you get differen hight of the cloud rising..
Old stuff.


Nowadays I do not even have the demoversion of TFD installed on 2019, I might install that and check back, the last time I checked..curves so slow to tweak and crashing, multiscattering extremly slow, and I also had opacity weirdness that didnīt look right when I tried fluid modeling cloud again, that opacity issue wasnīt there in the previous version.






https://vimeo.com/38310716


Why is this forum always not able to include vimeo links in direct play? I have posted in blender forums and it has not problems with it.


https://vimeo.com/38310716

Marander
11-21-2019, 10:52 PM
Thanks Prometheus, I will watch those videos!

Have you looked at the Nebula Generator Inposted above (not clouds, but I know you like nebulas too :D.

New Blender 2.81 version has some new Noise nodes, released today but I haven't looked into it yet. But commercial applications still have lot more variety of noise types.

prometheus
11-22-2019, 03:49 AM
Thanks Prometheus, I will watch those videos!

Have you looked at the Nebula Generator Inposted above (not clouds, but I know you like nebulas too :D.

New Blender 2.81 version has some new Noise nodes, released today but I haven't looked into it yet. But commercial applications still have lot more variety of noise types.

Yes..I looked at it..thanks for the heads up on it, I thought he had the 2d version for free..but I can not find it even though he linked it, but it only comes back to his sales side.

Not sure how volumetric it is or simulating it, some things look great, some other things not so great..but I need to look more closer at it.
I need to check through ..


Did you see the Gleb Alexandrovīs presentation of 3D nebulaes?
look on blender foundation youtube channel..and search the vids for nebulae.

prometheus
11-22-2019, 03:53 AM
Thanks Prometheus, I will watch those videos!

Have you looked at the Nebula Generator Inposted above (not clouds, but I know you like nebulas too :D.

New Blender 2.81 version has some new Noise nodes, released today but I haven't looked into it yet. But commercial applications still have lot more variety of noise types.

The sheer amount of procedurals lightwave has, is One huge part of why I still stick to using it, especially for clouds and nebs, unfortunately blenders are very limited in amount of types, though I am learning to mix them a bit..I actually got a cool pattern I may use for nebs and stuff.
But itīs not only the amount of types, it is how they are implemented, with lightwave it feels like I can use them similar and pretty much all over the place, driving particle velocity with it, deformations in displacements, volumetrics etc...while in blender, textures available in the displacement editor such as clouds...doesnīt even exist in surfacing...so that is a bummer.

so amongst blender, houdini, modo...I still think Lightwave has the best library of fractal textures.

Oh..vids on vimeo with tfd must be 7 years since I made those sneak peaks, unfortunately not much invested in it.
It..and I could have rocked by now...but I also have myself to blame since I am too selective to the point of stubborness sometimes.