RXMesh Versions Save

RXMesh: A GPU Mesh Data Structure - SIGGRAPH 2021

v0.2.1

2 years ago
  • Integrate Polyscope as a mesh viewer + demo
  • Implement user-defined binary reduction operations on attributes
  • Use memcpy_async for reading from global memory to shared memory
  • API for allowing multiple queries in a single kernel
  • Add validation function to make sure that the internal data structure is consistent (useful for dynamic changes support in RXMesh)
  • Initial support for edge flip
  • Update README with better documentation on how to use RXMesh for writing applications

v0.2.0

2 years ago

Highlights:

  • Eliminate global index space and identify mesh elements using the combination of their patch index and their local index within the patch
  • All query operation no longer needs to map their output to global index space
  • Allocating Attributes per-patch basis instead of a single large array
  • Introduce Vertex/Edge/FaceHandle to improve type safety which is used to identify different mesh element and index the mesh Attributes
  • Introduce LocalVertex/Edge/FaceT to improve type safety for internal implementation of local index space
  • Attributes are now managed by RXMeshStatic using add_vertex/edge/face_attribute() API
  • Introduce for_each_vertex/edge/face() API in RXMeshStatic for simple operations on the mesh that do not require query operations (i.e., map operations) for both CUDA and OpenMP backend
  • Introduce ReduceHandle to do reduction operations on Attribute and so reduction operation temp memory is no longer handle by Attribute itself
  • Improve the documentation for most of the user-facing APIs
  • Removing code related to shuffling and sorting the input mesh (it was only relevant to reproduce SIGGRAPH paper results)
  • Accurately report the register usage and static shared memory used by the kernel by using the (pointer to) kernel itself instead of the prototype function
  • Improve initializing the data structure by removing duplicate supporting structure that were created by both RXMesh and Patcher and by using OpenMP when possible in RXMesh

Known Issues:

  • Some queries (VE, VF, and higher queries) now require more registers per thread and thus they might fail on some (less powerful) GPUs.

v0.1.0

2 years ago

This is the initial release of RXMesh that contains the code which can be used to reproduce the results presented in the SIGGRAPH 2021 paper.