OpenVDB remesh

Hey ambi, don´t know if you´ve updated the 2.8 addon in the last two days or so but I had some issues with it when i tried it on friday.

The issue appeared when remeshing an object containing two or more meshes. your call to triangulate the bmesh uses the numeric syntax (ex ngon_method=0) which doesn´t seem to be supported anymore, switched them to ngon_method=‘BEAUTY’ or something like that (not at home right now). Which solved the issue.

I also played around with making the remesher usable from sculpt-mode. Since you apply the scale before running the vdb-operations you have to switch to object-mode. So I just checked if i were in sculpt-mode before doing anything, then switched to object mode, let your code do the magic, and then switched back to sculpt-mode if it was called from sculpt-mode. something to consider! If not it´s an easy small operator for me to write a hack around your code :slight_smile:

Awesome to see the addon in 2.8, keep up the good work!

1 Like

I bought it yesterday and it works really fast but sometimes I don’t know what results I will get.

  • I get some wierd shading on edges,
  • I don’t know what to do to add more geometry density on mesh,
  • Some parametrs doesn’t work when I change them

It would be great to see some tutorial :slight_smile:

2 Likes

@ambi Can’t wait to try it out. Will come in handy not having to switch between versions. Thanks for your efforts!

for first two points: scale up - remesh - scale down
observe wires, the tool uses voxels

about last “some”… which one?

I did some test and overal I am pleasantly surprised with this very cool add-on. It provides a back-up and alternative to using Hard-Ops or the Bevel Shader.

I do wonder what the “best settings” are for the new 2.8 version as I am encountering issues with hard edges / non smoothed faces:

What’s the difference between “Mesh: OpenVDB remesh” and “Object: OpenVDB remesh”?

Second one doesn’t want to be enabled, given the error:

Traceback (most recent call last):
File “C:\blender28\2.80\scripts\modules\addon_utils.py”, line 351, in enable
mod = import(module_name)
File “C:\Users\ostap\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\vdb_remesh.py”, line 14, in
import pyopenvdb as vdb
ModuleNotFoundError: No module named ‘pyopenvdb’

Same on 2.79 Mesh one works like a charm

“Object: OpenVDB remesh” is probably an old version that’s still left behind and needs to be manually deleted when Blender is closed.

Remove all previous addon installations (addons\vdb_*) (addons\openvdb-remesh) by first closing all Blender instances then deleting the files manually.

Also remove the old modules from your modules folder (same root as the addons folder), as the newer versions have all files in the addons\openvdb-remesh folder, which should be a lot easier to manage. If there are any old files they may break things as they use the same names and libraries.

List of old modules that might still be in modules folder, which need to be removed:
blosc.dll
boost_numpy3*
boost_python3*
Half.dll
openvdb.dll
pyopenvdb.pyd
tbb.dll
zlib.dll

When all old addon versions have been removed, you can install vdb_remesh_b2.80-preview-win64.zip (for Blender 2.80) from Gumroad normally through Blender (install from zip).

1 Like

Yeah, that was a clean install vdb_remesh_b2.80-preview-win64.zip since that’s a first time I ever used it.
Anyways, if Object one is not required, then it’s good to go now.
Thanks for your amazing work and keep it up!

Man, after just a few days of using I must say that it’s absolutely must have addon.
I came from ZBrush and didn’t realize how much I missed this workflow.
Thanks for the opportunity to bring it to Blender!

Btw, is that possible to make a subtraction feature? Substract Active from Selected, or something along the lines. Because now you can merge different shapes it no time, but if you need to make a carve in it, there’s where problems starts. You have to use boolean, and it’s not really high-poly friendly. It would be so useful if OpenVDB would be able to do the trick!

Yes, it’s possible, it’s just a lot of work, and not something I will get to this year.

1 Like

I completly don’t get it how this addon works. After many times of testing i always gets different results. Is there any documentation which options do what?

I will try and make a short tutorial video, but probably can’t get to it before Christmas and new year.

2 Likes

Hello Ambi! thanks for this great addon! works like a charm. Could you please make an option where you can set up the settings before pressing the remesh button? For most of the times i know what settings i want and if i just go with the previous settings like the addon is doing sometimes its just overkill. It would be nice to have a menu where i can input my settings before the whole remesh starts:) thanks! keep up the great work!

1 Like

It seems to me that this addon is not working for Blender 2.8 since the API changed a few ago about user preferences… is that right? How can we fix it ourselves?

Update: I opened the script and replaced all user_preferences into preferences

and now it’s working again

2 Likes

I’ve explored the Cinema 4D R20 trial version, and I think OpenVDB is very interesting. I’m passionately hoping there will be a version of the OpenVDB Remesh add-on for Blender macOS in the near future. I’ll definitely buy it.

1 Like

Did you consider to create wall thickness for 3d printing using voxels? Like Solidify modifier but working without intersections.

2 Likes

Just bought addon but its not working // Windows 10, Blender 2.79.

Installs fine, but on pressing “OpenVDB Remesh” i get this

Traceback (most recent call last):
File “C:\Users\Main\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\openvdb-remesh\vdb_remesh.py”, line 459, in execute
self.filter_style, self.filter_sigma, grid=self.grid)
File “C:\Users\Main\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\openvdb-remesh\vdb_remesh.py”, line 213, in vdb_remesh
grid = _read(verts, tris, quads, vxsize)
File “C:\Users\Main\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\openvdb-remesh\vdb_remesh.py”, line 194, in _read
vtransform = vdb.createLinearTransform(voxelSize=vxsize)
AttributeError: module ‘openvdb-remesh.pyopenvdb’ has no attribute ‘createLinearTransform’

What does typing “import platform as p; import bpy; p.machine(); p.platform(); p.python_version(); p.python_compiler(); bpy.app.version_string; bpy.app.binary_path_python” (without the quotes) to the Blender Python console produce?

import platform as p; import bpy; p.machine(); p.platform(); p.python_version(); p.python_compiler(); bpy.app.version_string; bpy.app.binary_path_python
‘AMD64’
‘Windows-10-10.0.17134’
‘3.7.0’
‘MSC v.1900 64 bit (AMD64)’
‘2.79 (sub 6)’
‘C:\Program Files\Blender Foundation\blender-2.79\2.79\python\bin\python.EXE’

It seems Blender Foundation updated their Python version to 3.7 for 2.79. Python 3.7 for Blender 2.79 isn’t currently supported in the addon.

You might be able to copy the pyopenvdb folder from the Blender 2.8 version of the addon (vdb_remesh_b2.80-preview-win64.zip) into the openvdb-remesh folder of the Blender 2.79 version and make it work.

Thanks for the report, I should be able to fix the Python 3.7 problem in the next update for the 2.79 version of the addon.

edit: Ok, I tried both Steam and blender.org version of 2.79 and both of them use Python 3.5. I’ll still include Python 3.7 version into the 2.79 package, but I can’t really tell what version you are using.

1 Like