i3d-based volume rendering: what artefacts?

   8716   12   0
User Avatar
Member
128 posts
Joined: July 2005
Offline
Good day!
I have set a pipeline as described at video tutorials for acheiving some volumetric fx - everything working fine, excluding one BIG problem - there are a lot of artefacts - and as I've found - they are regular artefacts - it looks like noisy bounds of volume “buckets” - noisy planes evenly placed at any spaces direction and they are visible where density is present. It is VERY sadly, and made this technique almost unusable.
What about trying avoid this: I try to make oversampling more, than 1 - I acheiving only splitting of that “planes”, not eliminating of them. Varying of “Variance” has no effects at all, excluding crazy blur at 0.9-1.0 values, without eliminating of main artefacts. Does anyone know, what I have to do to fight with it, or it is core technology problem?
hip-file, images or mov - on request - welcome!
Thank you.

RenderNode: ASUS PE851, P IV 2.6 GHz HT, 1Gb RAM, MSI GeForce FX 5600, WinXP sp 1
Anything that flies
User Avatar
Member
128 posts
Joined: July 2005
Offline
Next series of testing have opened these features - artifacts appear at boundaries of volume tiles of 32x32x32 voxels - they looks like swapped voxel layers of adjacend “tiles”. I have a suggestion about that there are such organization of i3d texture, because i3dinfo utility says about this quantity of 32s at each dimension as “tile counts”.
May anyone say something about this?
Anything that flies
User Avatar
Member
27 posts
Joined: July 2005
Offline
This sounds as though you are not using adaptive step. When I turn off adaptive step I can easily get artefacts as you described: noisy bounds of volume bucket voxels that look as though they swapped the density values of adjacent tiles. You can also get different, crisp edge artefacts with adaptive step turned on, but they can be reduced by reducing the adaptive step size at the expense of rendering time. Also, you're likely to see some artefacts relating to your low resolution 32x32x32 tiles. I've been using 64^3 tiles up through 300^3 tiles for better results.
User Avatar
Member
527 posts
Joined: July 2005
Offline
WOW I had no idea adaptive step could bring out so much detail!!! :shock:


ps. I am getting the hang of making a single fuzzy voxel clouds but is there a way to apply this atmosphere object to say a particle system or copy it along a surface. If yes, can you make the voxels interact with eachother in a blobby fashion?
soho vfx
User Avatar
Member
27 posts
Joined: July 2005
Offline
can you make the voxels interact with each other
Voxels are a raster type, like rendered images, so you usually want to do your manipulation before it's rendered.

It's simple enough to make a blob of cloud by copying metaballs onto points, giving that object to the image3d output in the SOP field, and setting it to render as particles/metaball geometry. For example, I made a nice cloud out of particles by birthing the particles inside a piece of geometry (using the Source POP) and then bringing the points into SOPs with a POP Merge SOP. This was my template for the Copy SOP, and a small metaball was the “primitive to copy.”

BTW, SESI has made a video tutorial on this subject and is available here: http://sidefx.vislab.usyd.edu.au/cd2_5.5.151/pages/learn/video/index.html [sidefx.vislab.usyd.edu.au]
User Avatar
Member
128 posts
Joined: July 2005
Offline
Okay, tnanks a lot, but as I seem, you have no understood what I'm talking about: I have a sufficient detailed i3d texture - even 256^3 - but I have swapped ever 31st & 32nd layer at each direction! Artifascts is REGULAR noisy grid appears at ever 32nd voxel layer - even if I'm just slicing texture by surface! I seem, it is error of vex generator, or texture3d function, what may SESI say? I just wondered that noone said here about this problem before . Maybe it is new implementation bug?
Anything that flies
User Avatar
Member
27 posts
Joined: July 2005
Offline
you have not understood what I'm talking about

er, sorry. I guess I didn't quite understand.

Artifact is REGULAR noisy grid appears at ever 32nd voxel layer

if it isn't related to noise (try changing the noise amplitude or frequency in the metacloud SHOP) and it isn't related to adaptive step, I really can't think of what the problem might be.

Does anyone else have an idea?
User Avatar
Member
128 posts
Joined: July 2005
Offline
As I seem, it is not trouble of standard SHOPS - even custom simplest i3d vex generator-scripts produced same artifacts. I think it is implementation bug - too regular and stable its appearnace. Most sad at this - that whole texture is affected by this phenomenon, that made it unusable for working with thin details. Thank everyone for participation!
Anything that flies
User Avatar
Member
527 posts
Joined: July 2005
Offline
thnx mikela for the link………. was perfect.

ps. is it possible to use different images and/or i3d's for say the fog colour or ambient values of the vex 3d texture fog?
soho vfx
User Avatar
Member
543 posts
Joined: July 2005
Offline
Wren
ps. is it possible to use different images and/or i3d's for say the fog colour or ambient values of the vex 3d texture fog?

If I understand your question correctly, yes it is possible. I have a i3d shader that writes out the temperature, mass, density and pressure of Real Flow particles into an i3d file. I then use seperate fog shaders (with different colors) to create the various “fog” fields based on these attributes.


–Mark
========================================================
You are no age between space
User Avatar
Member
639 posts
Joined: July 2005
Offline
Hi Joemi,

That might have been the oversampling error in the i3d. Try setting a very low oversample in the i3d generator to see if that helps. I think SideFX knows about this too.

Cheers,
Alex
User Avatar
Member
128 posts
Joined: July 2005
Offline
Thank you, Alex!
As I've found, lowest oversampling produses just “artifacteous” noisy planes, and higher oversampling made them blured and splitted. It is interesting, when SideFX are going to fix it, if they are? Update to 258build contains this bug anyway.
Anything that flies
User Avatar
Member
639 posts
Joined: July 2005
Offline
Hi,

This issue has been around for quite sometimes now. I am not certain, but I think it might have been something to do with the mathematics rather than coding. Mark Elendt would probably be the man to ask. This has been an issue even back in H5.5, and probably before.
  • Quick Links