Jump to content
3DCoat Forums

Volumetric sculpting


Andrew Shpagin
 Share

Recommended Posts

Hi guys,

What I'm looking for in a volumetric app is first the ability to sculpt down to tiny detail. I have to disagree with the fact that you cannot get as much detail as in a surfacic application with a volumetric application. I was able to work on a 100M poly (equivalent when exported in .obj) in claytools without a hitch. I was actually limited with the size of the exported model for Maya because I had no way to retopo into claytools.

Second, I'm looking for the volumetric app to enable to paint color onto the voxels.

Third, I'm looking for the app to enable direct polygon retopology onto the voxel model.

Then create UVs on this retopo model, and then bake normal and color onto it direct from the voxel database.

I mean, the whole point to me is to get rid of any topology or UVs constraint during the creation of the source asset. Then bake to whatever poly model you want. Zbrush and Mud2 are allowing to paint at micro-poly (with no need for UVs) but are still constrained to surface modeling. On the other hand claytools doesn't have color painting (freeform does but is more expensive). We need something that does both.

Oh and everything 64bits please.

Cheers,

Franck.

100M? Was you able to see al that at once in program? Or there is something like local subdivision?

Link to comment
Share on other sites

  • Advanced Member
100M? Was you able to see al that at once in program? Or there is something like local subdivision?

Claytools 32 is somewhat limited to around 20M voxels, but late last year I installed Claytools 64 on a new 64 bit system and it can handle a single 100M model. Higher than that it becomes too slow to manipulate and you have to split your work. But it's by no mean a memory limitation as long as you have enough RAM. They don't have local subdivision (although each piece can have its own subdivision level), they just have point rendering when it becomes too slow to render polygons for navigation. I asked them to implement an 'isolate selection' feature so I can go up higher in definition while keeping things interactive, we'll see if they do it in their next release.

100M polygons was the max I could import into maya to bake onto my 'low res' anyway. Refresh rate in Maya was about 10 seconds, but I didn't have to manipulate the object, just bake it onto the low res (I baked onto six 4kx4k textures, or 96M texels which is about 1:1 ratio between my source polygons and destination texels).

With ultra high definition data, it becomes very difficult to move models from one application to another, and I think with 100M, I've hit the ceiling (again not because of claytools but because I needed to move the data out to proceed to the next steps in the pipeline). That's why in the ideal situation, sculpting; painting; retopo and baking should happen in the same application, and only the low res data should be moving out.

Cheers,

Franck.

Link to comment
Share on other sites

  • Advanced Member

From time to time, 3d models from scanners have tiny holes on the surface.

If you will be able to import such model, and convert it into a Voxel model, i hope that it will be easy to fix and fill these holes.

Link to comment
Share on other sites

  • Advanced Member

Andrew, I was thinking it would be good (if not mandatory) that your future volumetric application can import/export .cly files, the native format for Claytools and FreeForm, since those are the only volumetric applications out there. That would make your application even more attractive.

I don't know if Sensable can provide their data format or if you can reverse engineer those.

Anyway, if you need some sample data, let me know, I can provide you some.

Franck.

Link to comment
Share on other sites

Andrew, I was thinking it would be good (if not mandatory) that your future volumetric application can import/export .cly files, the native format for Claytools and FreeForm, since those are the only volumetric applications out there. That would make your application even more attractive.

I don't know if Sensable can provide their data format or if you can reverse engineer those.

Anyway, if you need some sample data, let me know, I can provide you some.

Franck.

It could be interesting, but only at some final stage. If you will find any info about that data format, please send me.

Link to comment
Share on other sites

  • Member
Claytools 32 is somewhat limited to around 20M voxels, but late last year I installed Claytools 64 on a new 64 bit system and it can handle a single 100M model. Higher than that it becomes too slow to manipulate and you have to split your work. But it's by no mean a memory limitation as long as you have enough RAM. They don't have local subdivision (although each piece can have its own subdivision level), they just have point rendering when it becomes too slow to render polygons for navigation. I asked them to implement an 'isolate selection' feature so I can go up higher in definition while keeping things interactive, we'll see if they do it in their next release.

