Volumes Of Fun
http://www.volumesoffun.com/phpBB3/

Thinking of using Polyvox, got some questions
http://www.volumesoffun.com/phpBB3/viewtopic.php?f=14&t=650
Page 1 of 1

Author:  Zauber Paracelsus [ Wed Sep 02, 2015 7:41 pm ]
Post subject:  Thinking of using Polyvox, got some questions

Hello all. I want to use Polyvox for the creation of a game idea that has been floating around in my head for a while, which may or may not be open source. So, I've got a few questions, and I apologize if these were already answered elsewhere.

1) There is a branch that includes a dual-contouring surface extractor. How ready is it for production use, and is it exposed through the Python bindings? Actually, how much work is being done on it? The most recent commit to the branch is from late February.

2) Does polyvox optimize the geometry of the generated meshes? If so, what kinds of optimizations does it perform. Does this include distance-based LOD?

3) Is there any limitation on the amount of materials that can be used on voxel terrain in polyvox? Or is it whatever limit you set in your code?


EDIT: My concerns about Python are no longer relevant. I intended to use Panda3D, but from what I've read, Panda3D only works with Python 2.x while Polyvox only works with Python 3.x, so it seems that Polyvox and Panda3D are fundamentally incompatible. I've decided to relearn C++ and use Ogre3D instead.

Author:  Midnight [ Sat Sep 05, 2015 9:02 am ]
Post subject:  Re: Thinking of using Polyvox, got some questions

8-)

I'm a returning user.

And although you've edited your post and decided on things, I'm going to answer these questions the best that I can for anyone else interested. Also with hope that one of the dev brothers will answer a question I have related to this.

@question #1
The branch posted or anything current is unknown to me. As I've stated, returning user. So I'm skipping this one basically. No comment.

@q2
I don't think polyvox optimises, at least not cubicmesh. It's lower level than all that. And question 3 is along the same lines, it doesn't handle materials or texturing to my knowledge, but I'm also not up to date on current builds, and don't even know the last time I was here.


As for Panda, Python, etc.. couldn't this also be done with unity? isn't that what the polyvox plugs into.. forget the name forgive me I've not used those engines.

Author:  Zauber Paracelsus [ Sat Sep 05, 2015 12:13 pm ]
Post subject:  Re: Thinking of using Polyvox, got some questions

Polyvox on its own actually doesn't plug into Unity, that's the Cubiquity plugin. Otherwise, Polyvox is a C++ library with bindings for C# and Python.

EDIT: Forgot to say, the dual-contouring branch contains a different surface extractor, one which can generate meshes with a mixture of smooth and hard edges.

Author:  David Williams [ Sun Sep 06, 2015 5:02 pm ]
Post subject:  Re: Thinking of using Polyvox, got some questions

Hi, glad to hear of your interest!

Zauber Paracelsus wrote:
1) There is a branch that includes a dual-contouring surface extractor. How ready is it for production use...


Actually this work was done by Matt so I can't really say how production-ready it is. But to my knowledge it is at an early stage and only tested on simple data. Also, some work will be needed to merge it with the develop branch as some refactoring has taken place.

Zauber Paracelsus wrote:
...and is it exposed through the Python bindings?


Probably not, and this is my fault. The SWIG bindings are often broken because I do some refactoring and don't get around to updating the bindings as we don't use them ourselves. Actually, PolyVox is now header-only so it's not quite clear to what extent the bindings make sense.

Zauber Paracelsus wrote:
Actually, how much work is being done on it? The most recent commit to the branch is from late February.


To my knowledge it is not being actively worked on, as Matt has been busy with the Cubiquity for Unreal integration recently.

Zauber Paracelsus wrote:
2) Does polyvox optimize the geometry of the generated meshes? If so, what kinds of optimizations does it perform. Does this include distance-based LOD?


I cannot answer this for the Dual Contouring extractor. For the cubic (Minecraft-style) mesh it does perform greedy-meshing, but for the Marching Cubes mesh no simplification is performed. In Cubiquity we build on top of PolyVox, and implement LOD by downsampling the volume data and extracting the mesh from that.

Zauber Paracelsus wrote:
3) Is there any limitation on the amount of materials that can be used on voxel terrain in polyvox? Or is it whatever limit you set in your code?


In general PolyVox is not aware of materials. The library is templatised and you can include whatever data you like in a voxel (material, color, etc). Whatever per-voxel data you have gets copied to the extracted mesh as per-vertex data. This is for Marching Cubes, I think Dual Contouring is expected to work in a similar way.

Author:  Zauber Paracelsus [ Sun Sep 06, 2015 5:15 pm ]
Post subject:  Re: Thinking of using Polyvox, got some questions

Hi David, thanks for the replies! As I noted above, I actually decided to use C++ and Ogre3D instead of Python for my game project, due Polyvox and Panda3D requiring different versions of Python. With Ogre3D, SWIG bindings won't be much of a concern for me. Since dual-contouring isn't ready yet, I think I'll make do without it for the time being.

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/