Skip to content
/ NDIM Public

Code used in Hyperdimensional Deformation Simulation for the creation of the doubly-rotating bunny.

License

Notifications You must be signed in to change notification settings

Alvf/NDIM

Repository files navigation

Hyperdimensional Deformation Simulation

Contained within this repository is code used to generate results from Hyperdimensional Deformation Simulation.

Installation/building (Linux required)

We use GLUT, so sudo apt-get install freeglut3 freeglut3-dev is needed.

Every directory in projects/ contains a makefile. Run make for every directory, and the code should be built: cd projects/converter; make; cd ../pobjSequenceViewer; make; cd ../sceneRunner; make

Additionally, we use the Blender 4.2 CLI to render, so install it with sudo snap install blender --channel=4.2lts/stable --classic.

Alternatively run bash quickCompile.sh, which performs the actions above.

Running The Bunny (Full Pipeline)

With all of the code built, recreate the bunny in figure 4 with bash genBunny.sh. This script will:

  • run ./sceneRunner 30 from projects/sceneRunner/, which opens a window and creates a sequence of .pobj files in projects/sceneRunner/bunnyPOBjs/ (will run for ~6 hours)
  • run ./converter 0 906 ../sceneRunner/bunnyPOBjs/ bunnyPLYs/ 0.001 0 0 0 0 0 0 1 from projects/converter, which creates a sequence of .plys in projects/converter/bunnyPLYs/
  • make a directory bunnyPNGs/ for storing renderings of the 4D bunny
  • run blender -b ./bunnyRendering.blend --python ./setupBunny.py -o ./bunnyPNGs/#### -f <X> -- projects/converter/bunnyPLYs/<X>.ply, which will setup and render X.ply for X from 0 to 905 (will run for ~6 hours) as it is seen in the supplemental video.

Alternatively, just run fullFigRun.sh to do everything described above in a single shot.

About

Code used in Hyperdimensional Deformation Simulation for the creation of the doubly-rotating bunny.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published