100M polygons was the max I could import into maya to bake onto my 'low res' anyway. Refresh rate in Maya was about 10 seconds, but I didn't have to manipulate the object, just bake it onto the low res (I baked onto six 4kx4k textures, or 96M texels which is about 1:1 ratio between my source polygons and destination texels).

With ultra high definition data, it becomes very difficult to move models from one application to another, and I think with 100M, I've hit the ceiling (again not because of claytools but because I needed to move the data out to proceed to the next steps in the pipeline). That's why in the ideal situation, sculpting; painting; retopo and baking should happen in the same application, and only the low res data should be moving out.

Cheers,

Franck.

Frank, may I ask you what kind of GPU are you running to be able to push this many polys in Maya? I use a renderer called "TURTLE" to create maps, however, I can only get around 2 million polys in Maya with my current GPU. I've got 8GB of ram, but my GPU is not a workstation card.(Radeon x1950 pro x2 with 1GB ram)

Thanks.

Link to comment
Share on other sites

  • Advanced Member
Frank, may I ask you what kind of GPU are you running to be able to push this many polys in Maya? I use a renderer called "TURTLE" to create maps, however, I can only get around 2 million polys in Maya with my current GPU. I've got 8GB of ram, but my GPU is not a workstation card.(Radeon x1950 pro x2 with 1GB ram)

Thanks.

I have a nVidia 8800GTX with 768 MB vram. But I think it has more to do with the amount of ram required to be able to load such a large mesh. I have 32GB of ram and about 160GB virtual mem.

I used Maya native renderer to bake my normal maps onto my 'low res' (500k) mesh. That went fine, but when I tried to bake AO with mental ray I got an out of memory. Displacement baking works fine also with the native renderer.

My guess is because pluggin renderers like MR or Turtle need to convert the geometries to their own format, they are more inclined to fill-up your memory so I'm not too surprised by the limitation.

BTW are you running Maya and Turtle 64 bits? Because otherwise it is hopeless :P

Franck

Link to comment
Share on other sites

I have attached a small demo of CUDA technology. Unpack it somewhere and run. There are realtime marching cubes on 64x64x64 and 128x128x18 grid. The algorithm is not absolutely effective, it can be done 5x faster, but it is just example. Press RMB for options. It will run only on NV 8xxx and QuadroFX.

*edit: NVidia CUDA drivers required: www.nvidia.com/object/cuda_get.html

MC3.rar

Link to comment
Share on other sites

  • Advanced Member
I have attached a small demo of CUDA technology. Unpack it somewhere and run. There are realtime marching cubes on 64x64x64 and 128x128x18 grid. The algorithm is not absolutely effective, it can be done 5x faster, but it is just example. Press RMB for options. It will run only on NV 8xxx and QuadroFX.

Would you be so kind as to compile a 64 bit version. It doesn't work on xp64 (missing 32 bit dlls apparently).

Franck.

Link to comment
Share on other sites

  • Advanced Member
I have attached a small demo of CUDA technology. Unpack it somewhere and run. There are realtime marching cubes on 64x64x64 and 128x128x18 grid. The algorithm is not absolutely effective, it can be done 5x faster, but it is just example. Press RMB for options. It will run only on NV 8xxx and QuadroFX.

cudart.dll not found

Link to comment
Share on other sites

  • Advanced Member

I personnaly did it (xp64 version) and got a cudart.dll missing. So I copied the missing dll to your MC folder. It then asked for glew32.dll which I cannot find.

I did not install the full skd, just the driver.

Link to comment
Share on other sites

Still no luck with it.

I installed Cuda and dl the last file, and now it says it cannot start without cudart.dll

What is the purpose of this file? What does it show?

It is usual DLL. I have donloaded all CUDA packages driver/toolkit/sdk and all works fine on my PC. You can also install SDK and try samples.

Link to comment
Share on other sites

Good news!

3.0 development started. I have made core engine that is able to

1) Keep (and modify) voxels in very compact storage

2) Produce and update drawable mesh from voxels array in realtime.

I have spent only 10-12 hours on the rest in village to make all this, so I think that work will run quickly.

The firs goal - fairly fast performance.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...