Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Converting PLY's into animaion? #126

Closed
vk10 opened this issue Jun 29, 2017 · 10 comments
Closed

Converting PLY's into animaion? #126

vk10 opened this issue Jun 29, 2017 · 10 comments

Comments

@vk10
Copy link

vk10 commented Jun 29, 2017

Hi, I am doing a project wherein I have a set of 20 PLY's (having different excercise poses) and would like to decode all of them (serially or parallely) so that it can render itself as a movie/animation using javascript/emscripten/draco_web.idl ? Open3DGC supports such a functionality. Curious to know if Draco supports such a pipeline and also to control framerate?

@ondys
Copy link
Collaborator

ondys commented Jun 30, 2017

Draco currently does not support animated meshes but we have it on our long term roadmap.

@vk10
Copy link
Author

vk10 commented Jul 6, 2017

Thanks @ondys for this info. In this case, can I simply encode a set of 20 PLY's and decode them using a mesh-id (using this idea #118 ) and render them as a video using the JS decoder?

@ondys
Copy link
Collaborator

ondys commented Jul 7, 2017

you can do that, but there would be no temporal compression between the different meshes so the overall compression rate would most likely be about the same as if you encoded all these models independently.

@zellski
Copy link

zellski commented Aug 29, 2017

@vk10 are you able to speak more about your long-term thoughts on animation compression? do you think you'd throw the skinning/skeletons paradigm and approach time-varying meshes anew, or are we talking a more pragmatic approach that reuses current paradigms and applies quantization & heuristics & entropy-based compression to interpolation paths?

@ondys
Copy link
Collaborator

ondys commented Sep 6, 2017

@zellski Draco already supports skinning by storing bone weights/indices in a generic attribute. Two improvements are currently considered for future:

  1. Support for truly per-vertex animations, that is predicting animated vertex positions from previous frames and using entropy coding to encode the delta values
  2. Compression of animation data for skinned meshes (that is, per frame transformation matrices for bones)

@zellski
Copy link

zellski commented Sep 7, 2017

@ondys Yeah, I'm making use of the generic attribute functionality for weights & indices already. It's nice to have, but is (at least for us) typically a very small amount of data. The redundancy in storing all that highly predictable temporal data is where I think tremendous savings could be achieved. I'll just keep my eye open regarding your team's on-goings!

@TheBiggestNumber
Copy link

Hi, is there any news on the above point cloud sequence compression, for animation? Thanks!

@mhsaar
Copy link

mhsaar commented Oct 23, 2017

Hi, I believe that sequential point cloud compression is slightly different from was initially posted. So I'd suggest to open a different issue. Also, there is already some sequential point cloud compression in DRACO, you may want to check if that is already giving you some significant gains.

@donmccurdy
Copy link
Contributor

Another case to consider here — from Draco's perspective, likely not that different from multiple PLYs? — would be morph targets. In glTF we can get some savings with sparse accessors, but the in-progress glTF/Draco extension does not deal with morph targets at all, and seems like it could be promising.

@FrankGalligan
Copy link
Collaborator

Closing due to inactivity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants