1. Move depth controlling code out of RayEngine. --Done
2. Convert the implementation of RayEngine from FileReader based into DataArray based. --Done
3. Use single-linked list to optimize sample_list.push_back for each pixel. --Done
4. Implement RC_RAY module based on combination of RC_raytrace and RC_fastray. --Implemented, Integrated, and Working.
The core of GAP module should be:
1. Shared edge detection for triangles and quads.
2. 2D Constrained Delaunay triangulation.
To address the bottleneck of database system:
1. std::map::find takes too much time - Tag should be the index of pointer array. deleted pointer is simply set to null, and the space will be reuse by new pointer. then find only takes O(1). --Done.
2. lock/unlock pair takes too much time - read/write lock? lock-free algorithm? smaller granularity?... --Done.