- easier rendering state management (with the new class State).
- easier OpenGL buffer management (buffers of standard model drawabls can be automatically updated when model is modified).
- reorganize the tutorials (because I am planning to add more tutorials which needs to be better grouped).
- now loading models from files is done through ManifoldBuilder that resolves non-manifoldness.
- now all image io is managed by ImageIO.
- fixed the bug where camera gets deadlock.
- show/hide mesh vertices;
- line with control for LinesDrawables (using geometry shader).
- put data in the resources directory;
- added Tutorial_406_Tessellator.
- added point imposter (using point sprites, geometry shader);
- added line imposter (using point sprites, geometry shader).
- simplified the APIs of drawables (i.e., shader management is now taken care of by the drawables, so client code only needs to call the draw() function for rendering);
- added various KD-Tree implementations and API;
- added point cloud normal estimation and re-orientation;
- added plane extraction from point clouds using RANSAC;
- add Poisson surface reconstruction.
- Easy3D 2.0 released. Major changes are
- reorganized the classes/functions in modules (i.e., core, viewer, fileio, util, algo);
- added a few rendering techniques (e.g., shadow, eye-dome lighting, ambient occlusion, transparency);
- added a few tutorial examples.
- The first release of Easy3D;
- Tested on macOS, Linux (Ubuntu), and Windows.